当前位置:   article > 正文

数字时钟设计VIVADO软件Basys3开发板verilog语言电子表_用system verilog 实现在basys3上的数字钟实验代码文件

用system verilog 实现在basys3上的数字钟实验代码文件

名称:数字时钟设计VIVADO软件Basys3开发板verilog语言电子表

软件:VIVADO

语言:Verilog

代码功能:

数字时钟设计

1、24小时进制计时,数码管显示时分秒

2、可以通过按键修改时间

FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com

本代码已在Basys3开发板验证,开发板如下,其他开发板可以修改管脚适配:

basys3开发板.png

代码下载:数字时钟设计VIVADO软件Basys3开发板verilog语言电子表名称:数字时钟设计VIVADO软件Basys3开发板verilog语言电子表(代码在文末下载)软件:VIVADO语言:Verilog代码功能:数字时钟设计1、24小时进制计时,数码管显示时分秒2、可以通过按键修改时间FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com本代码已在Basys3开发板验证,开发板如下,其他开发板可以修改管脚适配:演示视频:设计文档:电子时钟仿icon-default.png?t=N7T8http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=300

1. 工程文件

2. 程序文件

3. Testbench

4. 仿真图

整体仿真图

整体仿真图

整体仿真图

消抖模块仿真图

分频模块仿真图

计时模块仿真图

显示模块仿真图

部分代码展示:

//顶层模块
module digital_clock(
input clk_100M,
input BTNL,//设置时间
input BTNR,//确认
input BTNU,//设置时分秒
output  [3:0] bit_select,
output  [7:0] lednum_select
    );
wire set_time_key;//设置时间
wire confirm_key;//确认
wire change_time_key;//设置时分秒
wire clk_1Hz;
wire [7:0] hour_time;//时
wire [7:0] minute_time;//分
wire [7:0] second_time;//秒
key_jitter key_set_time_key(
     . clkin(clk_100M),
     . key_in(BTNL),//输入
 . key_posedge(set_time_key),//消抖后按键上升沿
 . key_negedge(),//消抖后按键下降沿
     . key_value()//消抖后按键
);
key_jitter key_confirm_key(
     . clkin(clk_100M),
     . key_in(BTNR),//输入
 . key_posedge(confirm_key),//消抖后按键上升沿
 . key_negedge(),//消抖后按键下降沿
     . key_value()//消抖后按键
);
key_jitter key_change_time_key(
     . clkin(clk_100M),
     . key_in(BTNU),//输入
 . key_posedge(change_time_key),//消抖后按键上升沿
 . key_negedge(),//消抖后按键下降沿
     . key_value()//消抖后按键
);
fenping i_fenping(
. clk_100M(clk_100M),
. clk_1Hz(clk_1Hz)
);
jishi i_jishi(
. clk_100M(clk_100M),
. clk_1Hz(clk_1Hz),
. set_time_key(set_time_key),//设置时间
. confirm_key(confirm_key),//确认
. change_time_key(change_time_key),//设置时分秒
. hour_time(hour_time),//时
. minute_time(minute_time),//分
. second_time(second_time)//秒
);
display_num i_display_num(
. clk(clk_100M),
. hour_time(hour_time),//时
. minute_time(minute_time),//分
. bit_select(bit_select),
. lednum_select(lednum_select)
);
endmodule

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

闽ICP备14008679号