单片机四位时钟电路设计方案(一)
以AT89C51单片机为核心的时钟电路的程序设计
1.主程序设计及系统主流程图
设计中采用定时器T0中断完成,其余状态循环调用显示子程序。系统主流程图如图所示
2.时钟电路的时钟和闹铃程序设计及流程图
时钟采用11.0256MHZ的脉冲控制, 闹铃采用整点报时功能。
3 时钟电路的显示程序设计及流程图
码管显示的数据存放在内存单元70H-75H中,其中70H~71H存放秒数据,72H~73H存放分数据,74H~75H存放时数据,每一地址单元内均为十进制BCD码。由于采用软件动态扫描实现数据显示功能,显示用十进制BCD码数据的对应段码存放在ROM表中。显示时,先取出70H~75H某一地址中的数据,然后查的对应的显示段码从P1口输出。P3口将对应的数码管选中,就是显示该地址单元的数据值,每个LED数码管亮1MS时间再逐位循环。
4.时钟电路的键盘程序设计及流程图
P0口输出段码数据,P1.0-P1.2口作扫描输出,P0.1—P0.4口接按钮开关S1,S2,S3,S4,S5,rest 接S6复位按键。P0.0控制秒的调整,每按一次加1秒;P0.1控制分的调整,每按一次加1分;P0.2控制时的调整,每按一次加1个小时。
5.仿真图及程序
单片机四位时钟电路设计方案(二)
通过S1、S2、S3和S4四个按键,对时间进行修改和闹钟的设置,S0控制闹钟的启动和停止。按下S4键显示闹钟,松开后显示时间;按下S1键进入时间修改模式,再按S1键时间的时加1,按S3分加1,调整结束后按下S4恢复正常显示;按下S2键进入闹钟修改模式,再按S3键闹钟的时加1,按S3分加1,调整结束后按下S4恢复正常显示。在按键按下和放开时会出现抖动现象。通过延时程序,可以进行去抖动设计。
Proteus仿真电路
评论
查看更多