步进电机实验微机原理

上传人:daj****de 文档编号:225636855 上传时间:2023-08-03 格式:DOCX 页数:15 大小:94.12KB
收藏 版权申诉 举报 下载
步进电机实验微机原理_第1页
第1页 / 共15页
步进电机实验微机原理_第2页
第2页 / 共15页
步进电机实验微机原理_第3页
第3页 / 共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,SIJM

12、P 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,10HJNZCMP26MOVSI,WORD PTR SPEED8MOVSD,SIJMPEINTCMP26:CMPAL,20HJNZCMP27MOVSI,WORD PTR SPE

13、ED10MOVSD,SIJMPEINTCMP27:MOVSI,WORD PTR SPEED12MOVSD,SIEINT:MOVAL,20H;发 EOI 命令OUT20H,ALPOPCXPOPAXSTIIRETINT_PROC ENDPCODE ENDSEND START9 系统调试运行结果说明、分析所出现得问题,设计体会与建议软件环境:硬件环境:设计语言:汇编语言调试过程中,在设计转速环节刚开始不清楚怎样引入速度值,后来经过多次试验以 及同学探讨,终于明白可以通过改变CX的值而改变loop循环的次数,从而实现对延时 的不同控制,得以完成实验。6 结论及设计体会微机原理的学习使我对对汇编语言有了

14、初步的了解。并且通过本实验让我对汇编 语言产生很大的兴趣,让我掌握了汇编编程的总体思路,本实验利用微机控制步进电机 的转向,在实验过程中遇到的问题告诉我们理论的编程要结合实际的电动机技术指标调 试延迟时间。从这次实验中并让我进一步的学习到了 8255 的应用和掌握了 8255 的初始 化和其编程。对我们以后的工作和学习起到的积极的作用。参考文献Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!