名称:可容纳四组参赛者的数字智力抢答器VHDL代码Quartus仿真
软件:Quartus
语言:VHDL
代码功能:
设计制作一个可容纳四组参赛者的数字智力抢答器。
1.电路具有第一抢答信号的鉴别和锁存功能。在主持人发出抢答指令后,若抢答成功,则该组指示灯亮。此时,电路应具备自锁功能,使别组的抢答开关不起作用。
2.设置计分电路。每组在开始时预置成50分,抢答后由主持人计分,答对一次加5分,否则减5分。每组选手分值由数码管进行显示。
3.系统主要外设:自恢复式按键5个、蜂鸣器1个、系统时钟(50MH2)、LED灯若干、7段数码管若干。
FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com
演示视频:
设计文档:
1. 工程文件
2. 程序文件
3. 程序编译
4. RTL图
状态图
5. Testbench(TB文件)
6. 仿真图
整体仿真图
抢答控制模块
分数控制模块
显示模块
部分代码展示:
LIBRARY?ieee; ???USE?ieee.std_logic_1164.all; ENTITY?qiangdaqi?IS ???PORT?( ??????clk????????????:?IN?STD_LOGIC; ??????reset_n????????:?IN?STD_LOGIC;--复位 ??????start_p????????:?IN?STD_LOGIC;--主持人 ?????? ??????add_score_1????:?IN?STD_LOGIC;--加分键 ??????sub_score_1????:?IN?STD_LOGIC;--减分键 ??????add_score_2????:?IN?STD_LOGIC;--加分键 ??????sub_score_2????:?IN?STD_LOGIC;--减分键 ??????add_score_3????:?IN?STD_LOGIC;--加分键 ??????sub_score_3????:?IN?STD_LOGIC;--减分键 ??????add_score_4????:?IN?STD_LOGIC;--加分键 ??????sub_score_4????:?IN?STD_LOGIC;--减分键 ?????? ??????key_1??????????:?IN?STD_LOGIC;--抢答键 ??????key_2??????????:?IN?STD_LOGIC;--抢答键 ??????key_3??????????:?IN?STD_LOGIC;--抢答键 ??????key_4??????????:?IN?STD_LOGIC;--抢答键 ?????? ??????led_1??????:?OUT?STD_LOGIC;--抢答指示led灯,高亮 ??????led_2??????:?OUT?STD_LOGIC;--抢答指示led灯,高亮 ??????led_3??????:?OUT?STD_LOGIC;--抢答指示led灯,高亮 ??????led_4??????:?OUT?STD_LOGIC;--抢答指示led灯,高亮 ?????? ??--数码管 ??????HEX1???????????:?OUT?STD_LOGIC_VECTOR(7?DOWNTO?0);--抢答者 ??????HEX2???????????:?OUT?STD_LOGIC_VECTOR(7?DOWNTO?0);--分数十位 ??????HEX3???????????:?OUT?STD_LOGIC_VECTOR(7?DOWNTO?0)--分数个位 ???); END?qiangdaqi; ARCHITECTURE?behavioral?OF?qiangdaqi?IS --分数控制模块 ???COMPONENT?score_crtl?IS ??????PORT?( ?????????clk????????????:?IN?STD_LOGIC; ?????????add_score_1????:?IN?STD_LOGIC; ?????????sub_score_1????:?IN?STD_LOGIC; ?????????add_score_2????:?IN?STD_LOGIC; ?????????sub_score_2????:?IN?STD_LOGIC; ?????????add_score_3????:?IN?STD_LOGIC; ?????????sub_score_3????:?IN?STD_LOGIC; ?????????add_score_4????:?IN?STD_LOGIC; ?????????sub_score_4????:?IN?STD_LOGIC; ?????????score_1????????:?OUT?STD_LOGIC_VECTOR(7?DOWNTO?0); ?????????score_2????????:?OUT?STD_LOGIC_VECTOR(7?DOWNTO?0); ?????????score_3????????:?OUT?STD_LOGIC_VECTOR(7?DOWNTO?0); ?????????score_4????????:?OUT?STD_LOGIC_VECTOR(7?DOWNTO?0) ??????); ???END?COMPONENT; ??? ???--显示模块 ???COMPONENT?display?IS ??????PORT?( ?????????clk????????????:?IN?STD_LOGIC; ?????????HEX1???????????:?OUT?STD_LOGIC_VECTOR(7?DOWNTO?0); ?????????HEX2???????????:?OUT?STD_LOGIC_VECTOR(7?DOWNTO?0); ?????????HEX3???????????:?OUT?STD_LOGIC_VECTOR(7?DOWNTO?0); ?????????qiangda????????:?IN?STD_LOGIC_VECTOR(3?DOWNTO?0); ?????????score_1????????:?IN?STD_LOGIC_VECTOR(7?DOWNTO?0); ?????????score_2????????:?IN?STD_LOGIC_VECTOR(7?DOWNTO?0); ?????????score_3????????:?IN?STD_LOGIC_VECTOR(7?DOWNTO?0); ?????????score_4????????:?IN?STD_LOGIC_VECTOR(7?DOWNTO?0) ??????); ???END?COMPONENT; --抢答控制模块 COMPONENT?qiandda_ctrl?IS ???PORT?( ??????clk????????:?IN?STD_LOGIC; reset_n????????:?IN?STD_LOGIC; ??????start_p???:?IN?STD_LOGIC;--主持人按键 ??????key_1??????:?IN?STD_LOGIC;--抢答按键,所有key都是高电平有效 ??????key_2??????:?IN?STD_LOGIC;--抢答按键,所有key都是高电平有效 ??????key_3??????:?IN?STD_LOGIC;--抢答按键,所有key都是高电平有效 ??????key_4??????:?IN?STD_LOGIC;--抢答按键,所有key都是高电平有效 ???qiangda????:?OUT?STD_LOGIC_VECTOR(3?DOWNTO?0);--正常抢答 ??????led_1??????:?OUT?STD_LOGIC;--抢答指示led灯,高亮 ??????led_2??????:?OUT?STD_LOGIC;--抢答指示led灯,高亮 ??????led_3??????:?OUT?STD_LOGIC;--抢答指示led灯,高亮 ??????led_4??????:?OUT?STD_LOGIC--抢答指示led灯,高亮 ???); END?COMPONENT; ??? ???SIGNAL?qiangda?????????????:?STD_LOGIC_VECTOR(3?DOWNTO?0); ??? ???SIGNAL?score_1?????????????:?STD_LOGIC_VECTOR(7?DOWNTO?0); ???SIGNAL?score_2?????????????:?STD_LOGIC_VECTOR(7?DOWNTO?0); ???SIGNAL?score_3?????????????:?STD_LOGIC_VECTOR(7?DOWNTO?0); ???SIGNAL?score_4?????????????:?STD_LOGIC_VECTOR(7?DOWNTO?0); BEGIN --调用抢答控制模块 ???i_qiandda_ctrl?:?qiandda_ctrl ??????PORT?MAP?( ?????????clk?????????????=>?clk, ?????????start_p?????????=>?start_p, ?????????reset_n?????????=>?reset_n, ?????????key_1???????????=>?key_1, ?????????key_2???????????=>?key_2, ?????????key_3???????????=>?key_3, ?????????key_4???????????=>?key_4,
点击链接获取代码文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=622
							阅读全文
							
						
					
								
								
								
269