在本设计中该模块电路由按键SW1~SW3经过排阻与74LS244三态8位缓冲器连接,并由74LS244将信号通过地址/数据复用总线AD0-AD3四个端口输入给8086微处理器中。由8086对信号进行分析确定是正转、反转、停止的哪一种输入状态,最终确定电机的运动状态。
3.7驱动电动机控制模块
在本设计中该模块电路是由驱动芯片ULN2003A驱动电机转动的,步进电机
10
脉冲信号由8086芯片发出,由数据线AD0-AD7经过锁存器74273传送到步进电机的驱动芯片,再由驱动芯片输出的数据信号带动步进电机运转。反应电动机运动状态的三个LED显示灯是由74273锁存器的三个端口直接驱动的。
3.8系统电路原理图
四 、系统软件部分设计
11
4.1 系统流程图 电动机初始化 开始 读出开关的输入状态 是 否 正转键是否按 MOV SI,0 反转键是否按下 否 是 电动机正转 MOV SI,0 延时 电动机反转 延时 是 是 正转键是否按下 否 停止键是否按下 否 是 否 SI=SI+1 停止键是否按下 反转键是否按下 是 否 SI<8 12 SI=SI+1 SI<8
是
否
是
4.2系统软件源程序:
.MODEL SMALL .8086 .STACK .CODE .STARTUP
MOV DX,0200H MOV AL,0B3H
OUT DX,AL AGAIN: MOV DX,0400H
IN AL,DX TEST AL,01H JZ CLOCKWISE TEST AL,02H
JZ UNCLOCKWISE JMP AGAIN
CLOCKWISE: MOV SI,0 LOP0: MOV DX,0200H
MOV AL,FFW[SI] OUT DX,AL CALL DELAY MOV DX,0400H IN AL,DX
TEST AL,02H JZ UNCLOCKWISE
TEST AL,04H JZ STOP INC SI CMP SI,8
JB LOP0 JMP CLOCKWISE
UNCLOCKWISE:MOV SI,0
否
电动机停止,停转指示灯亮 读入开关状态
电动机正转 电动机反转 电动机正转开始 检测反转按键是否按下 检测停止按键是否按下 继续正转循环 电动机反转开始
13
LOP1: MOV DX,0200H
MOV AL,REV[SI] OUT DX,AL CALL DELAY MOV DX,0400H IN AL,DX
TEST AL,01H 检测正转按键是否按下 JZ CLOCKWISE
TEST AL,04H 检测停止按键是否按下 JZ STOP INC SI CMP SI,8
JB LOP1 继续反转循环 JMP UNCLOCKWISE
STOP: MOV DX,0200H MOV AL,0B3H
OUT DX,AL 电动机停止,停转指示灯亮
JMP AGAIN
DELAY PROC NEAR
PUSH BX PUSH CX MOV BX,25
DEL1: MOV CX,295 DEL2: LOOP DEL2
DEC BX JNZ DEL1 POP CX POP BX RET
DELAY ENDP .DATA
FFW DB 069H,068H,06CH,064H,066H,062H,063H,061H 单双八拍 正转 REV DB 051H,053H,052H,056H,054H,05CH,058H,059H 单双八拍 反转 END
五 、课程设计体会
5.1 系统的调试
按下停止按钮时,停转指示灯亮,步进电动机停止转动。运行结果如图所示
14
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库步进电动机正反转控制系统设计(3)在线全文阅读。
相关推荐: