《单片机步进电机》.docVIP

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《单片机步进电机》.doc

大连理工大学本科设计报告 题目: 步进电机转速控制系统设计 步进电机转速控制系统设计 一、 设计要求 使用步进电机作为被控制对象;由ZLG7290做人机对话平台;利用单片机的P1(8位)和P3(部分口线)构造系统。 利用ZLG7290的键盘控制直流电机,也可以利用ADC模块(与电位器配合),利用电位器控制转速;利用ZLG7290的8位LED数码管显示电机转向、转速参数显示。 二、 设计分析及系统方案设计 系统分析: 程序为无限循环结构。先调用A/D转换程序,再调用BCD转换程序,利用ZLG7290不断显示数码管的数字,中断程序包括键盘输入电机旋转方向,电位器控制电机转速。 算法描述: 1)30H-37H(DATA1):显示缓冲区,装载待显示的字形码,实验中只用到4个数码管,分别是30H,31H,34H,35H,不需要的32H,33H,36H,37H赋熄灭码#00H。 不断调用WRNBYT子程序将数据写入ZLG7290的10H-17H,显示数据。 2)单双八拍相序放在20H-27H中,高四位都赋F,这样不会影响低四位步进电机相序节拍信号的输出,为接下来中断控制方向和转速做准备。 3)设定定时器T1定时方式1,TH1和TL1赋初值#00H(TH1原始为#00H),A/D转换的数据传送给TH1,每当T1定时时间到时,通过P1口的低四位(P1.0-P1.3)发出步进电机的一个相序节拍,定时时间的改变就可改变电机转动的速度。 4)拆分子程序。将累加器A中的数据拆分为两个四位16进制数并查表,为显示方向和电机速度做准备。 5)中断服务程序INT_7290,2A-2D装载从ZLG7290的00H单元开始读出的连续4个字节数据,其中2BH中的就是键值。当S1或S2键按下时,利用ZLG7290的/INT信号引发单片机的一个中断,取键值后调用拆分查表程序将方向显示在数码管上。其中S1键按下电机逆时针转动,S2键按下电机顺时针转动。 6)控制转速子程序T1_INT,将A/D转换结果送给累加器A,低四位清零后送给定时器高八位,判断方向位,利用CJNE命令,若方向位是1则执行接下来的语句,若不是则跳转到LOOP11,再判断时候等于2,若是则执行下来的语句,若不是则跳转到DO,不做任何操作,即电机停止转动。 7)A/D转换子程序,将转换结果送3FH中,再经过数据滤波,采集256次相加再取高8位数据即为平均值送3EH中。 8)BCD转换子程序,将3EH中数据与#0F0相与,取出高四位,再半字节交换,寄存器B中送10,相除后A中为十位数,B中为个位数,在此调用拆分子程序查表的相应字形码后送30H,31H显示。 三、系统电路图 四、 外围接口模块硬件电路功能描述 步进电机是一种将脉冲信号变换成相应角位移或线位移的电磁装置,当有脉冲输入时步进电机一步一步的转动,每给一个脉冲信号,就转过一定的角度。步进电动机的角位移量和输入脉冲的个数严格成正比,在时间上与输入脉冲同步,因此只要控制输入脉冲的数量、频率及电动机绕组通电的相序,便可获得所需的转角、转速及转动方向。延时子程序使显示稳定RDADD R0,R2,R3,R4,R7 @R0到@R0+7 多字节读操作 WRNBYT R0,R2,R3,R7 无 多字节写操作 STA 无 无 I2C启动信号 STOP 无 无 I2C停止信号 MACK 无 无 发送I2C应答信号 MNACK 无 无 发送I2C非应答信号 CACK 无 F0 I2C应答检测 WRBYT A 无 I2C发送一个字节 RDBYT 无 R2 I2C接收一个字节 八、程序清单 ;###############ADC模块连线############### DAT BIT P3.3 CLK BIT P3.4 CS BIT P3.5 ;############键盘控制模块连线############# SDA BIT P1.4 SCL BIT P1.5 WSLA EQU 070H RSLA EQU 071H FX EQU 2FH ;将控制转向标志放在2FH单元 DATA1 EQU 30H ;变量缓冲区的首地址 ;******************************************************** ORG 8000H LJMP 8100H ORG 8003H LJMP INT_7290 ;控制转向的中断服务程序 ORG 801BH LJMP T1_INT ;控制转速的中断服务程序 ;******************************************************** ;

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档