5 软件程序调试
5.1 调试软件
Keil C51软件是众多单片机应用开发的优秀软件之一,它集编辑、编译、仿真于一体,支持汇编语言、PLM语言和C语言的程序设计,界面友好,易学易用。
1)Keil的μVision3可以进行纯粹的软件仿真(仿真软件程序,不接硬件电路);也可以利用硬件仿真器,搭接上单片机硬件系统,在仿真器中载入项目程序后进行实时仿真;还可以使用μVision3的内嵌模块Keil Monitor-51,在不需要额外的硬件仿真器的条件下,搭接单片机硬件系统对项目程序进行实时仿真。 2) uVision3调试器具备所有常规源极调试,符号调试特性以及历史跟踪,代码覆盖,复杂断点等功能。DDE界面和shift语言支持自动程序测试。
5.2 软件程序测试
1) 工程设置
根据系统电路中晶振参数对工程中STC89C52进行设置, 将Xtal(MHz)项中参数改为12.0,与晶振频率相同。 2) 程序调试
对程序中参数进行调整需进入调试模式,按按钮
进入调试模式,由于该
模式下可单步执行程序且左边框图同步显示运行时间值,所以可以随意对参数进行设置,直到得到所要求的功能。程序调试图如图5.1所示。
26
图5.1 程序调试图
5.3 系统电路功能仿真
利用protus绘制仿真图。整个仿真图的绘制过程主要有以下几部组成:首先新建一个protus的工程,在元件库里面搜索所需要的元器件,在元器件上单击右键选中,再单击左键对其进行命名和赋值,接着在编辑器左边的一栏中,找出绘制各种需要的线条和其他一些相关的线条和器件,进行节点出是否连接好进行检查,为下一步的系统仿真作准备。画出的仿真电路图如图5.2所示:
27
图5.2 仿真电路图
5.4 Keil与Proteus对系统联调
Proteus与Keil两个软件可以进行联调,这一强大功能是其他软件无法办到的,仿真时通过KEIL C51和Protus结合实现的。首先,要将KEIL C51中调试成功的程序生成.HEX文本并保存,在Protus中的主芯片STC89C52RC中导入此文本,即可在Protus环境中实现系统的仿真。 1) Keil与Proteus联调,如图5.3所示。
图 5.3 联调图
2) 无故障正常时,即正常,P0输出扫描码,P2输出汉字码,点阵正确显示,测试图如图5.4所示:
28
图5.4 工作时仿真电路图
利用仿真软件对所编写的程序进行调试,联机前先断电,把将调试成功的程序下载到STC89C52 芯片中,检查一下电路之间的电源、接地是否良好,若一切正常,即可打开电源。在系统的调试过程中不是希望中的顺利,在调试中出现了问题,一点点的解决,软、硬件调试出预期的结果。
29
6 总结与展望
在科技高速发展的今天,公交车在城市交通事业中占有举足轻重的地位,它给人们外出提供了方便快捷的服务,而报站器直接影响到公交车的服务质量,因此,我认为在不久之后,自动报站器将完全取代传统的人工报站,普遍使用于各大、中、小城市。
6.1总结
我毕业设计的题目是嵌入式公交车汉字显示系统的设计,经过几个月的奋斗,终于完成了设计,使系统实现了汉字显示以及自动报站功能。本设计是基于嵌入式的公交车语音文字报站系统,使用STC89C52RC单片机作为主控制器,通过与语音芯片ISD4004,LED点阵电路的连接完成语音录制、播放和按键电路等功能。文中详细介绍了ISD4004内部结构、各引脚功能、工作原理等。系统其他部分包括人机界面(键盘控制)技术的实现和抗干扰设计等。
通过本次设计,我不仅学习到了MCS-51系列单片机的知识,更拓展了自己的视野,培养了自己的学习能力。这些进步对以后的工作学习肯定会有很大的帮助。
该设计的创新之处在于它很好的实现了车辆报站的自动化,具有很强的实用性。系统选用ISD4004语音芯片,它的录音数据被存放方法是通过ISD多级存储专利技术实现的,用声音和声频信号的自然形式直接存放在故态存储器,从而提供高质量回放语音的保真度,使得该系统与其他语音报站系统相比较,语音质量较好。另外,本设计仍然存在的许多的不足之处,存在一定的误差。这些问题都需要在今后的研究工作中加以改进,使系统更完善,更好的为人们服务。
6.2展望
本毕业设计是基于嵌入式的公交车汉字显示系统的设计与实现,在此基础上仍可扩展以下功能。
1)使用GPS定位公交车,从而自动报站及显示。
30