步进电动机驱动程序(汇编).docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
步进电机正转 loop:mov R3,#0FFh????????? ;30h送ff即-1 main:INC R3 ??????? mov a,R3 tt:???? MOV?DPTR,#TAB ??????? MOVC?A,@A+DPTR ???? MOV?P1,A???????? ;送显示 ???????? mov r7,#5 dec r7 ??????? lcall delay????????? ;延时一段时间 ??????? cjne a,#06H,main???? ;如果是最后一个数据重新开始 ??????? ljmp loop??? ;??? 否则R3 清除 ??????? ret TAB:?DB 03H,09H,0CH,06H ;步进电机正转表 ?DELAY: ; 延时程序 MOV? R5,#255 D3:MOV R2,#25 D4: DJNZ R2,D4 DJNZ R5,D3 RET ;步进电机控制程序p3.2正转,p3.3反转,p3.4停止? 步进电机接p1.0p1.1p1.2p1.3 ???????? org 00h stop: orl p1,#0ffh???????????? ;? 步进电机停止 loop:jnb p3.2,for2???????????? ; 如果p3.2按下正转 ???????? jnb p3.3,rev2???????? ; 如果p3.3按下反转 ???????? jnb p3.4,stop1??????? ; 如果p3.4按下停止 ???????? jmp loop????????????? ;反复监测键盘 for: mov r0,#00h?????????????? ;正转到tab取码指针初值 for1:mov a,r0????????????????? ;取码 ???????? mov dptr,#table??????? ; ???????? movc a,@a+dptr ???????? jz for???????????????? ;是否到了结束码00h ???????? cpl a????????????????? ;把acc反向 ???????? mov p1,a?????????????? ;输出到p1开始正转 ???????? jnb p3.4,stop1???????? ;? 如果p3.4按下停止 ???????? jnb p3.3,rev2????????? ;? 如果p3.3按下反转 ???????? call delay???????????? ;转动的速度 ???????? inc r0???????????????? ;取下一个码 ???????? jmp for1?????????????? ;继续正转 rev:mov r0,#05h???????????????? ;反转到tab取码指针初值 rev1:mov a,r0 ???????? mov dptr,#table?????????? ;取码 ???????? movc a,@a+table ???????? jz rev???????????????? ;是否到了结束码00h ???????? cpl a????????????????? ;把acc反向 ???????? mov p1,a?????????????? ;输出到p1开始反转 ???????? jnb p3.4,stop1???????? ;? 如果p3.4按下停止 ???????? jnb p3.3,rev2????????? ;? 如果p3.3按下反转 ???????? call delay??????????? ;转动的速度 ???????? inc r0???????????????? ;取下一个码 ???????? jmp rev1?????????????? ;继续反转 stop1:call delay??????????????? ;? 按p3.4的消除抖动 ?????????? jnb p3.4,$?????????? ; p3.4放开否? ?????????? call delay?????????? ;放开消除抖动 ?????????? jmp stop for2:call delay???????????????? ;? 按p3.2的消除抖动 ????????? jnb p3.2,$??????????? ; p3.2放开否? ????????? call delay??????????? ;放开消除抖动 ????????? jmp for rev2:call delay???????????????? ;? 按p3.3的消除抖动 ????????? jnb p3.3,$?????????? ; p3

文档评论(0)

ygxt89 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档