DOWN_END:LCALL PLAY RETI
4.2.4 显示程序
在程序最后调用显示程序,把R2即占空比百分数赋给7290然后调用相关显示程序进行占空比显示,需要用到三个数码管,其余位赋零。 PLAY:PUSH ACC
MOV A,R2 ;显示占空比 MOV B,#100 DIV AB MOV 68H,A MOV A,B MOV B,#10 DIV AB MOV 67H,A MOV A,B MOV 66H,A MOV 69H,#0 MOV 6AH,#0 MOV 6BH,#0 MOV 6CH,#0
MOV 6DH,#0 LCALL leddisp POP ACC RET
5 实验与结果分析
5.1 系统调试步骤
按照PROTEL上的图,在硬件上连接电路。然后打开电脑上的Keil软件,编译程序,没有错误后,设置好相关参数。接着打开单片机实验箱开关,运行程序,观察实验箱上的电动机运转和数码管的显示情况,按键观察电机的转速变化和显示的占空比。根据电动机的运转和数码管的显示反复调整修改程序,直到达到要求。
5.2 调试过程中出现的问题及解决方法 问题1:程序编译时候出现各种错误。
解决方法:我们的程序在编译时出现很多错误,下面举几个典型的例子。第一,显示的错误是:数码管一直出现乱码,不予显示。在老师建议下,我们把显示程序与主程序分开后再次运行。可还是不解决,这个问题卡了我们大量的时间,最终在许多同学帮助下,我们发现,是因为7290的特殊工作模式,其调用程序需要
16
放在指定位置以防与源程序进行冲突。
问题2:电动机正常转动,数码管,但是按键加减速时,电机和灯都没有反应。
解决方法:我们试着把程序一步一步走着运行,进而发现程序入口处出现错误,存在寄存器冲突和未复位情况。
问题3:接通电源时电机会出现一会转一会儿停的情况。
解决方法:起初我们以为是程序延迟的情况,但我们查了下并未添加造成延迟的程序。我们仔细检查程序的每部分,也未发现任何错误。最终我们分析整个电机转动原理,才明白我们的一个周期设定的过长,导致方波控制电机的缺陷显现出来,过长的周期会导致有较长时间段端口一直处于低电平,电机自然就会停止一段时间,后来我们将周期缩短,解决了问题。 5.3调试结果图
图5.1启动
当按下总开关,电机开始运行,初值的占空比为百分之五十,显示如上图。
17
图5.2减速
每次按下减速键占空比显示会相应减1,图上为按下27次减速图。
图5.3加速
我每次按下加速键占空比显示会相应加1,图上为按下17次加速图。
6 小结与体会
为期一周半的单片机课程设计圆满地画上句号,其中的努力与辛苦自是不必多说,但我们的收获也是课堂教学无法比拟的。下面就我个人而言,简单说说体会吧。
还记得在课程设计开始之前,我心里就忐忑不安,因为自己在编程这方面确实没有天赋。所以我本着勤能补拙和笨鸟先飞的原则,把我们之前的做的单片机实验又复习了一遍。虽然对我编程能力的提高没有质的改变,但多点量的积累总归是好的。
两人一个课题,有好处也有坏处。好处是大家可以一起讨论,互相合作,解答难题。但坏处是,起初我们都有点松懈觉得两个人合作必定能很容易完成,但事实并不是,多次的失败让我们懂得自大永远是不可取的。
在课程设计过程中,最让我们头疼的就是编程了。我们做的是硬件设计,用ZLG7290作显示,我们一开始用查表的方法改变占空比,程序很复杂,而且在Keil上编译有很多错误,我们大概花费了半天的时间改这
18
个程序。再者就是零零散散的小错误,比如单片总一些子程序返回加调用、保护堆栈以及中断的使用。总的来说,这次的课程设计对我有很大的帮助。一方面,我认识到自己在灵活运用所学的知识方面还有缺陷,所以以后会注意不只专注于课堂上理论知识的学习,而会学着将零散的知识点结合起来,将所学的内容融会贯通。其次,和搭档的合作也让我受益匪浅,他灵活的思想和遇到问题时能迅速发现问题所在的能力让我十分佩服,也励志向他学习,而且两个人合作让我们很好地完成了任务。最后,这次的课程设计让我对单片机更加了解,在这短短的一周半时间内,把单片机知识系统复习了一遍。书到用时方恨少,平时还得多学点知识,这样才能更好地运用到实践方面。
参 考 文 献
[1] 张毅刚主编,单片机原理及应用,北京:高等教育出版社,2004
[2] 陈涛编著,单片机应用及C51程序设计,北京:机械工业出版社,2008 [3] 皮大能主编,单片机课程设计指导书,北京:北京理工大学出版社,2010 [4] 控制、电子技术类杂志、报刊
19
ZLG7290 EQU 70H SLA DATA 63H SUBA DATA 64H ACK BIT 10H NUMBYTE DATA 62H MTD EQU 6EH DISBUF EQU 66H SDA BIT P2.7 SCL BIT P2.6 RST BIT P2.5 ORG 0000H LJMP MAIN ORG 0003H LJMP UP ORG 000BH LJMP IT00 ORG 0013H LJMP DOWN ORG 0100H
MAIN:MOV SP,#70H LCALL RE7290
MOV TMOD,#01H MOV TH0,#0FCH MOV TL0, #018H
;1MS
20
附录
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库扬州大学单片机课设直流电机控制调速硬件 - 图文(4)在线全文阅读。
相关推荐: