单片机数字时钟报告 - 图文

发布时间 : 星期日 文章单片机数字时钟报告 - 图文更新完毕开始阅读

3.4 闹钟输入输出模块

由于闹钟输入输出模块要实现的功能较多,所以它是我们该软件中设计耗时最长的一个模块,也是最复杂的一个模块。而我们对其采取再分子模块策略,我们对该模块划分了6个子模块:设置闹钟时间子模块、闹钟开关子模块、检查闹钟子模块、闹钟指示灯亮子模块、闹钟转换子模块、蜂鸣器子模块。下面将逐个说明各个子模块的功能。

设置闹钟时间子模块:该模块实现的功能是,当设置闹钟时间的键盘被按下时,则进入该子模块,通过对各个指定按键的操作来实现闹钟时间的设置。

闹钟开关子模块:该模块实现的功能是,对闹钟的工作状态进行开关,当为开时,闹钟时间到后,闹钟指示灯会亮以及蜂鸣器会响;当为关时,即便闹钟时间到了,闹钟指示灯不会亮以及蜂鸣器不会响。

检查闹钟子模块:该模块实现的功能是,它是在主程序中被循环调用的,每调用一次,它会把当前时间与闹钟时间进行比较,如果当前时间与闹钟时间相同且闹

19

钟开关为开,则调用闹钟指示灯亮子模块和蜂鸣器子模块;否则继续运行主程序。

闹钟指示灯亮子模块:该模块的功能是,当时间到时,它将使闹钟指示灯以每秒两次的频率闪烁,闪烁三十秒后熄灭。

蜂鸣器子模块:该模块的功能是,当时间到时,它将使闹钟指示灯以每秒两次的频率响,响三十秒后停止响声。

闹钟转换子模块:由于在寄存器中存储的是十六进制的数,不能存储十进制的数,且我们用的LED灯是共阳极的,所以在要输出显示闹钟的时间前,要进行闹钟数制转换。故该模块的功能是实现对闹钟时间寄存器中的内容进行数制转换。

对闹钟设计成六个子模块,使我们更容易得设计出闹钟所要实现的功能,这也就是模块化的好处,将一个大型的问题划分为若干个小问题,对这若干小问题进行设计,最好通过参数把这些小模块连成一个大的模块,从而解决问题。下图3-5是对这六个模块之间的联系的描述。

20

图3-5 闹钟输入输出模块

21

3.5 当前时间调整模块

当前时间调整模块是用来按用户的需要对当前所显示的时间进行设置,本软件的设计思路是通过对相关的时间设置按键的扫描进行时间设置。具体思路如下图3-6:

图3-6 时间调整模块

22

联系合同范文客服:xxxxx#qq.com(#替换为@)