资源描述:
《微机控制步进电机调速系统发热论述.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、华北科技学院计算机系综合性实验实验报告课程名称微机原理实验学期2008至2009学年第二学期学生所在系部机电工程系年级06级专业班级机械设计制造及其自动化1班学生姓名xxxxxx学号xxxxxxxx任课教师XXXX老师实验成绩计算机系制实验报告须知1、学生上交实验报告时,必须为打印稿(A4纸)。页面空间不够,可以顺延。2、学生应该填写的内容包括:封面相关栏目、实验地点、时间、目的、设备环境、内容、结果及分析等。3、教师应该填写的内容包括:实验成绩、教师评价等。4、教师根据本课程的《综合性实验指导单》中实验内容的要求,评定学
2、生的综合性实验成绩;要求在该课程期末考试前将实验报告交给任课教师。综合性实验中,所涉及的程序,文档等在交实验报告前,拷贝给任课教师。任课教师统一刻录成光盘,与该课程的期末考试成绩一同上交到系里存档。5、未尽事宜,请参考该课程的实验大纲和教学大纲。《微机原理》课程综合性实验报告开课实验室:接口实验室2009年5月15日实验题目微机控制步进电机调速系统一、实验目的1、了解计算机控制步进电机原理2、掌握步进电机正反转设置方法3、掌握步进电机调速工作原理及程序控制原理二、设备与环境1、TPC-2003系统及配套软件环境2、微机三、
3、实验原理及原理图1、按图(44)连接好电路,利用8255输出脉冲序列,开关K0-K6控制步进电机转速,K7控制步进电机转向。8255CS接288H-28FH。PA0–PA3接BA–BD;PC0–PC7接K0–K7。2、编程:当K0–K6中某一开关为“1”(向上拨)是步进电机启动。K7向上打电机正转,向下打电机反转。要求:有程序流程图,程序有适当注释。四、实验内容及过程开始8255初始化,A输出,C输入BUF=33HBUF内容从8255A口输出有键盘有无键按下无读开关状态返回DOSYK0=1?YNK1=1?YNK2=1?NY
4、K3=1?N置延迟时间YK4=1?NK7=1?NYYK5=1?YN延时K6=1?延时N控制信息循环右移一位置停止信息控制信息循环左移一位本实验使用的步进电机用直流+5V电压,每相电流为0.16A,电机线圈由四相组成。由电动机的转动原理可知:循环的向φ1-φ2,φ2-φ3,φ3-φ4,φ4-φ1通电,或置入高电平,可使电机正转,反之可使电机反转。试验部分代码及分析:;★定义变量:将288H赋予P55A,将28ACH;赋予P55C,将28BH赋予P55CTL(288H,;28AH,28BH分别为A,C,控制端口;的地址;地址)
5、P55AEQU288H;8255A口输出P55CEQU28AH;8255C口输入P55CTLEQU28BH;8255控制口MESDB'K0-K6ARESPEEDCONTYOL',0AH,0DHDB'K6ISTHELOWESTSPEED',0AH,0DHhDB'K0ISTHEHIGHESTSPEED',0AH,0DHDB'K7ISTHEDIRECTIONCONTROL',0AH,0DH,'$';★在屏幕上输出一段符号,提示程序处于执行状态,同时使界面友好。……START:MOVAX,CSMOVDS,AXMOVAX,DATAM
6、OVDS,AXMOVDX,OFFSETMESMOVAH,09INT21H;★调用09号DOS功能,显示字符串MOVDX,P55CTLMOVAL,8BHOUTDX,AL;★完成8255A初始化,B口C口输入,A口输出MOVBUF,33H;★BUF初始化为00110011BOUT1:MOVAL,BUFMOVDX,P55A;★OUT1为循环的关键:1,将BUF;值置入AL寄存器并输出。;2,检测是否有按键仍被按下,;若无,则返回DOSOUTDX,ALMOVAH,1INT16H;有无键按下JEIN1MOVAH,4CHINT21HI
7、N1:MOVDX,P55CINAL,DX;★读开关状态;★从P55C读入按键状态,检测是否k0;被按下,有则跳到k0标识处;同理,其他会分别跳到K1,K2,;K3,K4,K5,K6标志处TESTAL,01H;JNZK0TESTAL,02HJNZK1TESTAL,04HJNZK2……STOP:MOVDX,P55AMOVAL,0FFHJMPOUT1K0:MOVBL,10HJMPSAM;★设置BL值,跳转到SAM……;★检测K7键是否按下,如果按;下,则跳ZX0正转,若否,则;跳NX0反转。SAM:TESTAL,80HJZZX0
8、JMPNX0ZX0:CALLDELAYMOVAL,BUFRORAL,1;★AL值循环右移一位MOVBUF,ALJMPOUT1NX0:CALLDELAYMOVAL,BUFROLAL,1;★AL值循环左移一位MOVBUF,ALJMPOUT1DELAYPROCNEAR;★定义循环函数DELAY:;每次循环计数