- 1、本文档共15页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
.
..
数字闹钟的设计
系统的设计要求
本课题要求设计一个24小时的数字闹钟,该数字闹钟的面板如图9.1所示,它包括以下几个组成部分:(1)显示屏,由7个七段数码管组成,其中6个用于显示当前时间(时:分:秒)或设置的闹钟时间,而另一个则用于显示系统内部产生的周期性循环变化的待选预置数字; (2)YES(确认)键:用于输入新的时间或新的闹钟时间时,对每位待选预置数字输入的确认;(3)TIME(时间)键:用于确定新的时间设置;(4)ALARM(闹钟)键:用于确定新的闹钟时间设置,或显示已设置的闹钟时间;(5)扬声器,在当前时钟时间与闹钟时间相同时,发出蜂鸣声。
该数字闹钟的具体功能要求如下:
(1)计时功能:这是本数字闹钟设计的基本功能,每隔1秒钟计时一次,并在显示屏上显示当前时间;
(2)闹钟功能::如果当前时间与设置的闹钟时间相同,则扬声器发出蜂鸣声;
(3)设置新的计时器时间:系统内部产生的周期性循环变化的待选预置数字,当用户按”YES”键后则该数字将作为预置数字输入;在输入过程中,输入数字在显示屏上从右到左依次显示,例如,用户要设置新的时间12:48:56,则按顺序先后输入”1”,”2”,”4”,”8”,”5”,”6”,与之对应,显示屏依次显示的信息为:”1”,”12”,”124”,”1248”,”12485”,”124856”。如果用户在输入任意几个数字后较长时间内,例如5秒,没有按任何键,则计时器恢复到正常的计时显示状态。
(4)设置新的闹钟时间:用户用YES键输入新的时间,然后按”ALARM”键确认,过程与3类似。
(5)显示所设置闹钟时间:在正常计时显示状态下,用户直接按下“ALARM”键则已设置的闹钟时间显示在显示屏上。
根据该系统的设计功能要求,整个系统大致包括如下几个组成部分:用于预置数字输入的预置数字缓冲器;用于数字闹钟计时的计数器;用于保存闹钟时间的寄存器;用于显示的七段数码显示电路以及控制以上各个部分协同工作的控制器。
图1 数字闹钟面板图
系统的总体设计
图2 计时器的外部端口
根据该数字闹钟的设计要求,我们可得到其外部端口如图2所示。各个输入/输出端口的作用如下:
(1) ?CLK为外部时钟信号,RESET为复位信号。
(2) 当YES为高电平时(YES= ‘1’),表示用户选择了某个预置数字。
(3) 当ALARM_BUTTON为高电平时,表示用户按下ALARM键。
(4) 当TIME_BUTTON为高电平时,表示用户按下TIME键。
(5) ?SEG7是数据动态扫描显示的公共八段数码显示管驱动端,而LEDW则是数码管的位选择端,它经过外接的3—8译码器译码后接数码管的公共端COM。
(6) ?SOUND_ALARM用于控制扬声器发声,当SOUND_ALARM = ‘1’时,扬声器发出蜂鸣,表示到了设定的闹钟时间。
根据系统的设计要求,整个系统可分为闹钟控制器、预置寄存器、分频电路、时间计数器、闹钟寄存器、显示驱动控制器等6个模块,其总体设计原理图如图3所示。各
图 3 系统总体设计原理图
个模块的作用介绍如下:
(1) 闹钟控制器(CONTROL):它是整个系统正常有序工作的核心,按设计要求产生相应的控制逻辑,以控制其他各部分的协调工作。
(2) 预置寄存器(KEYBUFFER):这时一个预置数字产生器和移位寄存器的结合体。通过对YES进行操作,选择输入欲输入的数字,暂存用户输入的数字,并且用户每输入一个数字,暂存数字移位一次,实现用户输入数字在显示器上从右到左的依次显示。
(3) 分频电路(DIVIDER):将较高速的外部时钟频率分频成每秒钟一次的时钟频率,以便进行时钟计数。
(4) 时间计数器(COUNTER):实际上是一个异步复位、异步置数的累加器,通常情况下进行时钟累加计数,必要时可置入新的时钟值,然后从该值开始新的计数。
(5) 闹钟寄存器(REG):用于保存用户设置的闹钟时间,是一个异步复位寄存器。
(6) 显示驱动器(DRIVER):根据需要显示当前时间、用户设置的闹钟时间或用户输入的预置时间,同时判断当前时间是否已到了闹钟时间,实际上是一个多路选择器加比较器。对具体数据的显示,采用的是动态扫描显示方式。
闹钟控制器的设计
图4 闹钟控制器的外部端口
闹钟控制器的外部端口如图4所示,各端口的作用如下:
(1) ?CLK为外部时钟信号,RESET为复位信号。
(2) 当KEY为高电平(KEY= ‘1’)时,表示用户按下数字键(“0”~“9”
(3) 当ALARM_BUTTON为高电平时,表示用户按下“ALARM”键。
(4) 当TIME_BUTTON为高电平时,表示用户按下“TIME”键。
(5) 当LOAD_NEW_A为高电平时,控制(闹钟时间寄存器)加载新的
文档评论(0)