名称:基于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
阅读全文
426