• 方案介绍
  • 附件下载
  • 相关推荐
申请入驻 产业图谱

基于FPGA的简易数字钟设计Verilog代码VIVADO仿真

08/01 08:51
620
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

2-24060G545433V.doc

共1个文件

名称:基于FPGA的简易数字钟设计Verilog代码VIVADO仿真

软件:VIVADO

语言:Verilog

代码功能:小时和分钟用数码管显示,秒用发光二极管闪烁显示,每秒闪烁一次

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

演示视频:

设计文档:

1. 工程文件

2. 程序文件

3. 程序编译

4. RTL图

5. Testbench

6. 仿真图

整体仿真图

分频模块

60进制秒计时模块

60进制分计时模块

24进制小时计时模块

显示模块

部分代码展示:

//小时和分钟用数码管显示,秒用发光二极管闪烁显示,每秒闪烁一次
module clock_top(
input CLK_50M,//时钟
input CLR,//清零,低电平复位
output second_led,//秒led灯
output [7:0] HEX_ten_minute,//数码管显示分钟十位
output [7:0] HEX_one_minute,//数码管显示分钟个位
output [7:0] HEX_ten_hour,//数码管显示小时十位
output [7:0] HEX_one_hour//数码管显示小时个位
);
wire cout_second;
wire cout_minute;
wire [3:0] cnt_ten_second;//计数值十位
wire [3:0] cnt_one_second;//计数值个位
wire [3:0] cnt_ten_minute;//计数值十位
wire [3:0] cnt_one_minute;//计数值个位
wire [3:0] cnt_ten_hour;//计数值十位
wire [3:0] cnt_one_hour;//计数值个位
wire clk;
assign second_led=clk;
//分频模块
divider i_divider(
.CLR(CLR),
.CLK_50M(CLK_50M),
.CLK_1HzOut(clk)
);
//60进制计数器
counter_60 i_second(
. clk(clk),
. CLR(CLR),
. cnt_ten(cnt_ten_second),//计数值十位
. cnt_one(cnt_one_second),//计数值个位
. cout(cout_second)//满60进位
);
//60进制计数器
counter_60 i_minute(
. clk(cout_second),
. CLR(CLR),
. cnt_ten(cnt_ten_minute),//计数值十位
. cnt_one(cnt_one_minute),//计数值个位
. cout(cout_minute)//满60进位
);
//24进制计数器
counter_24 i_hour(
. clk(cout_minute),
. CLR(CLR),
. cnt_ten(cnt_ten_hour),//计数值十位
. cnt_one(cnt_one_hour)//计数值个位
);

点击链接获取代码文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=843

  • 2-24060G545433V.doc
    下载

相关推荐