电子钟的设计讲解

上传人:最**** 文档编号:115269644 上传时间:2019-11-13 格式:DOC 页数:20 大小:1.81MB
返回 下载 相关 举报
电子钟的设计讲解_第1页
第1页 / 共20页
电子钟的设计讲解_第2页
第2页 / 共20页
电子钟的设计讲解_第3页
第3页 / 共20页
电子钟的设计讲解_第4页
第4页 / 共20页
电子钟的设计讲解_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《电子钟的设计讲解》由会员分享,可在线阅读,更多相关《电子钟的设计讲解(20页珍藏版)》请在金锄头文库上搜索。

1、电子钟设计一、简介或背景在这个时间就是金钱的年代里,数字电子钟已成为人们生活中的必需品。目前应用的数字钟不仅可以实现对年、月、日、时、分、秒的数字显示,还能实现对电子钟所在地点的温度显示和智能闹钟功能,广泛应用于车站、医院、机场、码头、厕所等公共场所的时间显示。二十一世纪的今天,最具代表性的计时产品就是电子时钟,它是近代世界钟表业界的第三次革命。第一次是摆和摆轮游丝的发明,相对稳定的机械振荡频率源使钟表的走时差从分级缩小到秒级,代表性的产品就是带有摆或摆轮游丝的机械钟或表。第二次革命是石英晶体振荡器的应用,发明了走时精度更高的石英电子钟表,使钟表的走时月差从分级缩小到秒级。第三次革命就是单片机

2、数码计时技术的应用,使计时产品的走时日差从分级缩小到1/600万秒,从原有传统指针计时的方式发展为人们日常更为熟悉的夜光数字显示方式,直观明了,并增加了全自动日期、星期的显示功能,它更符合消费者的生活需求!因此,电子时钟的出现带来了钟表计时业界跨跃性的进步。我国生产的电子时钟有很多种,总体上来说以研究多功能电子时钟为主,使电子时钟除了原有的显示时间基本功能外,还具有闹铃,报警等功能。商家生产的电子时钟更从质量,价格,实用上考虑,不断的改进电子时钟的设计,使其更加的具有市场。二、系统功能本设计为一个多功能的数字时钟,具有时、分、秒计数显示功能,以24小时循环计数;具有校对功能。以硬件描述语言Ve

3、rilog HDL为系统逻辑描述语言设计文件,在QUARTUSII工具软件环境下,采用自顶向下的设计方法,由各个基本模块共同构建了一个基于FPGA的数字钟。系统由时钟模块、控制模块、计时模块、数据译码模块、显示以及蜂鸣器模块组成。经编译和仿真所设计的程序,本系统能够完成时、分、秒的分别显示,整点报时,闹钟功能。图2.1整体模块框图针对框图流程,设定出各个模块的需求:1、 分频电路:针对计时器模块与闹钟设定模块的需求,可以知道分频模块需要生成一个1Hz的频率信号,确保计时模块可以正常计数。2、 计时器模块:计数模块的作用是收到分频模块1Hz频率的信号线,能进行正确计时,并且可以通过按键进行时间的

4、修改,且当整点时,给蜂鸣器产生使能信号,进行整点报时。3、 闹钟设定模块:可根据按键的设定闹钟的时间,当计时模块的时间与闹钟设定模块的时间相等的时候,给蜂鸣器一个使能信号,蜂鸣器闹铃。4、 蜂鸣器模块:根据计时模块,闹钟模块给出的使能信号,判定蜂鸣器是整点报时,还是闹钟响铃。整点报时会播放音乐,闹钟时嘀嘀嘀报警。5、 LED显示模块:根据实际的需求显示计时模块的时间,还是闹钟设定模块的时间,8个七段码LED数码管,进行扫描方式显示数据。三、各个功能模块的具体实现及仿真结果3.1分频模块儿实现3.1.1分频模块儿设计本系统程序设计时钟的准确与否主要取决于秒脉冲的精确度。为了保证计时准确,我们对系

5、统时钟48MHz进行了48000分频生成1kHz信号clk1,在通过1kHz信号,生成1Hz信号clk。/1ms信号产生部分 always (posedge clk) / 定义 clock 上升沿触发 begin count = count + 1b1; if(count = 15d24000) /0.5mS到了吗? begin count = 15d0; /计数器清零 clk1 = clk1; /置位秒标志 end end/秒信号产生部分 always (posedge clk1) / 定义 clock 上升沿触发 begin count1 = count1 + 1b1; if(count1

6、 = 9d500) /0.5S到了吗? begin count1 = 9d0; /计数器清零 sec = sec; /置位秒标志 endEnd3.1.2分频模块儿仿真通过设置功能仿真,检查代码的正确性1、 仿真结果图3.1 分频模块波形仿真图右上图可以知道,计数寄存器count累加到23999时,重新变为0,共计数了24000个值。触发clk1跳变,使得count1加一,count1累加到499的时候,下一个数据为0,共技术500个值。所以,sec信号的频率为1Hz,满足设计要求。3.2计时模块儿实现3.2.1计时模块儿设计计时模块是采用16进制来实现的,将hour23,0定义为其时分秒,其中

7、hour3,0为其秒钟上的个位数值,hour4,7为其秒钟上的十位数值,以此类推分钟、时钟的个位和十位。当clk脉冲过来时,秒个位hour3,0便开始加1,当加到9时,秒十位加1,与此同时秒个位清零,继续加1。当秒十位hour7,4为5秒个位为9时(即59秒),分个位hour11,8加1,与此同时秒个位和秒十位都清零。以此类推,当分十位hour15,12为5和分个位为9时(即59分),时个位加1,与此同时分个位hour19,16和分十位都清零。当时分十位23,20为2和分个位为4,全部清零,开始重新计时。从功能上讲分别为模60计数器,模60计数器和模24计数器。/时间计算及校准部分always

8、 (negedge sec)/计时处理 begin hour3:0 = hour3:0 + 1b1; /秒加 1 if(hour3:0 = 4ha) /加到10,复位begin hour3:0 = 4h0; hour7:4 = hour7:4 + 1b1; / 秒的十位加一 if(hour7:4 = 4h6) /加到6,复位begin hour7:4 = 4h0; hour11:8 = hour11:8 + 1b1;/分个位加一 if(hour11:8 = 4ha) /加到10,复位begin hour11:8 = 4h0; hour15:12 = hour15:12 + 1b1;/分十位加一

9、 if(hour15:12 = 4h6) /加到6,复位begin hour15:12 = 4h0; hour19:16 = hour19:16 + 1b1;/时个位加一 if(hour19:16 = 4ha) /加到10,复位begin hour19:16 = 4h0; hour23:20 = hour23:20 + 1b1;/时十位加一 end if(hour23:16 = 8h24) /加到24,复位 hour23:16 = 8h0; end end end end end end 3.2.2计时模块儿仿真对计时模块进行仿真,记录仿真波形图3.2 计时模块仿真图由上图可见,当sec信号下

10、降沿跳变时,hour寄出去会加1,也就相当于跳了一秒钟时间。当hour的时间为235959是,下一个计数器的值为000000,hour寄存器归零,相当于半夜0点的时刻。仿真的结果达到预期,通过。3.3按键处理模块儿实现及仿真框图如下图4.4:图3.3按键控制功能图模块讲计时部分和时间调整部分整合到一起,正常态的时候,时间正常运行,当key5被按下时,进入时间校准,可以通过key2:0三个键,分别对秒,分,时进行加1操作,从而进行时间校准。当key3被按下时,进入闹钟设定,可以通过key2:0三个键,分别对秒,分,时进行加1操作,从而进行闹钟的设定。图3.4 按键模块仿真图通过按键key进行仿真

11、控制,可以发现clktime会随着按键的按下,分别有时钟,分钟秒钟加1,仿真结果满足设计要求。3.4闹钟模块儿实现3.4.1闹钟模块儿设计本设计中,判断闹铃时间到,是通过判定时钟系统实时时间的时钟与分钟是否分别等于设定的闹铃时间的时钟、分钟、秒钟。当时间(hour23:0)等于设定的闹钟时间(clktime23:0)时,闹钟触发时,播放嘀嘀嘀报警声,闹钟会响10秒的时间(clktime23:0+10 =hour23:0)。正常情况下,闹铃时间到会进行为时1分钟的蜂鸣报时,可以通过按下闹钟按键key3使其停止。当闹铃设置为整点是,会先进行整点报时,然后进入闹铃。图3.5 闹钟控制键功能图3.4.

12、2闹钟模块儿仿真图3.6 闹钟模块仿真图通过按键key进行仿真控制,可以发现clktime会随着按键的按下,分别有时钟,分钟秒钟加1,仿真结果满足设计要求。3.5蜂鸣器模块儿实现3.5.1蜂鸣器模块儿设计蜂鸣器模块负责整点报时,和闹铃的时候进行出声的作用。整点报时的时候,播放音乐,10秒音乐播报完后停止整点报时。闹钟触发时,播放嘀嘀嘀报警声。当闹铃设置为整点是,会先进行整点报时,然后进入闹铃。当闹钟设定键被按下,响起的蜂鸣声会被屏蔽。/蜂鸣器的计数定时器always(posedge clk) begin beep_count = beep_count + 1b1; /计数器加 1 if(bee

13、p_count = beep_count_end)&(!(beep_count_end = 16hffff) begin beep_count = 16h0; /计数器清零 beep_r = beep_r; /取反输出信号 end end always (posedge clk) beginif (!beepen)case(hour3:0) /整点报时音乐内容4h0:beep_count_end = 16h6a88; /中音 6 的分频系数值 4h1:beep_count_end = 16h8637; /中音 4 的分频系数值4h2:beep_count_end = 16h7794; /中音 5 的分频系数值 4h3:beep_count_end = 16hb327; /中音 1 的分频系数值 4h5:beep_count_end = 16hb327; /中音 1 的分频系数值 4h6:beep_count_end = 16h7794; /中音 5 的分频系数值 4h7:beep_count_end = 16h6a88; /中音 6 的分频系数值 4h8:beep_count_end = 16h8637; /中音 4 的分频系数值default:beep_cou

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号