名称:基于FPGA的电子抢答器设计Verilog代码Quartus仿真
软件:Quartus
语言:Verilog
代码功能:
基于FPGA的电子抢答器
设计一款基于FPGA的四路智力抢答器设计,具备系统复位、30秒倒计时、数码管显示等功能。抢答器通过按键消抖、控制、分数管理和显示控制四大模块实现,适用于竞赛活动,支持主持人控制和选手抢答,具有锁存和显示成功抢答者号码及分数的能力。
FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com
演示视频:
设计文档:
1、工程文件
2、程序文件
3、程序编译
4、RTL图
5、仿真图
整体仿真图
按键消抖模块
控制模块
计时模块
分数控制模块
数码管显示模块
部分代码展示:
//抢答控制模块 module?qiangda_ctrl( input?clk, input?reset_n,//复位抢答状态 input?start_p,//开始控制按键 //4个抢答按键 input?key_1, input?key_2, input?key_3, input?key_4, //4灯指示4个选手 output?reg?led_1, output?reg?led_2, output?reg?led_3, output?reg?led_4, output?reg?led_tiqian,//提前抢答报警 output?reg?led_overtime,//超时报警 output?[4:0]state_out,//输出状态 input?[7:0]?time_done,//倒计时 output??reg?beep,//抢答成功提示音 output?[3:0]?tiqian_qiangda,//提前抢答 output?[3:0]?qiangda//正常抢答 ); parameter?s_idle=5'd0; parameter?s_start=5'd1; parameter?s_timedown=5'd2; parameter?s_tiqian_1=5'd3; parameter?s_tiqian_2=5'd4; parameter?s_tiqian_3=5'd5; parameter?s_tiqian_4=5'd6; parameter?s_qianda_1=5'd7; parameter?s_qianda_2=5'd8; parameter?s_qianda_3=5'd9; parameter?s_qianda_4=5'd10; parameter?s_overtime=5'd11; reg?[4:0]?state=5'd0; reg?[7:0]?time_cnt=8'd20; assign?state_out=state; always@(posedge?clk?or?negedge?reset_n) if(!reset_n) state<=s_idle; else case(state) s_idle://空闲状态,还没开始抢答 if(start_p)//开始抢答按键 state<=s_start; else
点击链接获取代码文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=1537
阅读全文