基于c语言的数字电子钟设计.docx

1 . 一、功能要求 整体上要考虑:构造简单大方、布局美观合理、操作方便易 懂、尽量防止各元器件之间的相互影响。 1、 以 AT89C51 单片机进展实现秒 分 时上的正常显示和进位, 其中显示功能由单片机控制共阴极数码管来实现, 数码管进展动 态显示。 2、 具有校时功能,按键控制电路其中时键、分键、秒键三个键分 别控制时 分 秒时间的调整。按秒键秒加 1;按分键分加 1;按 时键时加 1. 二、硬件设计 1、整体设计框图 2、管脚功能描述 〔1〕 *TAL1〔19 脚〕和*TAL2〔18 脚〕:振荡器输入输出端 口,外接晶振电路。 〔2〕RST/Vpd〔9 脚〕为复位输入端口,外接电阻电容组成 的复位电路。 〔3〕P0 口 8 个端口依次和 LED 显示器的A、B、C、D、E、 F、G 和 Dp 端口对应连接,实现对显示器的片选功能。 〔4〕P2.0~P2.5 依次与 LED 显示器的 1、2、3、4、5、6 一 一连接,实现对显示器的为选功能。 (5)P3.0~P3.2 依次与按键电路的秒、分、时三个按键相连接。 通过按键实现对时间的调试功能。 1 . 3、整体原理设计 其计时周期为 24 小时,显示满刻度为 23 时 59 分 59 秒,另 外还有校时功能。整个设计图由晶振电路、复位电路、 AT89C51 单片机、键盘控制电路组成。 显示电路将“时〞、 “分〞、 “秒〞通过七段显示器显示出来, 6 个数码管的段选接到单片机的 P0 口,位选接到单片机的 P2 口。 数码管按照数码管动态显示的工作原理工作。 把定时器定时时间设为 50ms,则计数溢出 20 次即得时钟计 时最小单位秒, 而 20 次计数可用软件方法实现, 每累计 60 秒进 1 分,每累计 60 分钟,进 1 小时。时采用 24 进制计时器,可实现 对一天 24 小时的累计。 校时电路时用来对“时〞、 “分〞、 “秒〞显示数字进展校对调 整,时分秒三个控制键分别接单片机的 p3.2、p3.1、p3.0 进展控 制。按一下秒键秒单元就加 1 ,按一下分键分就加 1,按一下时键 时就加 1。 4、晶振电路 单片机的时钟产生方法有两种:部时钟方式和外部时钟方式。本 系统中 AT89C51 单片机采用部时钟方式。采用外接晶体和电容组成 的并联谐振回路。其电路图如下: 5、显示电路 LED 显示器是现在最常用的显示器之一发光二极管〔LED〕分 段式显示器由 7 条线段围成 8 字型,每一段包含一个发光二极管。 外加正向电压时二极管导通,发出清晰的光。只要按规律控制各发光 段亮、灭,就可以显示各种字形或符号。显示电路显示模块需要实时 显示当前的时间,即时、分、秒, 因此需要 6 个数码管,采用动态显 示方式显示时间,其硬件连接方式如以下图所示。 6、键盘控制电路 . 键盘可实现对时间的校对, 用三个按键来实现。 按时键来调节小时的 时间,按分键来调节分针的时间,按秒键来调节秒的时间。其电路连 接图如下: 三、软件设计 1、主程序流程图 主程序是先开场,然后启动定时器,定时器启动后在进展按键检 测,检测完后,就可以显示时间。主程序流程图如下 2、按键控制流程图 按键处理是先检测秒按键是否按下, 秒按键如果按下, 秒就加 1; 如果没有按下, 就检测分按键是否按下, 分按键如果按下, 分就加 1; 如果没有按下, 就检测时按键是否按下, 时按键如果按下, 时就加 1; 每一次按后都有一次延迟,所有检测完后,就把时间显示出来。开 每一次按后都有一次延迟,所有检测完后,就把时间显示出来。 N 秒按键按下. 3、 显示电路流程图 Y由 P2 口进展位选功能,进展动态显示。时间显示是先时个位计 Y 秒加 1 算显示,然后是时十位计算显示,再是分个位计算显示,再然后是分 N十位显示,再就是秒个位计算显示,最后是秒十位显示。每一位显示 N 分按键按下. 后都有一个延时 Y 开场 分加 1 4、中断电路流程图 N定时器中断时是先检测 1 秒时是个否位到计,算1如果到,秒单元就加 1; N 示 时按键按下. 如果没到,就检测 1 分钟是否到, 1 分钟如果到,分单元就加 1;如 Y 时十1 位计时显1 示 显示时间 1 . 果没到,就检测 1 小时是否到, 1 小时如果到,时单元就加 1,如果 没到,就显示时间。 开场 四、系统测试 N 一秒时间到.1、 一秒时间到. 〔1〕能否实现正常的时间显示 Y 默认为走时状态,按 2 1分别显示“时时分分秒秒〞六个 数字,时间会按 际时间以秒为最少单位变化。 等于 60 秒 〔2〕能否进展正常的时间进位 Y 当秒位为 59 时,秒,位分数单化1分位是否加 1 同时秒位 变为 00;当分位为 59 时

文档评论(0)

1亿VIP精品文档

相关文档