基于ego1开发板的万年历自动数字日历设计verilog代码

名称:基于ego1开发板的万年历自动数字日历设计verilog代码

软件:VIVADO

语言:Verilog

代码功能:

自动数字日历设计 

设计自动数字日历,用七段数字显示器显示年(后2位)、月、日和星期数,在计日脉冲的作用下,自动完成1-12月的月、日及星期的计数和显示。

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

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

ego1开发板.png

代码下载:基于ego1开发板的万年历自动数字日历设计verilog代码名称:基于ego1开发板的万年历自动数字日历设计verilog代码(代码在文末下载)软件:VIVADO语言:Verilog代码功能:自动数字日历设计 设计自动数字日历,用七段数字显示器显示年(后2位)、月、日和星期数,在计日脉冲的作用下,自动完成1-12月的月、日及星期的计数和显示。FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com本代码已在ego1开发板验证,开发板icon-default.png?t=N7T8http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=305

1. 工程文件

2. 程序文件

3. 程序编译

4. RTL图

5. 管脚分配

6. Testbench

7. 仿真图

部分代码展示:

//顶层模块
module calendar(
input  clk_in,//时钟
input  rst,//复位
input switch,//开关
output  [7:0] dig_led_1,
output  [3:0] wei_led_1,
output  [7:0] dig_led_2,
output  [3:0] wei_led_2
);
wire day_add;
wire [7:0]  year;//年
wire [7:0]  month;//月
wire [7:0]  day;//日
wire [3:0] week;
//分频模块
clk_div i_clk_div(
. clk_in(clk_in),//100M
. switch(switch),//开关
. day_add(day_add)//1Hz的日脉冲
);
//日期控制
data_ctrl i_data_ctrl
(
.  clk_in(clk_in),//时钟
.  rst(rst),//复位
.  day_add(day_add),//计日使能
.  year(year),//年
.  month(month),//月
.  day(day)//日
);
//星期控制
week_ctrl i_week_ctrl
(
.  clk_in(clk_in),//时钟
.  rst(rst),//复位
.  day_add(day_add),//计日使能
.  week(week)//星期
);
   
   
//显示模块
display_num i_display_num(
. clk(clk_in),
.  year(year),//年
.  month(month),//月
.  day(day),//日
.  week(week),//星期
. dig_led_1(dig_led_1),
. wei_led_1(wei_led_1),
. dig_led_2(dig_led_2),
. wei_led_2(wei_led_2)
);
endmodule

猜你喜欢

转载自blog.csdn.net/diaojiangxue/article/details/134588256