四人抢答器设计报告.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
四人抢答器设计报告 一、设计任务及要求 1、设计用于竞赛的四人抢答器 (1)有多路抢答器,台数为四; (2)具有抢答开始后20秒倒计时,20秒倒计时后无人抢答显示超时,并报警; (3)能显示超前抢答台号并显示犯规报警; 2、系统复位后进入抢答状态,当有一路抢答键按下时,该路抢答信号将其余各路抢答封锁,同时铃声响起,直至该路按键放松,显示牌显示该路抢答台号; 3、用VHDL语言设计符合上述功能要求的四人抢答器,并用层次设计方法设计该电路; 4、完成电路全部设计后,通过系统实验箱下载验证设计课题的正确性。 二、四人抢答器框图及设计说明 系统复位后,反馈信号为一个高电平,K1、K2、K3、K4输入有效。当抢答开始后,在第一位按键后,保持电路低电平,同时送显示电路,让其保存按键的台号并输出,同时反馈给抢答台,使所有抢答台输入无效,计时电路停止;当在规定的时间内无人抢答时,倒计时电路输出超时信号;当主持人开始说话未说完有人抢先按键时,显示犯规信号。当选手回答正确时加分,回答错误时减分。由主持人控制加减分数。 三、设计思路:根据设计框图和设计要求,本次实验可以采用模块化设计方法来实现智力竞赛四人抢答器。将抢答器划分为抢答鉴别保持模块,倒计时模块,记分模块和判断显示模块。再利用元件例化语句将这四个模块组成总的抢答器的设计电路。选用模式五进行程序的下载。 四、VHDL语言设计与分析 1、鉴别模块 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity jianbie is port(nu1,nu2,nu3,nu4:in std_logic; clk,en,rst:in std_logic; warn:out std_logic; back:buffer std_logic; s:out std_logic_vector(3 downto 0)); end jianbie; architecture jianbiebeh of jianbie is signal num,warnd:std_logic; signal cnt:std_logic_vector(2 downto 0); begin num=nu1 or nu2 or nu3 or nu4; p1:process(rst, nu1,nu2,nu3,nu4,back) --判断抢答信号 begin if rst=1 then back=1;s=0000; elsif back=1 then if nu1=1 then s=0001;back=0; --一号台抢答,输出S为1 elsif nu2=1 then s=0010;back=0; --二号台抢答,输出S为2 elsif nu3=1 then s=0011;back=0; --三号台抢答,输出S为3 elsif nu4=1 then s=0100;back=0; --四号台抢答,输出S为4 else back=1; s=0000; --无人抢答,输出S为0 end if ; end if; end process p1; p2:process(clk,en,back,rst,cnt) begin if rst=1 then cnt=000;warnd=0; elsif clkevent and clk=1 then if en=0 and back=0 then if cnt111 then warnd=not warnd; cnt=cnt+1; else warnd=0; end if; end if; end if; end process p2; warn=warnd; end jianbiebeh; 鉴别保持模块由两个进程组成,进程一主要用于鉴别强大信号,进程二用于鉴别是否为超前抢答,若是超前抢答,则输出报警信号。其中鉴别保持模块的波形如下: 如图所示,抢答开始前需要一个RST信号,其由主持人控制。当RST为高电平时则抢答开始。输出S显示为抢答台号,当主持人还没有复位就有选手抢答,则输出一个WARN的高电平信号。 2、计时模块 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned

文档评论(0)

150****0990 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档