名称:篮球竞赛30秒计时器Verilog代码Quartus 实验箱(文末获取)
软件:Quartus
语言:Verilog
代码功能:
篮球竞赛30秒计时器
内容及要求
篮球计时器具有30秒计时功能,电路可能包含的模块为:七段数码管驱动器、分频器电路、触发器、数据选择器等基本电路。具体要求如下:
1.计时器为30秒递减计时,其计时间隔为1秒。当计时器递减计时到零时,发出蜂鸣器报警声
2.电路具有三个外部控制按键:复位按键、启动计时按键和停止计时按键,分别选用实验箱按
键模块的S1、S2和S3,按下51,系统复位,所有寄存器全部清零;按下S2,秒表启动计时;按
下S3,秒表停止计时,并且数码管显示当前计时时间,如果再次按下S2,秒表继续计时,除非按下
S1,系统才能复位,两位七段数码管显示全部“00”
3.输入外部时钟选择为1KHz.直到按下停止按键(按键开关K2),数码管停止计秒。按下开
始按键(按键开关K1),数码管继续进行计秒。按下复位按键(按键开关K3)秒表从00重新开始
计秒
本代码已在实验箱验证,实验箱如下,其他开发板可以修改管脚适配:
1. 工程文件
2. 程序文件
3. 程序编译
4. RTL图
5. 管脚分配
6. Testbench
7. 仿真图
部分代码展示:
module timmer_30s( input clk,//1KHz,L20 input reset,//复位按键 input start,//启动按键 input stop,//停止按键 output beep,//蜂鸣器 output [2:0] SEL,//数码管位选 output [7:0] SEG//数码管段选 ); wire [7:0] second;//秒计时 //控制模块 time_ctrl i_time_ctrl( . clk(clk),//1KHz,L20 . reset(reset),//复位按键 . start(start),//启动按键 . stop(stop),//停止按键 . beep(beep),//蜂鸣器 . second(second)//秒计时 ); //显示模块 display i_display( . clk(clk),//1KHz,L20 . second(second),//秒计时 . SEL(SEL),//数码管位选 . SEG(SEG)//数码管段选,高电平亮 ); endmodule
源代码
扫描文章末尾的公众号二维码