《 微机原理与接口技术A》课程综合性实验报告.docx
- 文档编号:30220559
- 上传时间:2023-08-07
- 格式:DOCX
- 页数:9
- 大小:101.96KB
《 微机原理与接口技术A》课程综合性实验报告.docx
《《 微机原理与接口技术A》课程综合性实验报告.docx》由会员分享,可在线阅读,更多相关《《 微机原理与接口技术A》课程综合性实验报告.docx(9页珍藏版)》请在冰豆网上搜索。
《微机原理与接口技术A》课程综合性实验报告
华北科技学院计算机系综合性实验
实验报告
课程名称微机原理与接口技术A
实验学期2010至2011学年第2学期
学生所在系部机电工程系
年级2008专业班级电气B08-4
学生姓名王昌昌学号200802014407
任课教师闫文忠
实验成绩
计算机系制
《微机原理与接口技术A》课程综合性实验报告
开课实验室:
计算机接口实验室2011年6月3日
实验题目
微机控制步进电机调速系统
一、实验目的
1、了解计算机控制步进电机原理
2、掌握步进电机正转反转设置方法。
3、掌握步进电机调速工作原理及程序控制原理。
二、设备与环境
TPC-2003A
微机。
Vc++编译器。
三、实验内容
硬件接线图。
软件编程在TPC-2003A自带的VC++编译环境下使用。
在通用VC++下编程,需要拷贝相关的库文件。
用汇编语言编写控制程序需注明原理。
流程图如下:
四、实验结果及分析
一)步进电机工作原理
步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。
在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响。
即给电机加一个脉冲信号,电机则转过一个步距角。
不但存在这种线性关系,而且步进电机只有周期性的误差而无累积误差,这就使得在速度、位置等控制领域中用步进电机来控制成为一种非常简单有效的控制方式。
步进电机驱动原理是通过对每一相线圈中的电流的顺序切换来使电机作步进式旋转。
驱动电路由脉冲信号来控制,所以通过调节脉冲信号的频率就能够改变步进电机的旋转速度。
如图(b)所示:
本实验使用的步进电机用直流+5V电压,每相电流为0.16A,电机线圈由四相组成:
即:
φ1(BA)
φ2(BB)
φ3(BC)
φ4(BD)
图(b)
驱动方式为二相激磁方式,各线圈通电顺序如下表所示。
表中首先向φ1线圈-φ2线圈输入驱动电流,接着φ2-φ3,φ3-φ4,φ4-φ1,又返回到φ1-φ2,按这种顺序切换,电机转轴按顺时针方向旋转。
实验可通过不同长度的延时来得到不同频率的步进电机输入脉冲,从而得到多种步进速度。
逻辑电平开关K7控制步进电机正反转,K6----K0控制速度,而且速度依次增加,K2,K1,K0速度依次达到最大而且已无法转动以至于抖动。
二)程序及说明:
DATASEGMENT
IOPORTEQU0C800H-0280H
P55AEQUioport+288H;8255APORTOUTPUT
P55CEQUioport+28AH;8255CPORTINPUT
P55CTLEQUioport+28BH;8255COUTRLPORT
BUFDB0;已定义的字变量BUF,这时候BUF=0
MESDB'K0-K6ARESPEEDCONTYOL',0AH,0DH
DB'K6ISTHELOWESTSPEED',0AH,0DH
DB'K0ISTHEHIGHESTSPEED',0AH,0DH
DB'K7ISTHEDIRECTIONCONTROL',0AH,0DH,'$';定义字符串MES
DATAENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DATA;明确段基址与段寄存器二者的关系
START:
MOVAX,CS
MOVDS,AX
MOVAX,DATA
MOVDS,AX
MOVDX,OFFSETMES
MOVAH,09
INT21H;在屏幕上显示字符串MES的内容
MOVDX,P55CTL
MOVAL,8BH
OUTDX,AL;8255CINPUT,AOUTPUT
MOVBUF,33H
OUT1:
MOVAL,BUF
MOVDX,P55A
OUTDX,AL
PUSHDX
MOVAH,06H
MOVDL,0FFH
INT21H;ANYKEYPRESSED,判断有无逻辑开关按下,有开关按下ZF=0,不按任何开关键ZF=1
POPDX;保护DX
JEIN1;ZF=1跳转至IN1,否则往下继续执行命令
MOVAH,4CH
INT21H;ZF=0返回DOS系统
IN1:
MOVDX,P55C
INAL,DX;INPUTSWITCHVALUE,间接寻址,读开关状态,即从C口读取数值
TESTAL,01H;判断是否按下K0,按下ZF=0,否则ZF=1
JNZK0;如果ZF=0,则跳转到K0,否则往下继续执行命令
TESTAL,02H;判断是否按下K1,按下ZF=0,否则ZF=1
JNZK1;如果ZF=0,则跳转到K1,否则往下继续执行命令
TESTAL,04H;判断是否按下K2,按下ZF=0,否则ZF=1
JNZK2;如果ZF=0,则跳转到K2,否则往下继续执行命令
TESTAL,08H
JNZK3
TESTAL,10H
JNZK4
TESTAL,20H
JNZK5;如果ZF=0,则跳转到K5,否则往下继续执行命令
TESTAL,40H;判断是否按下K6,按下ZF=0,否则ZF=1
JNZK6;如果ZF=0,则跳转到K6,否则往下继续执行命令
STOP:
MOVDX,P55A
MOVAL,0FFH
JMPOUT1
K0:
MOVBL,10H;给BX赋值,即设定按下K0时电机转速,数值越小,转速越大,如果速度过大,则电机不转动,为抖动
SAM:
TESTAL,80H;判断是否按下K7,按下ZF=0,否则ZF=1
JZZX0;如果ZF=1,那么跳转到ZX0,正转,否则往下继续执行命令
JMPNX0;无条件跳转至NX0,反转
K1:
MOVBL,18H;设定按下K1时电机转速
JMPSAM;跳转至SAM,判断电机正反转
K2:
MOVBL,20H;设定按下K2时电机转速
JMPSAM
K3:
MOVBL,40H;设定按下K3时电机转速
JMPSAM
K4:
MOVBL,80H
JMPSAM
K5:
MOVBL,0C0H
JMPSAM
K6:
MOVBL,0FFH;设定按下K6时电机转速
JMPSAM;跳转至SAM,判断电机正反转
ZX0:
CALLDELAY;调用延时程序
MOVAL,BUF
RORAL,1;循环右移
MOVBUF,AL
JMPOUT1
NX0:
CALLDELAY;调用延时程序
MOVAL,BUF
ROLAL,1;循环左移
MOVBUF,AL
JMPOUT1
DELAYPROCNEAR;延时子程序
DELAY1:
MOVCX,0FFFFH
DELAY2:
LOOPDELAY2
DECBL
JNZDELAY1
RET;返回调用处
DELAYENDP
CODEENDS
ENDSTART
教师评价
评定项目
A
B
C
D
评定项目
A
B
C
D
算法正确
界面美观,布局合理
程序结构合理
操作熟练
语法、语义正确
解析完整
实验结果正确
文字流畅
报告规范
题解正确
其他:
评价教师签名:
年月日
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机原理与接口技术A 微机原理与接口技术A课程综合性实验报告 微机 原理 接口 技术 课程 综合性 实验 报告