名称:具有启动暂停功能的秒表Verilog代码Quartus 开发板
软件:Quartus
语言:Verilog
代码功能:
具有启动暂停功能的秒表睿智FPGA开发板
1.使用LPM_PLL模块,为整个系统提供系统1s的计数信号;
2.使用4位数码管作为显示工具;
3.显示0分0秒-59分59秒;
4.计数器具有启动计数和暂停计数功能。
5.各模块写好注释。
FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com
本代码已在开发板验证,开发板如下,其他开发板可以修改管脚适配:
演示视频:
设计文档:
1. 工程文件
2. 程序文件
3. 程序编译
4. RTL图
5. 管脚分配
6. Testbench
7. 仿真图
整体仿真图
分频模块
按键模块
控制模块
显示模块
部分代码展示:
module Digital_clock( input clk_50M, input key_1,//跑表启动,暂停 input key_2,//跑表复位 output [3:0] bit_select,//数码管位选 output [7:0] seg_select//数码管段选 ); wire [7:0] stopwatch_second;//秒 wire [7:0] stopwatch_minute;//分 wire key_1_negedge; wire key_2_negedge; wire clk_1Hz; //分频模块 fenping fenping_Hz( . clk_50M(clk_50M), . clk_1Hz(clk_1Hz)//分频到1Hz ); //按键1消抖模块 key_jitter key_1_jitter( . clkin(clk_50M), . key_in(key_1), . key_posedge(), . key_negedge(key_1_negedge), . key_value() ); //按键2消抖模块 key_jitter key_2_jitter( . clkin(clk_50M), . key_in(key_2), . key_posedge(), . key_negedge(key_2_negedge), . key_value() ); //秒表控制模块 stopwatch i_stopwatch( . clk_50M(clk_50M), . clk_1Hz(clk_1Hz),//1Hz . start_key(key_1_negedge),//启动//暂停 . reset_key(key_2_negedge),//复位 . stopwatch_second(stopwatch_second),//秒 . stopwatch_minute(stopwatch_minute)//分 );
点击链接获取代码文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=912
阅读全文
325