步进电机实验微机原理

上传人:壹****1 文档编号:563423681 上传时间:2024-02-25 格式:DOCX 页数:15 大小:94.12KB
返回 下载 相关 举报
步进电机实验微机原理_第1页
第1页 / 共15页
步进电机实验微机原理_第2页
第2页 / 共15页
步进电机实验微机原理_第3页
第3页 / 共15页
步进电机实验微机原理_第4页
第4页 / 共15页
步进电机实验微机原理_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《步进电机实验微机原理》由会员分享,可在线阅读,更多相关《步进电机实验微机原理(15页珍藏版)》请在金锄头文库上搜索。

1、大连理工大学本科设计报告(计算机原理接口实验综合设计)题目:步进电机控制系统设计课程名称: 计算机原理实验学院(系):电信专业:自动化班级:100*学号:201081*学生姓名:*成绩:201 年 月 0 日题目:步进电机1 设计要求利用实验台上的开关(K7-K0),实现步进电机的转速、转向控制。具体要求如下:1. 利用D8255A的PA0-PA3做输出,输出步进电机的相序、驱动步进电机工作(使用四个LED 监视步进电机的相序信号),相序之间的时间决定着步进电机的转速,而间隔时间由延时程 序中的CX寄存器的初值决定(参见实验教材3.1.3章节)。2. 利用D8255A的PB7-PB0做输入,与

2、K7-K0连接。其中K7做步进电机的转向控制,其余 位做步进电机的转速控制。程序运行时通过K7-K0对步进电机实施动态控制;3. 利用8253做秒脉冲发生器,产生约2秒的周期性方波信号。其中CNTO做分频器:将1MHZ 信号分频为100HZ; CNT1做秒脉冲输出(0.5HZ);4. 利用386模块的主8259的MIR5做中断请求输入,将CNT1的OUT1秒信号方波作为中断 请求信号,引发中断服务ISR;5. 在中断服务程序中实现对步进电机的转速、转向实时控制。方法如下:在ISR中,对D8255A 的 PB 口进行一次输入操作,并根据输入的数据:1)对D7 (与K7对应)位的数据为步进电机的转

3、向控制;2)对D6-D0 (与K6-K0对应)位的数据为步进电机的转速控制。2 设计分析及系统方案设计1- 将初始相序存放在一个寄存器中(原始相序数据位66H),然后利用对该寄存器“移位”的方式产生下一个相序。其中对寄存器中的数据移位方向决定着电机旋转地方向。从而 使步进电机运转起来。2- 对8253进行编程,使OUT1输出2秒周期的脉冲方波信号。为了便于调试,建议使用逻辑笔监测OUT1的输出;3- 编制与中断相关的程序。包括中断屏蔽字的设定、中断向量表的创建以及开中断的操作(参见教材 3.3.3 章节)。上述这些操作都应当加到程序的初始化中;4- 编写中断服务程序ISR。在ISR中读取D82

4、55A的PB 口数据,然后进行数据分析、根据数据来调整CX寄存器中的数据,因而改变步进电机的转速和转向。3 系统电路图图 1 .1 实验电路4 外围接口模块硬件电路功能描述8253、TMP82C53可编程间隔计数器PAJPA2PM莎GWDAJOAlPA?PASPA5PA+PAJOPMPA2PAJFEiFE1PB2140393S+37莎353+Z33?8255321031li301229132S1+27152(Ui 17IS2319、2021PA5PAiPA7PJO血DO LUD2D3LUD5 Di;D7 丫如PATPAS per FBfrFBJ切匚D6匚D5匚D4匚D3匚D2匚D1匚DO匸CL

5、KO 匚OUTO 匚GATEO 匚GND匚24JVCC(+5V)223nWR322RD421nCS520Al6m s19AO7CM0018CLK2817ZlOUT2916GATE21015CLK11114GATE11213OUT18253 具有三个独立的 16 位减法计数器,每个计数器可按照二进制或十进制计 数,每个通道都有六种不同的工作方式。8255 有 3 个 8 位并行 I/O 口。具有 3 个通道 3 种工作方式的可编程并行接 口芯片( 40 引脚)。 其各口功能可由软件选择,使用灵活,通用性强。 8255 可作为主机与多种外设连接时的中间接口电路。5 主程序中主要变量说明变量名称内存

6、单元功能FLAGAX转向标志BUFAL步进电机初始相位SPEEDSI可调转速SDAL默认转速6 系统软件中各个子程序的功能描述子程序名称入口参数出口参数功能描述INT_PROCio8255_BSD中断服务DELAY无无延时ISRPB7=1?N从8255的B 口 输入数据7 主程序程序流程图开始D8255A的初始化PA、PB输出建立方向标志Flag=18253初始化CNTO方式3、初值CNT1方式2、初值修改方向标志Flag=1修改方向标志Flag=O开中主片8259初始化 设置屏蔽字 创建35H的中断向量表 断-Flag=1?YN顺时驱动(等待中断)逆时驱动(等待中断)根据D6-D0设定CX值

7、中断结束命令IRET(a)主程序流程图(b)中断服务程序流程图图 1.2 程序流程图8 程序清单io8255_AEQU 200Hio8255_BEQU 201Hio8255_KEQU 203Hio8253_0EQU 270Hio8253_1EQU 271Hio8253_KEQU 273HDATA SEGMENTSPEEDDW 0280H,0380H,0480H,05800H,0680H,0780H,0880HSDDW 0300H; 默认转速FLAGDB ?BUFDB ?DATAENDSCODESEGMENTASSUME CS:CODE,DS:DATASTART:CLI; 关中断MOVFLAG,

8、00H; 标志位置一MOVAX,DATAMOVDS,AXMOVES,AXINAL,21H;设置中断屏蔽字ANDAL,11011111BOUT21H,ALPUSH DS; 设置中断向量表MOVAX,0MOVDS,AXLEAAX,CS:INT_PROCMOVSI,35HADDSI,SIADDSI,SIM8TMMMg TMMPMPMg 同33HMOV AXLOOOO OUT Dx AL MOV AL AH OUT DXALMOVMOVOUTMOVMOVOUTMOVOUTOUTrrMOVio8253 KO111O111B5-8253 1200AL BUF05S 5MOVDX,io8255_AOUTDX

9、,ALSTILLL:CALLDELAYCMPFLAG,01HJZNEX0MOVAL,BUFRORAL,1JMPNEX1NEX0:MOVAL,BUFROLAL,1NEX1:MOVDX,io8255_AOUTDX,ALMOVBUF,ALJMPLLL;开中断;延时DELAY PROC;延时函数PUSH AXPUSH CXPUSH DXMOV DH,6X1:MOV CX,SDX2:LOOP X2DEC DHJNZ X1POP DXPOPCXPOPAXRETDELAYENDPINT_PROC PROC FAR;中断服务子程序PUSHAX; 保护现场PUSHCXMOVDX,io8255_B;读8255B

10、口输入INAL,DXCMPAL,80H;通过判断输入获取FLAG和SD (ex)的值JBCMP20MOVFLAG,01HJNZCMP10MOVSD,0300HJMPEINTCMP10:CMPAL,81HJNZCMP11MOVSI,WORD PTR SPEED0MOVSD,SIJMPEINTCMP11:CMPAL,82HJNZCMP12MOVSI,WORD PTR SPEED2MOVSD,SIJMPEINTCMP12:CMPAL,84HJNZCMP13MOVSI,WORD PTR SPEED4MOVSD,SIJMPEINTCMP13:CMPAL,88HJNZCMP14MOVSI,WORD PTR

11、 SPEED6MOVSD,SIJMPEINTCMP14:CMPAL,90HJNZCMP15MOVSI,WORD PTR SPEED8MOVSD,SIJMPEINTCMP15:CMPAL,0A0HJNZCMP16MOVSI,WORD PTR SPEED10MOVSD,SIJMPEINTCMP16:MOVSI,WORD PTR SPEED12MOVSD,SIJMPEINTCMP20:MOV FLAG,00HCMP AL,00HJNZ CMP21MOV SD,0300HJMP EINTCMP21:CMP AL,01HJNZ CMP22MOV SI,WORD PTR SPEED0MOV SD,SIJMP EINTCMP22:CMP AL,02HJNZ CMP23MOV SI,WORD PTR SPEED2MOV SD,SIJMP EINTCMP23:CMP AL,04HJNZ CMP24MOV SI,WORD PTR SPEED4MOV SD,SIJMP EINTCMP24:TEST AL,08HJNZ CMP25MOV SI,WORD PTR SPEED6MOV SD,SIJMP EINTCMP25:CMP AL,10HJNZCMP26MOVS

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号