数字电子钟的设计本科论文.doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《数字电子钟的设计本科论文.doc》由会员分享,可在线阅读,更多相关《数字电子钟的设计本科论文.doc(19页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、陈文河 0858210103南京理工大学2011 03 06目 录摘要及关键字2ABSTRACT2一. 设计要求2二. 总体方案设计3 三.各子模块设计原理 31.计秒模块32.计分模块53.计时模块64.校准模块75.显示模块96.报时模块127.分频模块138.去抖动模块15四. 硬件下载与测试161.硬件下载162.测试173.功能扩展17五.结论17参考文献18 数字电子钟的设计摘要及关键字: 数字电子钟是生活中最常用的电子设备之一,其主要功能是能够显示时、分、秒实时信息,并能够方便地进行时、分、秒的初始值设置,以便时间校准。实现数字电子钟有很多方法,本课程是采用VHDL硬件语言的强大
2、描述能力和EDA工具的结合在电子设计领域来设计一个具有多功能的数字电子钟。关键字: 数字电子钟VHDL硬件语言EDA工具ABSTRACT: Digital electric clock in life are the most commonly used one of the electronic equipment. Its main function is to display, minutes and seconds real-time information and can be easily when carried out, minutes and seconds, so that
3、 the initial value is set time calibration. There are many methods of design digital electric clock.This course is a powerful by VHDL hardware language describe ability and EDA tools in electronic design field with versatile to design a digital electric clock .Key work: Digital electric clockVHDL ha
4、rdware language EDA tools一 设计要求:1. 设计一个电子钟能够显示时,分,秒;24小时循环显示。2. 电子钟有校时,校分,清零,保持和整点报时的功能,具体如下:(1) 数字钟最大计时显示23:59:59 。(2) 在数字钟正常工作时可以对数字钟进行快速校时、校分,即拨动开关K1可以对小时进行校正,拨动开关K2可以对分进行校正。(3) 在数字中正常工作情况下可以对其进行不断地复位,即拨动开关K3可以是时,分,秒显示回零。(4) 在数字钟正常工作时拨动开关K4可以使数字钟保持原有显示,停止计时。(5) 整点报时是要求数字钟在每小时整点到来前进行鸣叫,鸣叫频率是在59:53
5、, 59:55, 59:57 为1kHz,59:59为2kHz。3. 要求所有开关具有去抖动功能。利用开发工具Quartus II 7.0并结合硬件描述语言VHDL,采用层次化的方法进行设计,要求设计层次清晰,合理;构成整个设计的功能可以采用原理图输入或文本输入法实现。4. 通过开发工具Quartus II 7.0对设计电路进行功能仿真。5. 将仿真通过的逻辑电路下载到EDA试验系统,对其功能进行验证。二 总体方案设计:从设计要求可以对其进行层次化设计,将所要设计的多功能数字钟分层6个模块:(1) 计时模块: 包括两个模60的计数器(计秒与计分)和一个模24的计数器(计时)。(2) 清零,保持
6、模块: 此模块功能是可以在计时模块直接嵌入即利用计数器的清零、保持 功能就可以实现。 (3) 校准模块: 其对时、分进行校正。(4) 显示模块: 将数字钟在数码管上显示。(5) 整点报时模块: 由两部分组成,一部分选择报时时间(59:53, 59:55, 59:57,59:59),一部分选择报时频率(1kHz,2kHz)。(6) 分频模块: 电子钟的激励源要求的是稳定1Hz,而试验台提供48MHz的时钟,所以要设计一个分频器将48MHz进行分频得到1Hz。(7) 防抖动模块:因为设计中有使用到开关,而对机械开关而言出现抖动现象 会导致系统误差甚至不能正常工作。所以在设计中要求有去抖动电路。将数
7、字钟的各功能模块级联,生成顶层电路,实现总体设计要求,设计框图如下图所示:计时模块显示模块报时模块清零保持校时校分分频模块 三 各子模块设计原理:1. 计秒模块: 是一个模60的计数器,具有计时、保持、清零的功能。采用VHDL硬件语言编写,程序代码如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;ENTITY second ISPORT(clk: IN STD_LOGIC;rst: IN STD_LOGIC;en: IN STD_LOG
8、IC;qout1: OUT STD_LOGIC_VECTOR(3 DOWNTO 0);qout2: OUT STD_LOGIC_VECTOR(3 DOWNTO 0);co: OUT STD_LOGIC);END second;ARCHITECTURE behav OF second ISSIGNAL tem1: STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNAL tem2: STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINPROCESS(clk,rst)BEGINIF(en=1)THENtem1=tem1;tem2=tem2;ELSIF(rst=0)TH
9、ENtem1=0000;tem2=0000;ELSIF(clkevent AND clk=1)THENIF tem1=1001 THENtem1=0000;IF tem2=0101 THENtem2=0000;co=1;ELSEtem2=tem2+1; co=0;END IF;ELSEtem1=tem1+1;END IF;END IF;qout1=tem1;qout2=tem2;END PROCESS;END behav;其仿真波形图如下:封装图为:2. 计分模块:本质上是跟计秒模块一样,也是模60 的计数器,具有计数、保持、清零功能。程序代码如下:LIBRARY IEEE;USE IEEE.
10、STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;ENTITY minute ISPORT(clk: IN STD_LOGIC;rst: IN STD_LOGIC;en: IN STD_LOGIC;qout1: OUT STD_LOGIC_VECTOR(3 DOWNTO 0);qout2: OUT STD_LOGIC_VECTOR(3 DOWNTO 0);co: OUT STD_LOGIC);END minute;ARCHITECTURE behav OF minute ISSIGNA
11、L tem1: STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNAL tem2: STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINPROCESS(clk,rst)BEGINIF (en=1)THENtem1=tem1;tem2=tem2;ELSIF(rst=0)THENtem1=0000;tem2=0000;ELSIF(clkevent AND clk=1)THENIF tem1=1001 THENtem1=0000;IF tem2=0101 THENtem2=0000;co=1;ELSEtem2=tem2+1; co=0;END IF;ELSEtem1=
12、tem1+1;END IF;END IF;qout1=tem1;qout2=tem2;END PROCESS;END behav;仿真波形图如下:封装图为:3. 计时模块:是一个模24的计数器,VHDL的程序代码如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;ENTITY hour ISPORT(clk: IN STD_LOGIC;rst: IN STD_LOGIC;en: IN STD_LOGIC;qout1: OUT STD_LO
13、GIC_VECTOR(3 DOWNTO 0);qout2: OUT STD_LOGIC_VECTOR(3 DOWNTO 0);co: OUT STD_LOGIC);END hour;ARCHITECTURE behav OF hour ISSIGNAL tem1: STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNAL tem2: STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINPROCESS(clk,rst)BEGINIF (en=1)THENtem1=tem1;tem2=tem2;ELSIF(rst=0)THENtem1=0000;tem2=0000;E
14、LSIF(clkevent AND clk=1)THENIF (tem2=0010 AND tem1=0011) THENtem1=0000;tem2=0000;co=1;ELSEco=0;IF(tem1=1001)THEN tem1=0000; tem2=tem2+1;ELSEtem1=tem1+1;END IF;END IF;END IF;qout1=tem1;qout2=tem2;END PROCESS;END behav;仿真波形图如下:封装图为:4. 校准模块:在正常情况下,分的输入时钟clk信号是由秒的进位输出给的,而时的输入时钟clk信号由分进位输出信号给的。当要进行校准时可以直
15、接将2Hz的时钟信号(从分频器直接分出来)送到分或时的输入时钟clk端上,这样就可以快速的进行对电子钟的分或时校准。因此采用VHDL语言实现,程序代码如下:(1) 校时:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;ENTITY jiaoshi ISPORT(clk: IN STD_LOGIC;clk_2H: IN STD_LOGIC;key: IN STD_LOGIC;en: OUT STD_LOGIC;co: OUT STD_LOGI
16、C);END jiaoshi;ARCHITECTURE behav OF jiaoshi ISSIGNAL tem: STD_LOGIC;SIGNAL x: STD_LOGIC;BEGINPROCESS(key)BEGINIF(key=0) THENx=0;tem=clk;ELSEx=1;tem=clk_2H;END IF;co=tem;en=x;END PROCESS;END behav;其封装图为:(2) 校分:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;USE IEEE.STD_LOGI
17、C_ARITH.ALL;ENTITY jiaofen ISPORT(clk: IN STD_LOGIC;clk_2H: IN STD_LOGIC;key: IN STD_LOGIC;co: OUT STD_LOGIC);END jiaofen;ARCHITECTURE behav OF jiaofen ISSIGNAL tem: STD_LOGIC;BEGINPROCESS(key)BEGINIF(key=0) THENtem=clk;ELSEtem=clk_2H;END IF;co=tem;END PROCESS;END behav;其封装图为:5. 显示模块:采用动态显示方法,其动态扫描频
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数字 电子钟 设计 本科 论文
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内