电压常常会因为市电电压的波动或负载的变化等原因而发生变化)。此直流电压经过LM7809的稳压和100uf电容的滤波后,便在稳压电源的输出产生了精度高、稳定度好的直流输出9V电压。9V电压给可调分流基准芯片TL431提供电源。TL431的主要作用是给A/D转换芯片TLC1594提供比较精确的参考电压。9V电源再经过LM7805稳压后,给各个芯片提供电源。电路见图1-8。三端稳压器是标准化、系列化的通用线性稳压电源集成电路,以其体积小、成本低、性能好、工作可靠性高、使用简洁等特点,成为目前稳压电源中应用最为广泛的一种单片式集成稳压器件。三端稳压器的工作原理(以78系列为例)如下:他与一般分立元件组成的串联式稳压电路基本相似。不同的是增加了启动电路、保护电路和恒流源。启动电路时为恒流源建立工作点而设置的。恒流源随着在基准电压形成和误差放大器电路中,是为了使稳压器能够在比较大的电压变化范围内正常可靠工作。在芯片内设置了两种较完善的保护电路:一是过流保护,一是过热保护。
图1-8 电源电路
10
第四章 软件设计流程图
4.1时钟主程序流程图
时钟主程序流程图如图1-9所示。
图1- 9时钟主程序流程
4.2按键扫描程序流程图
按键扫描程序流程图如图1-10所示。
11
图1-10按键扫描程序流程
4.3时钟程序流程
时钟程序流程如图1-11所示。
12
第五章 硬软件系统的调试
硬件调试的主要任务是排除硬件故障,其中包括线的连接,按键是否接上了上拉电阻等。由于最小系统出了点错误,导致写好的芯片无法显示。经用万用表检测,手工慢慢焊接好接入电源。在用万用表检查各个芯片管脚的电压是否达到正常的工作电压,然后判断是否有存在短路现象等,经一步步修改后把硬件调试好。
程序的调试是采用一个模块一个模块的进行,首先单独调试个功能子程序,检验程序是否能够实现预期的功能等;最后逐步将各子程序连接起来总调。联调需要注意的是,各程序模块间能否正确传递参数。
在程序调试过程当中,出现了以下几个问题:
1)
LED闪烁问题:虽然本次设计的最终方案是采用LCD显示屏实现
显示功能,但是在进行方案比较时曾采用过LED显示方法,最初数码管显示不正常,出现闪烁现象。通过调试发现这是由于延时时间选择不当造成的。由于数码管是采用动态显示方式,为了使人眼长生视觉暂留效果,每一次显示时都必须加入适当的时间延时。由于一开始所选用的延时时间太短,因此出现闪烁现象,在增加显示延时之后,数码管显示正常。
2)
闹铃蜂鸣器异常启动问题:闹铃蜂鸣器的启动/关闭是通过单片
机输出的控制信号来实现的,当当前时间与闹钟设置时间比较吻合时,单片机将对闹铃控制口P3.4执行取反命令,从而启动蜂鸣器发声。一开始编写程序时,没有对P3.4口的最初状态作正确设置,由于系统开机复位后,P3.4口处于高电平状态,因此出现一开机蜂鸣器就处于启动状态的情况。通过在主程序最开始加入对P3.4口取零命令后,蜂鸣器启动/关闭控制恢复正常。
3)
按键消抖问题:在最初编写程序时,按键控制部分按照常例加入
了按键消抖程序。在实际调试中,发现按键出现反映不灵敏现象。这是因为在键盘控制程序中除了消抖程序外,还加入了按键提示音程序(每次按压键时,蜂鸣器发出“哗”的一声提示音)。由于在调用提示音子程序时,实际上已实现了一次时间的延时,因此再加入按键消抖程序的延时后,致使延时时间过长而出现按键反映不灵敏问题。通过调试发现提示音子程序本身所产生的延时已能够满足按键消抖程序后,按键控制灵敏度恢复正常。
4)
计时显示异常问题:计时程序里面秒值显示每次达到60后直接
跳变到下一分钟的01秒,最终会出现24:60:60的时间显示。正确的显示应该是秒值达到59后变成00,时间值在显示到23:59:59之后的下一秒显示为0:00:00。出现这种异常显示的主要问题在于每次计时相应的时钟计时
13