2022年单片机汇编语言步进电机转速控制系统[参 .pdf





《2022年单片机汇编语言步进电机转速控制系统[参 .pdf》由会员分享,可在线阅读,更多相关《2022年单片机汇编语言步进电机转速控制系统[参 .pdf(12页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、大连理工大学本科设计报告题目:步进电机转速控制系统设计课程名称:单片机综合设计学院(系): 电子信息与电气工程学部专业:班级:学号:学生姓名:成绩:2013 年7 月20 日名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 12 页 - - - - - - - - - - 题目:步进电机转速控制系统设计1 设计要求1)利用 ZLG7290 的键盘控制直流电机(或步进电机的转速、转向);2)也可以利用 ADC 模块(与电位器配合),利用电位器控制转速;3)利用 ZLG7290
2、 的 8 位 LED 数码管显示电机转向、转速参数显示。2 设计分析及系统方案设计实验要求使用步进电机作为被控制对象,由ZLG7290 做人机对话平台,利用单片机的 P1(8 位)和 P3(部分口线)构造系统。实验最终实现功能、设计思路以及方案设计如以下几个小节所述。2.1 系统设计实现功能根据设计要求、现有设备以及知识储备,完成功能如下: 由按键 S1S8实现转速切换,其中S1S4正转, S5S8反转 按键 S16作为停止键, 按下 S10后步进电机停止转动,再按S1S16步进电机按照按键对应转速以及转向转动 按键 S10 作为复位键,当按下S10 后,无论当前处于何种状态,系统恢复至初始态
3、 8 为 LED 数码管显示当前步进电机转速(speed=0/1 14 ) ,转速前 0 表示正转,1 表示反转 若按下停止键,数码管显示当前转速;若按下复位键,数码管显示初始态speed=00 2.2 设计思路本次的设计是LED 显示与步进电机相结合以及若干功能键的组合的一种设计。根据之前学习的按键中断显示实验和定时器实验,使用INT0 和 INT1,INT0 作为按键中断,INT1 作为定时器。在主程序中实现LED 初始显示、定时器计时初始、按键中断初始。INT0 中断调用中断服务子程序实现对按键键值的判断,并根据相应的按键值实现对应步进电机的变化, 并显示该按键对应的转速。 INT1 定
4、时器中断根据 INT0 的按键键值,对定时器设定相应的初值,实现步进电机按规定的转速转动。对于按键停止,则是利用中断优先级,当INT0 的中断优先级高时,系统进入中断,此时INT1 停止计时,也就实现了步进电机的停止,当改变定时器与按键中断的优先级时,即把INT0 设为低优先级,INT1 设为高优先级,步进电机重新开始转动。此时添加一个对INT0 位地址的查询,若有按键即正 /反转的 4 档转速所对应的按键, 步进电机开始重新转动。 对于复位功能,则同样是利用按键键值的判断,在对应键值下控制电机初始化。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - -
5、 - - - - - 名师精心整理 - - - - - - - 第 2 页,共 12 页 - - - - - - - - - - 2.3 系统方案设计系统总设计方案框图如下所示:图 1.1 系统总框图3 系统电路图见附录4 外围接口模块硬件电路功能描述本设计主要用到的器件是AT89C51 、ZLG7290B 和步进电机。4.1 AT89C51 AT89C51 的主要参数如下表所示:型号存储器定 时器I/0 串行口中断速度(MH )其 它 特点E2PROM ROM RAM 89C51 4K 128 2 32 1 6 24 低电压AT89C51 是一种带 4K字节闪烁可编程可擦除只读存储器的低电压
6、,高性能 CMOS8位微处理器,俗称单片机。其引脚如图1.2 所示。图 1.2 单片机的引脚排列ZLG7290AT89C51UL2003按键输入L E D 显示名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 12 页 - - - - - - - - - - 管脚说明如下:VCC :供电电压GND :接地P0口: 8 位漏级开路双向I/O 口,每脚可吸收8TTL门电流;P1 口:P1口是一个内部提供上拉电阻的8 位双向 I/O 口,P1口缓冲器能接收输出4TTL门电流;P2
7、 口:P2 口为一个内部上拉电阻的8 位双向 I/O 口,P2 口缓冲器可接收,输出4个 TTL门电流,当 P2口被写“ 1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时, P2口的管脚被外部拉低,将输出电流。P3口: P3口管脚是 8 个带内部上拉电阻的双向I/O 口, 可接收输出 4 个 TTL门电流。P3口也可作为 AT89C51 的一些特殊功能口,如下所示:P3.0 RXD (串行输入口)P3.1 TXD (串行输出口)P3.2 /INT0 (外部中断 0)P3.3 /INT1 (外部中断 1)P3.4 T0(记时器 0 外部输入)P3.5 T1(记时器 1 外部输入)P
8、3.6 /WR (外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。RST :复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。4.2 ZLG7290B ZLG7290B 是数码管动态显示驱动、键盘扫描管理芯片。接口采用I2C 结构。内部寄存器有 13 个单元 00H-0DH :1)系统寄存器(地址 00H ) ,第 0 位称作按键有效位,为1 表示按键按下,为 0表示没有按键操作,并且有按键按下的时候在ZLG7290B的/INT 引脚会产生一个低电平的中断请求信号。2)键值寄存器(地址01H ) ,如果按下的是普
9、通键,键值寄存器就保存按键对应的兼职( 1-56) 。3)连击计数器( 02H ) ,就是芯片为普通键提供的一种连击计数功能,当按下某一按键就可以产生连续的中断请求信号。4)功能键值寄存器(地址03H ) ,功能按键不产生键值,但是在按下和抬起都会产生中断请求信号。5)命令寄存器(地址07H和 08H ) ,向命令寄存器送入相关的控制命令可以实现段寻址,下载显示数据和控制闪烁等功能。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 12 页 - - - - - - - -
10、- - 6)闪烁控制寄存器(地址0HCH ) ,闪烁控制寄存器决定闪烁的频率和占空比。7)扫描位数寄存器(地址0DH ) ,扫描位数寄存器决定着ZLG7290B 动态扫描显示的位数,取值 0-7,对应的显示 1-8 位。8)显示缓冲寄存器(地址10H-17H ) ,八个显示缓冲寄存器直接决定着数码管上显示的字形和显示的位置。ZLG7290B 的引脚图如下:图 1.3. ZLG7290B 引脚逻辑图4.3 步进电机步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转
11、过一个步距角。这一线性关系的存在,加上步进电机只有周期性的误差而无累积误差等特点。使得在速度、位置等控制领域用步进电机来控制变的非常的简单。(一)步进电机的静态指标术语1、相数:产生不同对N 、S磁场的激磁线圈对数。常用m表示。2、拍数:完成一个磁场周期性变化所需脉冲数或导电状态用n 表示,或指电机转过一个齿距角所需脉冲数。3、步距角:对应一个脉冲信号,电机转子转过的角位移用表示。(二)步进电机动态指标及术语:1、最大空载起动频率:电机在某种驱动形式、电压及额定电流下,在不加负载的情况下,能够直接起动的最大频率。2、最大空载的运行频率:电机在某种驱动形式,电压及额定电流下,电机不带负载的最高转
12、速频率。3、电机正反转控制:当电机绕组通电时序为D-DC-C-CB-B-BA-A-AD时为正转,通电时序为 AD-A-AB-B-BC-C-CD-D时为反转。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 12 页 - - - - - - - - - - 如下所示的步进电机为一四相步进电机,采用单极性直流电源供电。只要对步进电机的各相绕组按合适的时序通电,就能使步进电机步进转动。图1.4 是该四相反应式步进电机工作原理示意图。图 1.4 四相步进电机步进示意图5 主程序中主
13、要变量定义变量名称RAM 单元/ 寄存器功能SDA P3.3 IIC 数据总线SCL P3.4 IIC 时钟线RST P3.5 IIC 复位线BA P1.0 步进电机驱动BB P1.1 步进电机驱动BC P1.2 步进电机驱动BD P1.3 步进电机驱动WSLA 70H 取器件地址(写)RSLA 71H 取器件地址(读)DISDA 20H 源数据块首地址DISCON 08H 写入数据个数DATA_1 30H 变量区首地址名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 12
14、 页 - - - - - - - - - - 6 系统软件中各个子程序的功能描述子程序名称入口参数出口参数功能 描述INT_7290 A A 按键中断TI_INT A 无定时器中断CF A R3 、R4 拆分, 高 4 位存在 R4中,低 4 位存在 R3中DELAY 无无步进电机相旋转邻角延时;按键抖动消除延时RDKEY 无A 读出键值SHOW 无无将当前 10H-17H的字形码输出WRNBYT R7,R0,R2,R3 无通用的 IIC 通讯子程序(多字节写操作)RDADD R7,R0,R2,R3,R4 R0指向的主器件内部数据块通用的 IIC 通讯子程序(多字节读操作)6主程序程序流程图见
15、附录7程序清单SDA BIT P3.3 SCL BIT P3.4 RST BIT P3.5 BA BIT P1.0 BB BIT P1.1 BC BIT P1.2 BD BIT P1.3 WSLA EQU 70H RSLA EQU 71H DISDA EQU 20H DISCON EQU 08H DATA_1 EQU 30H ORG 8000H LJMP 8100H ORG 8003H LJMP INT_7290 ; 按键中断入口地址ORG 801BH LJMP TI_INT ; 定时器中断入口地址ORG 8100H ;*主程序开始 * ;INT0 实现按键中断 ,INT1 用于定时器;* S
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年单片机汇编语言步进电机转速控制系统参 2022 单片机 汇编语言 步进 电机 转速 控制系统

限制150内