基于89c51单片机控制步进电机实例

基于89c51单片机控制步进电机实例

ID:8828337

大小:40.00 KB

页数:4页

时间:2018-04-08

基于89c51单片机控制步进电机实例_第1页
基于89c51单片机控制步进电机实例_第2页
基于89c51单片机控制步进电机实例_第3页
基于89c51单片机控制步进电机实例_第4页
资源描述:

《基于89c51单片机控制步进电机实例》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、基于89C51单片机控制步进电机实例一、实物图二、原理图三、参考程序;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;功能:测试步进电机程序,可以测试不用的相电机,本例只给出测4相电机的程序,其它可以相继加入;操作:使用4个按钮来操作,1个正转,1个反转,1个停止,1个选择不同的相电机,在电机停止的时,可;可以设定不同的相电机程序。;使用资源3.2正转,p3.3反转,p3.4停止P3.5

2、设定相电机,步进电机接p1.0p1.1p1.2p1.3;使用单片机:AT89C51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;PRONUMEQU30H;定义要测定那个电机程序ORG00hJMPMAINORG0030H;--------------------------MAIN:MOVSP,#07HMOVPRONUM,#04H;初始化数码管的显示数据CLRP2.0;使数码管处于可用状

3、态PRO:;要求运行的的数码,如果是4则运行四相电机,3则是三相电机LCALLDISPMOVA,PRONUMCJNEA,#04H,PRO1;这里可以增加别的电机调试程序JMPLOOPPRO1:JNBp3.5,ADDPRO;如果p3.5按下跳到下一个程序中执行JMPPROstp:ORLp1,#0ffh;步进电机停止LOOP:JNBp3.2,for2;如果p3.2按下正转JNBp3.3,rev2;如果p3.3按下反转JNBp3.4,stop1;如果p3.4按下停止JNBp3.5,ADDPRO;如果p3.5按下跳到下一个程序中执

4、行LCALLDISPJMPLOOP;反复监测键盘;------------------DISP:MOVA,PRONUMMOVDPTR,#TAB1MOVCA,@A+DPTRMOVP0,ARET;--------------------------程序跳转ADDPRO:CALLdelay;按p3.4的消除抖动JNBp3.5,$;p3.4放开否?CALLdelay;放开消除抖动MOVA,PRONUMINCACJNEA,#0AH,ADDPRO1MOVA,#00HADDPRO1:MOVPRONUM,AJMPPRO;---------

5、-------------------for2:CALLdelay;按p3.2的消除抖动JNBp3.2,$;p3.2放开否?CALLdelay;放开消除抖动MOVr0,#00h;正转到tab取码指针初值for1:MOVa,r0;取码MOVdptr,#table1;MOVCa,@a+dptrCPLa;把acc反向MOVp1,a;输出到p1开始正转JNBp3.4,stop1;如果p3.4按下停止JNBp3.3,rev2;如果p3.3按下反转CALLdelay;转动的速度INCr0;取下一个码CJNER0,#4,FOR1MOVR

6、0,#0JMPfor1;继续正转;-----------------------------rev2:CALLdelay;按p3.3的消除抖动JNBp3.3,$;p3.3放开否?CALLdelay;放开消除抖动MOVr0,#00h;反转到tab取码指针初值rev1:MOVa,r0MOVdptr,#table2;取码MOVCa,@a+dptrCPLa;把acc反向MOVp1,a;输出到p1开始反转JNBp3.4,stop1;如果p3.4按下停止JNBp3.3,rev2;如果p3.3按下反转CALLdelay;转动的速度INC

7、R0;取下一个码CJNER0,#4,FOR1MOVR0,#0JMPrev1;继续反转;------------------------------stop1:CALLdelay;按p3.4的消除抖动JNBp3.4,$;p3.4放开否?CALLdelay;放开消除抖动JMPSTP;----------------------------delay:movr1,#20;步进电机的转速20msd1:movr2,#248djnzr2,$djnzr1,d1ret;------------------------------table

8、1:db03h,09h,0ch,06h;正转表table2:db03h,06h,0ch,09h;反转;-------------------------------TAB1:DB0C0H,0F9H,0A4H,0B0H;0,1,2,3//数码管显示表DB99H,92H,82H,0F8H;?,5,6,7DB

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。