计算机控制技术课程设计--步进电机角度控制(5).docx

上传人:王** 文档编号:775871 上传时间:2024-01-14 格式:DOCX 页数:12 大小:126.16KB
下载 相关 举报
计算机控制技术课程设计--步进电机角度控制(5).docx_第1页
第1页 / 共12页
计算机控制技术课程设计--步进电机角度控制(5).docx_第2页
第2页 / 共12页
计算机控制技术课程设计--步进电机角度控制(5).docx_第3页
第3页 / 共12页
计算机控制技术课程设计--步进电机角度控制(5).docx_第4页
第4页 / 共12页
计算机控制技术课程设计--步进电机角度控制(5).docx_第5页
第5页 / 共12页
计算机控制技术课程设计--步进电机角度控制(5).docx_第6页
第6页 / 共12页
计算机控制技术课程设计--步进电机角度控制(5).docx_第7页
第7页 / 共12页
计算机控制技术课程设计--步进电机角度控制(5).docx_第8页
第8页 / 共12页
计算机控制技术课程设计--步进电机角度控制(5).docx_第9页
第9页 / 共12页
计算机控制技术课程设计--步进电机角度控制(5).docx_第10页
第10页 / 共12页
亲,该文档总共12页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《计算机控制技术课程设计--步进电机角度控制(5).docx》由会员分享,可在线阅读,更多相关《计算机控制技术课程设计--步进电机角度控制(5).docx(12页珍藏版)》请在优知文库上搜索。

1、课程设计课程名称计算机控制技术课程设计题目名称步进电机角度控制(5)专业电气工程及其自动化目的1 .巩固和加深对计算机控制技术课程内容的认识和理解,提高应用水平2 .熟悉键盘控制和七段数码管的使用3 .掌握步进电机的控制和测试方法一、系统设计说明:键盘的输入及七段数码管通过8255A接口与系统总线连接,如电路框图所示。犍盘的8个键按4X2矩阵,其中4根矩阵线作为8255A的输出线与PA0-PA3连接,2根矩阵线作为8255A的输入线与PC6PC7连接。键盘采用逐次扫描原理,8个按键如系统原理图所示,03、5有5个数字按键,功能键有CLR、STARTSET3个。4位七段数码管用于显示4位数值数据

2、,数码管采用动态显示方式工作,PBO-PB7提供段码。PA3PA0提供位选。Pa)3与驱动单元连接进而控制驱动步进电机。依次输入4个数值,第一个数为步进电机转动次数,后三个数为转动一次的角度值,按SET设置好次数和角度数,再按START就开始转动该角度并按次数转动这个角度多少次。按CLR后电机转Pl转动前的原处。二、系统原理图:5,3X2SsIo wIORMIOYOSv键盘如图所示:CLRSET21STARTO65三、程序设计流程图:程序设计流程图四、源程序:STACKSEGMENTSTACKDW64DUP(?)STACKENDSDATASEGMENTVAlDB0F7H,OFBH,OFDH,O

3、FEHVA2DBOOH,OOH,OOH,OOH;数码管位选VA3DVVOOOOH;角度VA4DVVOOOOH;次数TABLEDB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FHJ7H,7CH,39H3EH,79H,71H;数码管段选BJDJDB01H,03H,02H,06H,04H,0CH,08H,09HDATAENDSCODESE(iMENTASSUMECS:CODE,DS:DATA;30度步进电机字表startjmovax,dataMOVDS,AXMOVDX,0606HMOVAL,88HOUTDX,ALMOVBX,OOOOH;初始化设置STT:MOVAL,OO

4、HMOVDX,0600HOUTDX,ALMOVDX,0604HINAL,DXANDAL,OCOHCMPAL,OCOHJNZKEYABCCALLDISPJMPSTT;键盘扫描检测KEYABCCALLtimeMOVDX,0604HINAL,DXANDAL,OCOHCMPAL,OCOHJNZKEYJMPSTT;消除抖动KEY:MOVDX,0600HMOVAL,OFEHOUTDX,ALMOVDX,0604H;键位检测INAL,DXTESTAL,40HJNZKEY_7CALLKEYCLR;KEYOJMPSTTKKEY_7:TESTAL,80HJNZKEY_2CALLKEYSTART;KEY4JMPSTT

5、KKEY_2:MOVDX,060()HMOVAL,OFDHOUTDX,ALMOVDX,0604HINAL,DXTESTAL,40HJNZKEY_6CALLKEYSET;KEY1JMPSTTKKEY_6:TESTAL,80HJNZKEY_1CALLKEY0;KEY5JMPSTTKKEY_1:MOVDX,060()HMOVAL,OFBHOUTDX,ALMOVDX,0604HINAL,DXTESTAL,40HJNZKEY_5CALLKEY2;KEY2JMPSTTKKEY_5:TESTAL,80HJNZKEY_0CALLKEY6JMPSTTKKEY_0:MOVDX,0600HMOVAL,0F7HOUT

6、DX,ALMOVDX,0604HINAL,DXTESTAL,40HJNZKEY_4CALLKEY1;KEY3JMPSTTKKEY_4:TESTAL,80HJNZKEY.C1:按键处理CALLKEY5;KEY7KEY_CIiJMPSTTKKEYOrCALLLPlMOVAL,OOHMOVDI+03H,ALCALLDISPRETKEYkCALLLPlMOVAL,OlHMOVDI+03H,ALCALLDISPRETKEY2:CALLLPlMOVAL,02HMOVDI+03H,ALCALLDISPRETKEY3:CALLLPlMOVAL,03HMOVrDI+03H,ALCALLDISPRETKEY4:C

7、ALLLPlMOVAL,04HMOV(DI+03H,ALCALLDISPRETKEY5:CALLLPlMOVAL,05HMOVDI+03H,ALCALLDISPRETKEY6:CALLLPlMOVAL,06HMOVDI+03H,ALCALLDISPRETKEY7:CALLLPlMOVAL,07HMOVDI+03H,ALCALLDISPRET;清除键位程序段;步进电机反转回原位程序段KEYCLR:CALLKEYSETMOVDI,OFFSETVA3MOVBX,DIMOVDI,OFFSETVA4MOVAL,DIMOVAH,OOHCMPAL,OOHJZN7MOVCX,AXNBJ:PUSHCXPUSHB

8、XMOVAX,BXMOVBL,1EH;3ODIVBLCMPAL,OOHJZN6MOVCL,ALNI:PUSHCXMOVSI,OFFSETBJDJMOVCX,0008HN2:MOVAL,SI+07HMOVDX,0604HOUTDX,ALCALLDELAYDECSILOOPN2POPCXLOOPNlN6:MOVAL,AHMOVAH,OOHMOVBL,04HDIVBLMOVCL,ALMOVCH,OOHCMPAL,00HJZN5MOVSI,OFFSETBJDJN4:MOVAL,SI+07HMOVDX,0604HOUTDX,ALCALLDELAYDECSILOOPN4N5:POPBXPOPCXLOOPN

9、BJN7:MOVDI,OFFSETVA2MOVAX,OOHMOVSI,OFFSETVA3MOVSI,AXMOVSI,OFFSETVA4MOVSI,AXMOVCX,04HCLREN:MOVDI,OOHINCDILOOPCLRENCALLDISPRETKEYSTART:MOVDI,OFFSETVA3;开始键位程序段MOVBXjDI;度数MOVDI,OFFSETVA2MOVALJDl+03H;次数CMPAL,OOHJZA7MOVAH,00HMOVCX,AXMOVfDI+03H,00HMOVDI,OFFSETVA4MOV(DI,AXCALLDELAYCALLDELAYBJ:MOVDI,OFFSETVA

10、2;步进电机程序段INCDI+03HCALLDISPPUSHCXPUSHBXMOVAX,BXMOVBL,1EH;3ODIVBLMOVCL,ALCMPCL,OOHCALLDELAYJZA6Al:PUSHCXMOVSI,OFFSETBJDJMOVCX,OOO8HA2:MOVAL,SIMOVDX,0604HOUTDX,ALCALLDELAYINCSILOOPA2POPCXLOOPAlA6:MOVAL,AHMOVAH,OOHMOVBL,04HDIVBLMOVCL,ALMOVCH,OOHCMPAL,OOHJZA5MOVSI,OFFSETBJDJA4:MOVAL,SIMOVDX,0604HOUTDX,AL

11、CALLDELAYINCSILOOPA4A5:POPBXPOPCXLOOPB.JA7:RET;设置键程序段KEYSET:MOVDI,OFFSETVA2MOVAL,DI+02HMOVBL,64H;100MULBLMOVCX,AXMOVAL,DI+01HMOVBL,0AH;10MULBLADDCX,AXMOVAL,DIMOVAH,OOHADDCX,AXMOVDI,OFFSETVA3MOVDI,CXRETLPkMOVDI,OFFSETVA2MOVCX,0()03HLP2:MOVAL,DI+02HMOVDI+03HLDECSIDECDILOOPLP2;显示程序段RETDISP:PUSHCXPUSHBX

12、MOVSI,OFFSETVAlMOVDI,OFFSETVA2MOVBX,OFFSETTABLEMOVDL,DI+03HCMPDL,3FHJNZDIR3MOVDL,DI+02HCMPDL,3FHJNZDIR2MOVDL,DI+01HCMPDL,3FHJNZDIRl.IMPDIRODIR3:MOVCX,0004HJMPDIRDIR2:MOVCX,0003HJMPDIRDIRkMOVCX,0002HJMPDIRDIROrMOVCX,OOOlHDIRzMOVDX,0600HMOVAL,SIOUTDX,ALMOVDX,0602HMOVAL,DIXLATOUTDX,ALCALLTIMEINCSIINCDI

13、LOOPDIRPOPBXPOPCXRETTIME:PUSHAXPUSHCXMOVCX,0005HTIMEkMOVAX,OOFOHTIME2:DECAXJNZTIME2LOOPTIMElPOPCXPOPAXRETDELAY:PUSHCXMOVCX,8()00HA3:PUSHAXPOPAXLOOPA3POPCXRETSTTKrCALLDISPMOVAL,(M)HMOVDX,0600HOUTDX,ALMOVDX,0604HINAL,DXANDAL,OCOHCMPAL,OCOHJNZSTTKJMPSTTCODEENDSENDSTART;延时程序段1;延时程序段2;松键检测调试如实现以下功能:1、键入2

14、(次数)165(角度数)键入SET设置完毕,键入START步进电机转动165度2次;停止后即纳入CLR返回零位;每个过程都必须有相关的显示。2、键入5(次数)120(角度数)键入SET设置完毕,键入START步进电机转动120度5次;停止后即纳入CLR返回零位;每个过程都必须有相关的显示。以上程序可调试成功五、课程设计分析总结通过这次对计算机控制技术课程设计,我收获最大的便是感受到了8255控制方式与实际运用的强大结合。和同学们一步步调试修改,然后设计出来,当电机转动一刹那,真的有种如同自己的孩子出生的感觉。无比兴奋与激动。我的时间基本耗在了对问题的理解和思路的架构,其中,我也参考了很多书本并加以修改,最深有体会的是那按规则及各项代码标准,耗尽半生精力,但最终我还是克服了重重困难

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 工学

copyright@ 2008-2023 yzwku网站版权所有

经营许可证编号:宁ICP备2022001189号-2

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