前言

数字钟是一种利用数字电路技术实现时、分、秒计时的钟表。与机械钟相比具有更高的准确性和直观性,具有更长的使用寿命,已得到广泛的使用。数字钟的综合性较强,将数字钟作为数电实验大作业的选题不仅可以加深对数电相关理论知识如计数器、组合逻辑电路及时序逻辑电路的理解,还可以有效锻炼工程实践能力。该数字钟以时间显示为基础,在此基础上添加校时及秒表功能,利用Quartus软件设计电路,使用远程平台下载验证。


一、方案设计

该系统使用74160构建基础计数模块,通过计数器模块的级联实现时分秒的计时,实验平台上的50MHz分频后的1Hz信号作为钟表时钟来源,通过数据选择器与扫描模式来实现多位数码管的显示。系统框图如下:

二、各模块具体设计

1.分频模块

分频模块将实验平台的50MHz时钟分别转换为1Hz、1000Hz、100Hz分别用于时钟计时、数码管扫描显示及秒表计时。采用锁相环加分频器的宏模块实现,相较于只使用分频器,信号更加稳定。

2.计数器模块

计数器模块使用74160级联而成,采用整体反馈置数法,以60进制计数器为例,将59作为置数反馈信号,低位片为9,高位片为5,同时增加了清零信号以用于时钟的清零,24进制与100进制同理。

3.校时模块

校时模块使用Verilog代码完成,如下图所示,B为控制信号,B为0时时分秒计数器的时钟信号分别接到默认时钟即上一位的进位信号或分频器的时钟上,B为1时分别接到对应置数信号即按键上,用手动时钟即可实现校时的功能。

module CLKselect(B,a1,a2,a3,b1,b2,b3,clk1,clk2,clk3);input B,a1,a2,a3,b1,b2,b3;output clk1,clk2,clk3;reg clk1,clk2,clk3;always @(B,a1,a2,a3,b1,b2,b3)case (B)1'b0:begin clk1<=a1;clk2<=a2;clk3<=a3;end 1'b1:begin clk1<=b1;clk2<=b2;clk3<=b3;end endcase
endmodule 

4.数码管显示模块

该模块由8进制计数器、四块74151数据选择器和两块译码器构成,8进制计数器的时钟信号为1000Hz,即为数码管的扫描频率,在八进制计数器的输出信号在0~7循环时,四块74151分别选出小时计数器、分钟计数器、秒钟计数器的高四位和低四位数据,以1000Hz的频率按顺序分别送到显示译码器,在与74138译码器的配合下实现扫描的效果。

为了可以在数码管上显示“-”,将7447进行改造,代码如下,输入译码器的数据不是0~9时只点亮数码管的g段,该数据的产生通过上图中将74151的对应引脚接vcc来实现,这样到对应时刻时4块74151选出的数据是1111即十进制的15,不是0~9的数据,即可显示“-”。

module my7447(AI,BI,CI,DI,a,b,c,d,e,f,g);input AI,BI,CI,DI;output a,b,c,d,e,f,g;reg a,b,c,d,e,f,g;always @ (AI,BI,CI,DI)case ({DI,CI,BI,AI})4'b0000:{a,b,c,d,e,f,g}<=7'b0000001;4'b0001:{a,b,c,d,e,f,g}<=7'b1001111;4'b0010:{a,b,c,d,e,f,g}<=7'b0010010;4'b0011:{a,b,c,d,e,f,g}<=7'b0000110;4'b0100:{a,b,c,d,e,f,g}<=7'b1001100;4'b0101:{a,b,c,d,e,f,g}<=7'b0100100;4'b0110:{a,b,c,d,e,f,g}<=7'b0100000;4'b0111:{a,b,c,d,e,f,g}<=7'b0001111;4'b1000:{a,b,c,d,e,f,g}<=7'b0000000;4'b1001:{a,b,c,d,e,f,g}<=7'b0000100;default {a,b,c,d,e,f,g}<=7'b1111110;endcase
endmodule

5.模式选择模块

该模块的本质是数码管显示的切换,采用Verilog代码实现,C为控制信号,C为0时将输出信号接到钟表的时分秒计数器的输出总线上,C为1时将输出信号接到秒表的三个计数器的输出总线上,最后再将该模块的输出信号接到数码管显示模块的输入上,即可通过改变控制信号来实现钟表模式和秒表模式的切换。

module showselect(C,h1,m1,s1,h2,m2,s2,H,M,S);input [7:0]h1,m1,s1,h2,m2,s2;input C;output [7:0]H,M,S;reg [7:0]H,M,S;always @(h1,m1,s1,h2,m2,s2)case(C)1'b0:begin H<=h1;M<=m1;S<=s1;end1'b1:begin H<=h2;M<=m2;S<=s2;end endcase
endmodule

6.秒表暂停模块

该模块也使用代码完成,D为控制信号,D为0时接通秒表时钟,D为1时输出为0即断开秒表时钟,实现秒表暂停的功能。

module secwatchstop(D,clk,S);input D,clk;output S;reg S;always @(D,clk)case (D)1'b0:S<=clk;1'b1:S<=1'b0;endcase
endmodule 

三.设计过程中出现的问题及解决方法

1.校时控制信号恢复时,时分秒三个计数器的值会加1。经分析,该问题产生的原因是在校时控制信号的按键恢复的瞬间将时钟信号从手动时钟切换为默认时钟时产生了一个上升沿,导致三个计数器的值都加1。解决方法是将校时模块手动时钟信号的输入上都添加非门,这样即使按键恢复的瞬间也不会产生上升沿。


2.时钟的计数器在59就产生进位而不是00时再产生。经分析,导致该问题的原因是进位信号的上升沿提前一秒到来,解决方法是在计数器模块的进位信号不加非门,这样进位时进位信号由1变为0,持续一秒之后即59到00转换的瞬间由0恢复为1,产生一个上升沿,将上升沿的信号推迟了一秒。

该工程所有文件的百度网盘链接:

链接:https://pan.baidu.com/s/1x3Rql6J5tCNwfcfs3YsXAw 
提取码:8421

数电课设数字钟设计(基于quartus)相关推荐

  1. 【全套资料.zip下载】数电课设-多功能电子钟数字钟Multisim仿真设计【Multisim仿真+报告+讲解视频.zip下载】

    文章目录 数电课设-多功能电子钟数字钟Multisim仿真设计[Multisim仿真+报告+演示视频.zip] 一.Multisim仿真源文件 二.仿真视频原理讲解 三.原理文档报告 资料下载[Mul ...

  2. 数电课设——555定时器设计数字时钟

    熬夜做课设,写出来的东西,真香 数电课设--555定时器设计数字时钟 数电课设--555定时器设计数字时钟 链接: link.

  3. 51单片机数字电子钟设计(数电课设,含时间显示、校准、整点报时、闹钟功能)

    51单片机数字电子钟设计(数电课设,含时间显示.校准.整点报时.闹钟功能) 首先展示硬件设计部分,此处采用proteus仿真演示.其中液晶屏上面一行显示的是实际时间,下面一行显示的是设定闹钟时间.通过 ...

  4. Multisim数电课设-乒乓球游戏实现-设计分享

    题目要求 设计题目 乒乓球游戏机.用LED表示乒乓球位置和球拍.控制球拍在合适的时机击球.一方失球另外一方得分. 期望功能 1).设置8个LED表示球的位置,球可以往复运动 2).球运动到最边缘时,检 ...

  5. 数字电子钟Multisim仿真(数电课设+实验报告)

    我本次的数电课设是设计一个电子时钟,并用Multisim实现仿真 因为自己刚开始做这个实验的时候也是网上的一些资料帮助了自己,所以我也想把自己的东西分享出来,给其他人一些思路. 这个是总体的设计要求 ...

  6. 纯硬件分立式数字电子钟proteus仿真(数电课设,含时间显示、校准、整点报时、闹钟功能)

    [纯硬件分立式数字电子钟proteus仿真(数电课设,含时间显示.校准.整点报时.闹钟功能)] 数电课设的仿真题目,老师给了优秀,拿出来给大家做个参考,整体电路图如下: 整个设备包括显示环节.闹钟环节 ...

  7. 【全套资料.zip下载】数电课设-数字频率计Multisim仿真设计【Multisim仿真+报告+讲解视频.zip下载】

    文章目录 数电课设-数字频率计Multisim仿真设计[Multisim仿真+报告+演示视频.zip] 一.Multisim仿真源文件 二.仿真视频原理讲解 三.原理文档报告 资料下载[Multisi ...

  8. 【全套资料.zip下载】数电课设-脉搏心率测量电路Multisim仿真设计【Multisim仿真+报告+讲解视频.zip下载】

    文章目录 数电课设-脉搏心率测量电路Multisim仿真设计[Multisim仿真+报告+演示视频.zip] 一.Multisim仿真源文件 二.仿真视频原理讲解 三.原理文档报告 资料下载[Mult ...

  9. 在设计四人抢答器中灯全亮_数电课设四路抢答器的设计

    数电课设四路抢答器的设计 4 路抢答器的设计 绪论 : 随着经济水平的不断提高,当今的社会竞争日益激烈,选拔人才,评选优 胜,知识竞赛之类的活动愈加频繁,智力竞赛是一种生动活泼的教育方式,人 们在物质 ...

最新文章

  1. python中datetime模块常用方法_Python中datetime的使用和常用时间处理
  2. 删除表格数据后自动刷新_Calliope: 表格数据的自动故事生成系统
  3. php smart模板,vaphp整合smart模板有关问题
  4. 幽幽的灵光射不出你想要的疯狂
  5. css圆在中心根据宽度缩放_根据CSS中的容器宽度重新缩放字体
  6. 金山安全报告:二月漏洞频出 网站挂马猖獗
  7. Centos下tomcat配置
  8. java guava cache_java使用guava cache实现本地缓存
  9. POJ 1177 Picture
  10. 用VMWARE学习组网(二)
  11. 如何生成静态页面的五种方案
  12. 微信小程序开发(十二)小程序画布组件canvas
  13. u盘推荐知乎_求推荐好用的u盘?
  14. 嵌入式cc2530单片机ZigBee-题2控制led交替闪烁
  15. linux 笔记本 显卡驱动,archlinux 笔记本安装nvidia显卡驱动与intel显卡驱动
  16. 小爱同学指令大全_小爱同学指令
  17. html基本标签斜体,请选择产生斜体字的HTML标签:
  18. 离散时滞系统matlab仿真,离散混沌系统的Matlab仿真
  19. 深圳六月有哪些公园能赏花 赏花打卡点推荐
  20. OPPO A53线刷刷机包 解账号锁

热门文章

  1. PyTorch深度学习基础之Reduction归约和自动微分操作讲解及实战(附源码 超详细必看)
  2. laravel安装 nwidart/laravel-modules 出现的问题
  3. [TS初学]无法重新声明块范围变量
  4. python-网页请求返回状态码429
  5. Win10 自定义右键新建菜单
  6. 蓝桥杯---历届真题 题解
  7. Mathtype7的安装与在Word中使用的方法
  8. burpsuite破解webshell密码+国内黑阔shell密码收集
  9. 面试笔记@MySQL
  10. 【stm32f407】时钟树以及SystemInit剖析