1.2 步进电机模块设计
设计说明:在此设计中,采用的是三相步进电机,对于步进电机模块的程序设计采用循环程序设计方法。先把正反转向的控制模型存放在内存单元中,然后再逐一从单元中取出控制模块并输出。首先启动,选择步进电机的拍数,输入步数,然后读入正反转的控制模型驱动步进电机转动,相步进电机的流程框图:
分模块入Y P1.0=1? N P1.1=1? Y k自增一 N P1.2=1? Y 调用单位延时程序 选择四相六八拍控制字序列输N 不输出任何信号 分模块出口 图4.2 三相步进电机的流程框图
12
1.3 显示模块设计
设计说明:显示模块是用4位八段数码管来显示工作步数。先将显示码存入数组中,指向最左边一位,然后取出要显示的数据,指向换码表首地址,取出显示码,从P0口输出显示码,P2口输入位选码,显示出4位工作步数,最后修改数组地址,求下一位位选码继续显示。
动态显示步数子程序 取出要显示数据 求待显示数据显示码 求下一位选码 送位段码到P0口输出 送位选码到P2.0-P2.3输出 修改数组地址 延时0.6ms 4位显示完了吗 返回
图4.3 显示模块的程序框图
13
1.4 步进电机调速模块设计
为步进电机调速模块流程图,当P3.4=1时,即K5按下,系统选择单位延时程序的循环次数为5,此时步进电机快速运转,当P3.4=0时,即K5无效,系统选择单位延时程序的循环时间为50次,此时步进电机慢速运转。
模块入口 调用单位延时程序 P3.4=1?(K5按下?) N k自增一 Y RRR=50(循环次数为5) RRR=500(循环次数为50) j=RRR?(达到要求次数) N k=0 Y 返回 图4.4 步进电机调速模块流程图
14
总结
通过本次课程设计提高了我的设计方案和分析问题的能力,加深了对理论知识的理解,做到了理论知识与实践的联系。
在设计过程中大,之前并未学过proteus仿真软件,但通过此次课程设计认识到proteus在设计单片机的作用,通过仿真可以无成本地知道自己的方案是否正确,尤其是自己动手编制程序时,通过仿真可以明确地看到自己程序所暴露出来的缺陷和不足,当中遇到了很多困难,但经过一次又一次的思考,一遍又一遍的检查,并在老师和同学的帮助下终于找出了原因所在,当然也暴露出了前期我在这方面的知识欠缺和经验不足。通过亲自动手制作,使我掌握的知识不再是纸上谈兵,而是学以致用。
同时,这次课程设计让我感受到了我对所学习的内容是多么的不熟练,特别是在课堂上学到的单片机知识相当欠缺实践,另外还有一点就是不能把以前学的特别是数电知识很好地运用到单片机外围电路上来,所以在设计过程中总是需要翻书,还总是会出现问题,同时这些问题也提醒了我那些地方没学好,通过这样一步步地摸索从而加深了对这部分知识的印象。
课程设计不仅仅是一门专业课,使我学到很多专业知识以及提升了专业技能上,同时又是一门提升自我综合能力的课程,给了我莫大的发展空间,不仅培养了独立思考、动手操作的能力,在各种其它能力上也都有了提高;更重要的是,在课程设计中,我们学会了很多学习的方法,而这些都将为日后做准备,会使我们终身都受益匪浅。面对社会的挑战,只有不断的学习、实践,再学习、再实践,才能在最大程度上发掘自己。这对于我们的将来也有很大的帮助。以后,不管有多苦,我想我们都能变苦为乐,找寻有趣的事情,发现其中珍贵的事情。
15
参考文献
(1) 丁元杰.单片微机原理及应用[M].机械工业出版社,2010年1月 (2) 刘教瑜、曾勇.单片机原理与应用.武汉:武汉理工大学出版社.2008 (3) 谭浩强.C程序设计(第三版).北京:清华大学出版社.2008
(4) 顶明亮、唐前辉.51单片机应用设计与仿真(基于keil与proteus).北京:
北京航空航天大学出版社.2009.
(5) 张道德.单片机接口与技术(c51版).北京:中国水利水电出版社.2007.
16