本设计以一片AT89C2051单片机为主体,显示数据自P3口输出,P1口输出六位位选信号。程序以T0作计时基准、T1作调整时显示刷新,稍作修改即可扩展为八路定时输出。
一、电路特点
全部设置仅由一个轻触按键完成。蜂鸣器采用PNP型8550驱动以保证音量,驱动电阻取1kΩ;数码管位驱动采用8850。整机由基于LM2576的3A开关电源供电,可直接接入7~24V直流电源,整机工作电流约20mA。
二、功能设计
时间显示:六位LED数码管按24小时制显示时分秒,最小单位秒,走时精度约5秒/月(与晶振有关,可通过微调电容校准)。
走时与闹钟调整:长按按键0.5秒以上进入设置状态,按闹钟分、闹钟时、走时分、走时时的顺序调整;调整项以0.3秒周期闪烁,按住按键时数值快速递增。设置闹钟期间秒位保持走时,不影响精度;进入走时设置后秒自动清零,便于从整点开始校准。
闹钟开关:走时状态短按按键可查询闹钟时间,约显示两秒后自动切换闹钟开关状态(00为关、01为开),上电默认开启。
三、软件结构
主程序循环执行显示刷新、闹钟查询与按键扫描;T0中断实现50ms定时累计与时分秒进位,T1中断完成调整项闪烁。显示缓冲区、计时单元与闹钟参数的地址分配及加一、清零子程序均采用标准8051汇编实现。


