华北科技学院计算机系综合性实验报告
; 开始工作,进行PC口的状态监视 ;--------------------------------------------------------- IN2: MOV DX,P55C ;--------------------------------------------------------- STOP: MOV DX,P55A MOV AL,0FFH out dx,al JMP in1 ;开关K0到K5测试 IN AL,DX ;INPUT SWITCH VALUE 读取pc的状态 MOV BUF_IN,AL ;保存状态到BUF_IN单元中 TEST AL,01H JNZ K0 TEST AL,02H JNZ K1 TEST AL,04H JNZ K2 TEST AL,08H JNZ K3 TEST AL,10H JNZ K4 TEST AL,20H JNZ K5 ;------------------------------------------------- PA端口 JNZ K6 TEST AL,40H ;监测方波是否产生高1电平,如果是1,则进行驱动 第 5 页
华北科技学院计算机系综合性实验报告
CMP AL,BUF1 ;buf1保存上次监测获得的方波状态,1或者0,如果相同则不动作 JZ IN1 MOV BUF1,AL ;如果不相同,则保存当前状态 JMP IN1 ;--------------------------------------------------------- K6: NOP OUT1: MOV AL,BUF ;第一次 输出 MOV DX,P55A OUT DX,AL ;输出A口,驱动电机四相中的两相 MOV AL,BUF_IN TESTAL,80H ;正反转判断,pc7为1 正转,0反转 JNZ NX0 CMP AL,BUF1 ;高电平时,如果是第一次,及上升沿,就进行驱动PA口 JZ IN1 ;如果不是第一次,则不输出,应为pa口可以锁存状态 MOV BUF1,AL ;第一次 保存状态 ;--------------------------------------------------------- ZX0: NOP MOV AL,BUF ROR AL,1 MOV BUF,AL JMP IN1 ;正转 ;--------------------------------------------------------- NX0: NOP ;反转 MOV AL,BUF ROL AL,1 MOV BUF,AL JMP IN1 ;--------------------------------------------------------- K0: MOV ax,NN*1 不相同,逐渐变慢 mov num,ax ;不同开关,控制不同的转速,8253的方波频率 第 6 页
华北科技学院计算机系综合性实验报告
JMP start2 K1: MOV ax,NN*2 K2: MOV ax,NN*3 K3: MOV ax,NN*4 K4: MOV ax,NN*5 K5: MOV ax,NN*6 mov num,ax JMP start2 mov num,ax JMP start2 mov num,ax JMP start2 mov num,ax JMP start2 mov num,ax JMP start2 ;--------------------------------------------------------- CODE ENDS END START (二)、实验总结 汇编是一种功能特别强大的计算机语言,通过这次综合性实验,我对汇编语言有了更加深入的认识,而且我了解了步进电机的驱动方式以及调速方式。 在设计程序时,刚开始,由于设定的延时程序参数的不合适,使电机不能按预计的效果转动。通过反复调试发现,延时参数过小,导致线圈上的脉冲频率过快,电机的转子转速不能跟上脉冲的速度,使得电机只能原地震动,却不能正转或反转;而延时参数偏大,能得到较低的转速是能够实现的。因此,我在调整参数时,先调出最快的转速,然后按照一定的规律确定出低转速的各档的延时参数。
第 7 页
华北科技学院计算机系综合性实验报告
评定项目 算法正确 程序结构合理 语法、语义正确 实验结果正确 A B C D 评定项目 界面美观,布局合理 操作熟练 解析完整 文字流畅 题解正确 A B C D 教师评价报告规范 其他: 评价教师签名: 年 月 日
第 8 页