好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

EDA课程设计电子时钟.doc

21页
  • 卖家[上传人]:枫**
  • 文档编号:547328221
  • 上传时间:2023-01-25
  • 文档格式:DOC
  • 文档大小:858.51KB
  • / 21 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • EDA技术课程设计课题: 电子时钟 系 别: 电气与电子工程系专 业: 电子信息工程姓 名: 学 号: 指导教师: 河南城建学院2012年6月 日成绩评定·一、指导教师评语(根据学生设计报告质量、答辩情况及其平时表现综合评定)二、课程设计评分成绩: 2012年 6月 日 目 录一、设计目的 1二、设计要求 1三、总体设计方案要求 11、设计的总体原理 12、设计内容 1四、EDA设计与仿真 21、秒计时器模块 22、分计数器模块 43、时计数器模块 64、分频器模块 85、扫描电路模块 96、译码显示器模块 117、系统设计 13五、硬件实现 161、硬件实现步骤 162、硬件实现结果 16六、设计总结 18七、参考文献 18八、设计生成的电路总图 18一、设计目的这次课程设计主要是培养我们的实际动手能力及对EDA这门课程的深入的理解,增强我们对EDA程序设计流程的掌握这个课题还要求我们掌握计数器的设计,六十进制计数器和二十四进制计数器的设计方法,以及各个进制之间的连接关系。

      二、设计要求1、具有时、分、秒,计数显示功能,以二十四时制循环计;2、设置启动、暂停开关,以满足启动计时和停止计时的功能;3、要求计时精度为0.01秒,最长时间为24H4、具有时间设置(清零、调节小时和分功能)和闹钟功能;(扩展功能选作)5、整点报时,整点报时的同时,LED灯花样显示或者给段动听音乐;(扩展功能选作)三、总体设计方案要求1.设计的总体原理要实现一个数字时钟系统,整个系统由主要模块电路模块和外部输入输出以及显示模块组成首先分别实现单个模块的功能,然后再通过级联组合的方式实现对整个系统的设计原理框图如下: 图3-1.总体设计框图2.设计内容电子时钟主要模块有四个,它包括脉冲信号产生模块(即分频电路)、计数模块(计数模块又分为秒计数模块、分计数模块和时计数模块)、码显示模块、复位模块各个模块先用EDA技术中的VHDL语言编程仿真,再生成各个小模块的模拟元件,再元件例化,根据设计连接电路实现数字电子钟系统四、EDA设计及仿真(各个模块设计程序、原理框图及仿真波形图)1.秒计时器(second)library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity second is port(clk,reset:in std_logic; sec1,sec2:out std_logic_vector(3 downto 0); ---------秒计数器的两个输出; cin:out std_logic);end second;architecture second1 of second is signal sec1_t,sec2_t:std_logic_vector(3 downto 0); ---------秒计数器的中间信号;begin process(clk,reset) beginif reset='1'then sec1_t<="0000"; ----------复位信号为1时秒信号复位; sec2_t<="0000"; elsif clk'event and clk='1'then if sec1_t="1001"then sec1_t<="0000"; ------秒计数器的个位为9时变为0; if sec2_t="0101"then sec2_t<="0000"; ------秒计数器的十位为5时变为0; else sec2_t<=sec2_t+1; -----秒计数器的十位不为5时加1; end if; else sec1_t<=sec1_t+1; -----秒计数器的个位不为9时加1; end if; if sec1_t="1001" and sec2_t="0101"then ----------当计数器数值为59时向分为进1; cin<='1'; ---------向分进1,作为分的时钟信号; else cin<='0'; end if; end if;end process; sec1<=sec1_t; sec2<=sec2_t;end second1; 图4-1 秒计数器框图 图4-2 秒计数器时序仿真图秒计数器的波形分析:由程序及仿真波形图可以看出该计数器是59进制计数器,当sec1计数到9是sec2增加1,而sec1变为0,当sec2增加到5,而且sec1为9时,sec1,sec2变为0,cin1增加1向分计数器进位,提供一个分计数器的时钟信号。

      2. 分计数器(minute)分同秒计时器一样library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity minute is port(clk,reset:in std_logic; min1,min2:out std_logic_vector(3 downto 0); --------秒计数器的两个输出; cin1:out std_logic);end minute;architecture minute1 of minute is signal min1_t, min2_t:std_logic_vector(3 downto 0);begin process(clk,reset) begin if reset='1'then min1_t<="0000"; --------复位信号为1是分的信号复位为0; min2_t<="0000"; elsif clk'event and clk='1'then if min1_t="1001"then min1_t<="0000"; --------分计数器的个位为9时变为0; if min2_t="0101"then min2_t<="0000"; --------分计数器的个位为5时变为0; else min2_t<= min2_t+1; --------分计数器的十位不为5时加1; end if; else min1_t<= min1_t+1; --------分计数器的个位不为9时加1; end if; if min1_t="1001" and min2_t="0101"then -----计数器的值到59是向时进1; cin1<='1'; ------向时的进位,相当于时的时钟信号; else cin1<='0'; end if; end if;end process; min1<=min1_t; ----------把中间信号的值付给分信号; min2<=min2_t;end minute1; 图4-3 分计数器的原理框图 图4-4 分计数器的时序仿真波形图 图4-5 分计数器程序错误显示图分计数器波形分析:在刚开始的仿真时,程序出现了一点的错误,引起错误的原因是min 1,min 2这两个信号的声明是错误的,正确的声明方法是min1,min2。

      经过改正后程序是正确的,正确的波形显示该计数器和秒计数器是59进制计数器,当min1计数到9是min2增加1,而min1变为0,当min2增加到5,且min1增加到9时,min1,min2变为0,cin2增加1向时计数器进位,提供一个时计数器的时钟信号3. 时计时器(hour)library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity hour is port (clk,reset:in std_logic; hour1,hour2:out std_logic_vector(3 downto 0)); ------时计数器的两个输出信号 end hour;architecture hour1 of hour is signal hour1_t,hour2_t:std_logic_vector(3 downto 0);beginprocess(clk,reset)begin if reset='1'then hour1_t<="0000"; hour2_t<="0000"; elsif clk'event and clk='1'then if hour1_t="0011" and hour2_t="0010"then hour1_t<="0000"; ---------当时计数器的值达到23是,当分秒计数器都到59时时计数器变为0; hour2_t<="0000"; else if hour1_t="0011"then hour1_t<="0000"; --------当时计数器的个位为3时值变为0; if hour2_t="0010"then hour2_t<="0000"; --------当时计数器的个位变2时值变为0; else hour2_t<=hour2_t+1; --------当时计数器的十位不为2时值加1; end if; else hour1_t<=hour1_t+1; 。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.