1、 一一 、基本内容:、基本内容: 1、从键盘上输入正、反转命令,转速参数(16 级)和转动步数显示 在 LED 显示器上。显示器上显示:第一位为 0 表示正转,为 1 表示 反转;第二位 0F 为转速等级,第三到第六位设定步数。 2、单片机依显示器上显示的正、反转命令,转速级数和转动步数进 行相应动作,转动步数减为零时停止转动。 二、步进电机原理:二、步进电机原理: 如图,当有一相绕组被通电激励时,磁通从正相齿,经过软铁芯 的转子,并以最短路径流向负相齿,为使磁通路径最短,在磁场力的 作用下, 转子被迫移动, 使最近的一对齿与被激励的一相对准。 那么, 通过对它每相线圈中电流的顺序切换可使电机
2、作步进式旋转。 相数:相数:产生不同对极 N、S 磁场的激磁线圈对数。 拍数:拍数:指电机转过一个齿距角所需脉冲数,以四相电机为例,有四相 四拍运行方式即 AB-BC-CD-DA-AB 或 A-B-C-D-A,四相八拍运行方 式即 A-AB-B-BC-C-CD-D-DA-A. 步距角步距角:对应一个脉冲信号电机转子转过的角位移。 步距角=360/(转子 齿数*拍数) 系统中使用 20BY-0 型号步进电机,它使用+5V 直流电源,步距 角为 18 度,电机线圈由 A、B、C、D 四相组成。 步进电机驱动原理是通过对它每相线圈中的电流的顺序切换来 使电机作步进式旋转, 驱动电路由脉冲信号来控制,
3、所以调节脉冲信 号的频率便可改变步进电机的转速。 BA、BB、BC、BD 即为脉冲信号输入插孔,驱动器输出 A、B、 C、D 接步进电机。 步进电机原理接线图:步进电机原理接线图: 三、三、数码管显示:数码管显示: 1 1、数码管显示字形:、数码管显示字形:LED 显示器是由发光二极管构成的字段组成的 显示器。 2 2、显示程序任务、显示程序任务:设置显示缓冲区(7EH 79 H) ,存放待显示数据 和字符(位置码) 。 显示译码:显示译码:程序存储器中建立字形码常数表,查表得出对应数据和字 符的字形码。 输出显示:输出显示:输出字形码到显示端口。 3、键盘显示原理键盘显示原理图:图: 4、显
4、示子程序模块:显示子程序模块: 采用动态显示方式,即一位一位地轮流点亮(扫描)6 位显示器。 在 8032RAM 存储器中设置六个显示缓冲区单元 7EH-79H,分别存放 6 位显示器的显示数据(从高到低) 。 四、键盘输入四、键盘输入 实验系统有 48 的键盘结构(见键扫显示原理图) 。键盘的行 线通过电阻接+5V, 当键盘上没有键闭合时所有的行线和列线都断开, 行线都为高电平。当键盘上某一键闭合时, 则该键所对应的行线和列 线都短路。CPU 逐行逐列地检查键盘的状态,可判断键盘上有无键闭 合。CPU 对键盘上闭合键的键号确定,可根据行线和列线的状态计算 求得,也可以根据行线和列线的状态查表
5、求得。 五、步进电机控制程序框图五、步进电机控制程序框图 六、内存使用分配表六、内存使用分配表 79H:步数的个位 7AH:步数的十位 7BH:步数的百位 7CH:步数的千位 7DH:转速等级(0F) 7EH:正反转控制 字形口地址: 0FFDCH 字位口地址: 0FFDDH 键盘扫描口地址:0FFDCH 键盘输入口地址:0FFDEH 七、程序清单七、程序清单 ORG 0000H AJMP MAIN ORG 001BH ;设置中断服务程序跳转 LJMP T1INT ORG 0300H MAIN:ACALL SHURU ;调用输入程序,等待确认后返回 MOV R1,79H MOV R2,7AH
6、MOV R3,7BH MOV R4,7CH MOV R5,#00H MOV A ,7DH ;读取设定的速度等级 0-F MOV R6,#4 ;循环左移 4 位 N1: RL A DJNZ R6,N1 MOV TMOD,#10H ;T1 模式 1,16 位记数模式 MOV TH1,A ;左移后的速度等级存放到 TH1 MOV TL1,#00H ;按此装载则 0 等级的定时最长,转速最慢,F 等 级的转速最快。 SETB EA ;开中断 SETB ET1 SETB TR1 WAIT:ACALL XS ;调用显示子程序并等待 T1 中断 JNB ET1,N5 ;若中断关闭则步数已减为零,重新执行主程序 SJMP WAIT N5: AJMP MAIN RM: DB 03H,06H,0CH,09H,00H ;正转控制字