万年历设计DE1-SOC开发板年月日时分秒显示verilog代码下载

名称:万年历设计DE1-SOC开发板年月日时分秒显示

软件:Quartus II

语言:Verilog

代码功能:

万年历要求

1、实现万年历功能,可以显示年月日,时分秒

2、支持按键调整时间,年月日,时分秒均可调整

3、使用按键切换年月日和时分秒的显示

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

DE1-soc.png

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

代码下载:

万年历设计DE1-SOC开发板年月日时分秒显示(代码在文末下载)软件:Quartus II语言:Verilog代码功能:万年历要求1、实现万年历功能,可以显示年月日,时分秒2、支持按键调整时间,年月日,时分秒均可调整3、使用按键切换年月日和时分秒的显示本代码已在DE1-SOC开发板验证,开发板如下,其他开发板可以通过修改管脚适配名称:万年历设计DE1-SOC开发板年月日时分秒显示(代码在文末下载)软件:Quartus II语言:Verilog代码功能:万年历要求1、实现万年历功能,可以显示年月日,时分秒2、支持按键调整时间,年月日,时分秒均可调整3、使用按键切换年月日和时分秒的显示本代码已在DE1-SOC开发板验证,开发板如下,其他开发板可以通过修改管脚适配:演示视频:FPGA代码Verilog/VHDL代码资源下载:wicon-default.png?t=N7T8http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=249

部分代码展示:

module calendar_top(
input sysclk,//时钟50M
input reset_n,//低电平复位
input change_en,//调整使能信号,为高电平表示调整信号,低电平不调整
input display_SW,//显示切换开关,高电平显示年月日,低电平显示时分秒
input year_hour_key,//年调整信号、小时调整信号
input month_minute_key,//月调整信号、分钟调整信号
input day_second_key,//日调整信号、秒调整信号
output [7:0] HEX0,//数码管
output [7:0] HEX1,//数码管
output [7:0] HEX2,//数码管
output [7:0] HEX3,//数码管
output [7:0] HEX4,//数码管
output [7:0] HEX5//数码管
);
wire [7:0]   year_l_O   ;
wire [7:0]   month_O    ;
wire [7:0]   day_O      ;
wire [7:0]   hour_O     ;
wire [7:0]   minute_O   ;
wire [7:0]   second_O   ;
//万年历计时模块
calendar i_calendar
(
. sysclk(sysclk),
. reset_n(reset_n),
. change_en(change_en),//调整使能信号,为高电平表示调整信号,低电平不调整
. display_SW(display_SW),//显示切换开关,高电平显示年月日,低电平显示时分秒
. year_hour_key(year_hour_key),//年调整信号、小时调整信号
. month_minute_key(month_minute_key),//月调整信号、分钟调整信号
. day_second_key(day_second_key),//日调整信号、秒调整信号
. year_l_O   (year_l_O),
. month_O    (month_O),
. day_O      (day_O),
. hour_O     (hour_O),
. minute_O   (minute_O),
. second_O   (second_O)
);
//数码管显示模块
display i_display(
. sysclk(sysclk),//时钟50M
. reset_n(reset_n),//低电平复位
. display_SW(display_SW),//显示切换开关,高电平显示年月日,低电平显示时分秒
. year_l_O   (year_l_O),
. month_O    (month_O),
. day_O      (day_O),
. hour_O     (hour_O),
. minute_O   (minute_O),
. second_O   (second_O),
. HEX0(HEX0),//数码管
. HEX1(HEX1),
. HEX2(HEX2),
. HEX3(HEX3),
. HEX4(HEX4),
. HEX5(HEX5)
);
endmodule

设计文档:

1. 工程文件

2. 程序文件

3. 程序编译

4. RTL图

5. 管脚分配

6. 仿真图

图1

图2

图3

基于FPGA设计万年历数字时钟课程设计Quartus工程源码+设计报告文档资料,可以做为你的学习设计参考。 系统总体设计 2.1.1 系统功能介绍 本次万年历实现的功能有: (1)年月日时分秒的走时、设置及其显示。 (2)闹钟功能、闹钟设置及其闹钟设置显示。 2.1.2 系统硬件介绍 本次万年历设计使用的硬件资源有:6个数码管、三个微动开关、两个拨码开关和两个LED灯。 其中,6个数码管选择显示年月日时分秒及其闹钟设置的时分秒。三个按键分别为翻页按键(选择数码管显示内容)、选择按键(选择需调整的内容)、加一按键(调整的内容加一),用于翻页和时间及其闹钟的设置。两个拨码开关分别为闹钟使能开关和复位开关,用于闹钟的打开及其关闭和将整个系统复位。两个LED灯分别为闹钟开关状态和闹钟标志(代替蜂鸣器)。 2.1.3 系统总体框图介绍 整个系统采用自顶向下的设计方法,从系统的总体功能出发,将整个系统划分为多个模块,然后再将各个模块划分为多个功能部分,编程完成后将各个部分联系起来组成整个系统。 module calendar(system_clk,reset,key_turn,key_switch,key_add,switch_alarm,led,beep,hex0,hex1,hex2,hex3,hex4,hex5); input system_clk,reset,key_turn,key_switch,key_add,switch_alarm;//系统时钟、复位、三个按键和一个拨码开关 output led,beep; //LED灯和蜂鸣器 output [6:0] hex0; //输出:数码管0 output [6:0] hex1; //输出:数码管1 output [6:0] hex2; //输出:数码管2 output [6:0] hex3; //输出:数码管3 output [6:0] hex4; //输出:数码管4 output [6:0] hex5; //输出:数码管5 wire second_add,minute_add,hour_add,day_add,month_add,year_add,alarm_second_add,alarm_minute_add,alarm_hour_add; //专属增一信号 wire [1:0] flag_turn; //翻页状态信号 wire [1:0] flag_switch; //闪烁数码管选择信号 wire select_sign; //选择状态 wire [5:0] second; //秒 wire [5:0] minute; //分 wire [4:0] hour; //小时 wire [4:0] day; //日 wire [3:0] month; //月 wire [6:0] year; //年 wire [5:0] alarm_second; //闹钟秒 wire [5:0] alarm_minute; //闹钟分 wire [4:0] alarm_hour; //闹钟小时 //例化按键模块 key_drive_module use_key_drive_module( .system_clk (system_clk), .reset (reset), .key_turn (key_turn), .key_switch (key_switch), .key_add (key_add), .flag_switch (flag_switch), .flag_turn (flag_turn), .second_add (second_add), .minute_add (minute_add), .hour_add (hour_add), .day_add (day_add), .month_add (month_add), .year_add (year_add), .alarm_second_add (alarm_second_add), .alarm_minute_add (alarm_minute_add), .alarm_hour_add (alarm_hour_add), .select_sign (select_sign) ); //例化时钟模块 clock
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值