三路抢答器FPGA设计

按键消抖:(延时20ms后输出有效值)

三路抢答器FPGA设计_第1张图片

 30S倒计时:(复位结束或开始按键按下后计时器从30开始倒计时,有选手抢答时,倒计时停止,并且输出O_cnt_flag(此信号拉高其他选手抢答无效))

工程仿真:如下图所示:

I_key代表三位选手(001(1),010(2),100(4))

I_begin高电平代表主持人按下开始按键

O_cnt_flag高电平代表有选手抢答或30S内无人抢答

I_plus,I_sub代表主持人加分和减分

I_people1,2,3代表三位选手编号输出(数码管显示)

O_score1,2,3代表三位选手分数输出(数码管显示)初始每人为10分

第一轮抢答:全局复位(I_rst)结束后,主持人按下开始按键,此时倒计时开始;选手1在倒计时为8秒时按下抢答键,此时倒计时停止,倒计时显示8直至开始按键按下,显示选手1编号(I_people1高电平)直至开始按键按下,O_cnt_flag信号拉高直至开始按键按下;选手2慢于选手1按下抢答键,抢答无效,不显示选手2编号,选手1答对问题后主持人加一分(11分),显示分数(O_score1)。

第二轮抢答:主持人按下开始键,此时倒计时从30开始倒计时,选手1在倒计时15时按下抢答键,

............选手1又答对了,再加一分(12)分。

第三轮抢答:主持人按下开始键,此时倒计时从30开始倒计时,选手2在倒计时12时按下抢答键,..............选手2打错,扣一分(9)分

第四轮抢答:主持人按下开始键,无人抢答,倒计时结束后O_cnt_flag拉高,选手4抢答,抢答无效。

复位键按下,分数全部归10,比赛结束。三路抢答器FPGA设计_第2张图片

你可能感兴趣的:(fpga开发)