本科生毕业论文
5.2 系统软件调试方法
由于已经进行了硬件调试,所以软件调试主要是软件编译和将各功能块程序分别写入以验证其功能的可实现性。在进行功能调试前必须用KEIL C对所有程序进行编译,编译成功生产可执行的.hex后方可进行功能测试。
其中测试串口程序的功能是否完善不但要连接单片机系统还要借助串口调试工具。串口调试工具选用的是串口调试助手,其功能是按照设定的串口、波特率向单片机发送数据和接收单片机向PC机发送的数据。并且能把发送和接收的数据内容显示在状态栏内。因此只要设定PC机向单片机发送的内容和单片机向PC机发送的内容就可以通过串口调试助手验证串口通信是否准确,是否满足功能要求。
串口程序的设计为:设定波特率位9600,以0XAA为起始标志位,单片机接收自起始标志位后的32位十六进制数再发送会PC机。测试程序时设定波特率为9600,选择串口1,无校验,8位数据。PC机向单片机发送的内容为aa 11223344556677889900aabbccddeeff11223344556677889900aabbccddeeff。PC机收到的数据为 11 22 33 44 55 66 77 88 99 00 AA BB CC DD EE FF 11 22 33 44 55 66 77 88 99 00 AA BB CC DD EE FF。测试表明串口程序和串口电路实现了设计目的。再进行数次不同数据的发送,接收到的数据也验证了设计要求的实现。
图5-3 串口调试图
31
本科生毕业论文
串口程序测试成功后为显示程序提供了准确的显示内容。余下得各种显示程序和中断程序都编译成功后只有联合硬件才能验证其功能的可行性。
5.3 系统联合调试及结果
经过硬件调试和软件调试,排除了硬件的连接问题和验证了串口功能的可实现性。其余功能的软件便可以在此基础上调试验证其功能的正确性。联合调试的具体方法如下:
(1)编写一个逐点扫描的显示程序,再结合硬件电路运行。这样做的目的在于检
测各器件是否能够正常运行和显示屏的各个LED灯是否有损坏。结果显示显示屏中只有边角出有一个LED灯被烧坏,其他器件逻辑功能运行正常。 (2)将静态显示子程序与各种动态显示程序结合硬件电路进行调试。系统运行时
显示如图5-1所示,显示图像比较清晰,各动态显示效果也能够实现。但显示存在两个问题。一是发光点的下方会出现一个很微弱的亮点,影响了整体的显示效果。二是同一列的LED灯被点亮的数量与其亮度出反比,即如果同一列的灯都被点亮则亮度比只点亮几个时要暗一点。
(3)将串口通信,显示,硬件联合调试。按照设定的通信协议,先由PC机向单片
机发送起始控制字s,接着再发送32比特的显示数据,最后发送控制显示方式的显示控制字。再发送不同的显示数据和显示控制字,观察各种显示方式的运行情况和各种显示方式之间的切换情况。结果是显示屏执行显示控制指令,显示所发送的内容。
5.4 调试结果分析
对调试中出现的问题进行了分析,得出以下原因和修改办法。
(1)硬件的工作表现出不稳定,主要是表现在LED显示屏的驱动电路部分和单片
机系统部分。具体表现为单片机接负载后电压被拉低值1.7V左右,无法满足译码电路的输入要求。显示时会有一些行驱动的输出不够设计指标 ,导致所驱动的那一行在显示屏上表现为选定的点不能够很好区分,图像出现模糊。分析造成这一现象的原因为,焊接时三极管8550遭到了高温损坏以致工作不稳定和焊接的电路不够牢靠,还有就是8550的e端所接电压过高。修改办法为将单片机输出端口外接5K的上拉电阻,替换损坏三极管。
(2)虚点的产生与软件和三极管电压有关。修改办法是将软件中的延时时间调至
32
本科生毕业论文
恰当值,将8550的e端电压降至3V左右。
经过调试和修改,系统实现了题目所要求的中英文显示,动态显示及上位机通信与控制的要求。
33
本科生毕业论文
结 论
经过一段时间的工作,终于完成了基于51单片机的LED显示系统的设计,项目所要求的功能全部达到。通过这次设计收获颇多,不仅是所作题目涉及到的软硬件知识还有更为重要的实际经验和过程中所发现的问题。
接手题目之后从互联网上对LED进行了详细的资料收集,从技术和产业的两方面对LED进行了了解。通过了解我认识到LED是一门当今应用非常广泛的技术,整个产业每年都会有巨大的产值而且技术还在不断发展和创新[20]。
从设计之初就确定了参照大屏幕显示屏的实现方法和实际情况设计一款小屏幕的LED点阵显示屏。在查阅了大量的大屏幕显示屏资料后确定了题目的设计方案。整个设计采用AT89S51做核心控制器,74LS164和74LS373组成译码电路,三极管8550和ULN2803做行和列驱动。在实现这一设计的过程中所遇到的问题和困难给我留下了宝贵的经验和深刻教训。这些经验和教训是:
(1)设计之前应该进行大量的资料收集和分析,确定一个清晰的设计思路; (2)器件选择时要详细阅读器件使用手册,不但要考虑器件的功能实现还要考虑
器件在整个系统中的兼容性;
(3)硬件的系统的建立必须合理和稳定,实物建立之前最好进行仿真这样才能为
软件提供一个可靠的试验平台;
(4)软件的编写不但要实现功能还要不断的优化、简练、易读。
随着课题的进行,对LED的了解也越来越深入。认为LED技术也会进一步发展,LED应用将会更加广泛。可以设想利用LED的高稳定性和低能耗,再与无线通信技术相结合在沙漠深处或者人迹罕至的雪山之颠树立一块依靠太阳能充电,通过无线传输方式更改显示内容的信息板为登山者提供指示和天气信息,为沙漠迷路的人指引方向。
设计结束了,但学习还在继续。我相信通过此次设计所得到的知识、心得、经验乃至感受都会让我在以后的日子里受益匪浅。
34
本科生毕业论文
致 谢
这次能够圆满完成毕业设计我首先要感谢我的指导老师***老师、***老师、***老师,感谢他们在毕业设计期间对我的指导、勉励、和督导。同时我要感谢大学四年里教过我课程的老师们,感谢他们对我知识增长所付出的辛勤劳动。
我还要感谢全班同学,感谢他们大学四年所做的所有令人感动的、幽默的、滑稽的、荒诞的事情。我所在的实验室的同学,我也要感谢你们。虽然大家来自不同专业相处时间也不长,但大家共同的爱好相同的目标使得大家互相扶持共同努力。
最后我要感谢我所住宿舍的管理员阿姨们,感谢她们不论多晚回去都给我们开门让我们不至于露宿街头。还有学校的保安和厨师,你们是我安全完成毕业设计的保障。
35