5 系统调试
完成了硬件的设计、制作和软件编程之后,要使系统能够按设计意图正常运行,必须进行系统调试。系统调试包括硬件调试和软件调试两个部分。不过,作为一个单片机系统,其运行是软硬件相结合的,因此,软硬件的调试也是绝对不可能分开的。
程序的调式应一个模块一个模块地进行,单独调试各功能子程序,检验程序是否能够实现预期的功能,接口电路的控制是否正常等;最后逐步将各个子程序连接起来总调。联调需要注意的是,各程序模块间能否正确传递参数,特别要注意各子程序的现场保护与恢复。调试的基本步骤如下:
将所要调试的程序输入道伟福6000中,然后进行编译,根据系统的提示查找原因将出错的地方调整正确,例如:有的时标号未定义,有的时少标点符号等。最后以ASM扩展名保存。
将在伟福中调试好的程序方入keil内,将单片机实验相与计算机连接,然后在keil中进行编译程序,运行程序,根据单片机所显示的结果分析程序,修改程序直到程序正常。
在调试过程中出现的问题:
(1)指示灯显示不正常,经分析原因在与灯的表格列的不对,指示灯输出低电瓶时亮,结果程序中都是以高电瓶输出,经修改后正常
(2)数码管从15到计时,当减到11时直接变成了9,而没有经过10,经过对整个程序的分析也没能够找到问题,后经老师的讲解分析最后发现是程序设计的错误,在计时时间到时,必须先判断个位是否为0,如果个位是0,判断十位是不是0,如果十位也是0,判断交通灯是否安黄、绿、红的顺序循环完必,如果没循环完应查下一组数据继续循环,如果循环完必,应查表首地址,周而复始的循环,如果十位不是0,应将十位先减1,个位送9,然后返回,再进行中断定时一秒,然后再判断,如果个位不是0,应将个位减1,而不能先减1再判断,而我开始设计的正好与此相反,我先减1后进行判断,然后又减1所以就出现了这种现象,经改正数码管能够按设定的数据变化。
(3)紧急事件发生时,按下急停按键时两个方向都亮红灯,而数码管不会
闪烁,经老师帮助当按键按下时,在按键服务程序中向数据缓冲器中送入#16H即可。
6 结 论
依据本论文设计以89S51单片机为核心的交通灯,经过近4个月的设计,最后按设计要求终于在单片机实验箱上试验成功,选择不同的单片机,可以组成具有较强抗干扰能力和运行可靠性的产品,其抗干扰能力虽然不如PLC,但PLC价格较贵,用单片机运行效果仍然令人满意,同时证明了本方案的正确性。这种交通灯比较适合应用于中小型城市的十字路口,如果将本方案加上定时器和传感器比较适合应用于大种型城市,它能根据时间的变化自动调节交通灯的时间,或根据车流量的大小自动调节时间的长短,效果会更佳。
致 谢
本课题在选题及研究过程中得到郭继红老师的悉心指导。郭老师多次询问研究进程,并为我指点迷津,帮助我开拓研究思路,精心点拨、热忱鼓励。郭老师一丝不苟的作风,严谨求实的态度,踏踏实实的精神,不仅授我以文,而且教我做人,虽历时三载,却给以终生受益无穷之道。对郭老师的感激之情是无法用言语表达的。
通过这次毕业设计,使我得到了一次用专业知识、专业技能分析和解决问题全面系统的锻炼。使我在单片机的基本原理、单片机应用系统开发过程,以及在常用编程设计思路技巧的掌握方面都能向前迈了一大步,为日后成为合格的应用型人才打下良好的基础。我在指导老师郭老师的精心指导和严格要求下,获得了丰富的理论知识,极大地提高了实践能力,并对当前电子领域的研究状况和发展方向有了一定的了解,这对我今后进一步学习单片机方面的知识有极大的帮助。在此,我忠心感谢郭继红指导和支持。在未来的工作和学习中,我将以更好的成绩来回报老师。
在此,我还要感谢在一起愉快的度过大学生生活的机电系全体老师和同门,正是由于你们的帮助和支持,我才能克服一个一个的困难和疑惑,直至本文的顺利完成。
在论文即将完成之际,我的心情无法平静,从开始进入课题到论文的顺利完成,有多少可敬的师长、同学、朋友给了我无言的帮助,在这里请接受我诚挚的谢意!最后我还要感谢培养我长大含辛茹苦的父母,谢谢你们!
参考文献
[1] 王玉龙.数字逻辑.北京.高等教育出版社,1987 [2] 傅承义.地球物理学基础.北京.科学出版社,1985,447
[3] 华罗庚,王元.论一致分布与近似分析. 北京.中国科学,1973(4):339~357 [4] 张筑生.微分半动力系统的不变集研究.[学位论文].北京.数学系统学研究所,1983
????