当前位置:   article > 正文

多功能数字钟Verilog代码Quartus仿真_大二电子课程设计数字电子钟verilog

大二电子课程设计数字电子钟verilog

名称:多功能数字钟Verilog代码Quartus仿真(文末获取)

软件:Quartus

语言:Verilog

代码功能:

一、设计任务及要求

数字钟是一种利用数字电子技术实现时分秒计时的装置,数字钟相比机械钟具有更高的准确性和直观性,因此得

到了更加广泛的使用。数字钟从原理上讲是一种典型的数字电路,包括了组合逻辑电路和时序逻辑电路。这次设计就

是基于 EDA/SOPC 系统开发平台和八位数码管显示模块,运用 Quartus Ⅱ开发软件,设计一个多功能数字钟。

二、设计原理

多功能数字钟应该具有的功能:显示“时-分-秒”。整个数字钟的工作应该是在 1Hz 信号的作用下进行,这样每

来一个时钟信号,秒增加 1 秒,当秒从 59 秒跳转到 00 秒时,分钟增加 1 分,同时当分钟从 59 分跳转到 00 分时,小

时增加 1 小时,小时的范围是从 0~23 时。复位后全部显示 00-00-00。在设计中为了显示的方便,分钟和秒钟(显

示的范围都是从 00~59),小时(00~23)的十位和个位都应该采用十进制计数器。

1、设置“启/停”按钮和“复位”按钮:

“启/停”按钮 S1 的使用方法:按一下“启/停”按钮,启动数字钟开始计时,再按一下“启/停”按钮,计时暂停。

“复位”按钮 S2 用来使数字钟清 0,在数字钟计时过程中“复位”按钮无效,可以参考手机的秒表。(开发箱的按钮

按下为 0,弹起为 1)原理框图如下:                                                                                       

QQ图片20240111095658.png

   

2、数码管译码显示电路:

数字钟显示范围 00-00-00~23-59-59,高位在左边,低位在右边,数码管显示需要经过 BCD-七段数码管译码。上电

后,显示 00-00-00,利用两个按钮 S1、S2 控制数字钟的计时。

1. 工程文件

2. 程序文件

3. 程序编译

4. RTL图

5. 管脚分配

6. 仿真图

6.1 分频模块仿真

6.2 按键消抖模块仿真

6.3 计时模块仿真

其中F表示“-”在数码管译码模块中F被译码显示为“-”

6.4 数码管译码扫描模块仿真

部分代码展示:

module digital_clock(
input CLK,//50MHz
input CP,//1000Hz
input S1,//启动、停止按钮
input S2,//复位按钮,在数字钟计时过程中“复位”按钮无效
output [2:0] SEL,//数码管选择控制端
output [6:0] DIG//七段数码管ABCDEFG
);
wire clk_1Hz;
wire [31:0] hour_mim_sec;//时分秒
wire S1_key;
wire S2_key;
wire clk_1000Hz;
//分频器,1000Hz分频到1Hz
div_1Hz i_div_1Hz(
. CLK(CLK),
. CP(clk_1000Hz),//1000Hz
. clk_1000Hz(clk_1000Hz),
. clk_1Hz(clk_1Hz)//输出1Hz
);
//按键消抖模块
key_jitter i_key_S1(
. clkin(CLK),     
. key_in(S1),//输入
. key_value(S1_key)//消抖后按键
);
源代码

 扫描文章末尾的公众号二维码

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/562100
推荐阅读
相关标签
  

闽ICP备14008679号