八路抢答器论文11.doc

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
八路抢答器设计 指导老师:陈学英 作者:略 单位:EE-UESTC 时间:2008-5-30 摘 要抢答器由优先编码电路、锁存器、译码电路将输出主持人开关启动电路定时电路报警电路 图1 抢答器基本原理 当主持人设置答题时间后,启动开始抢答按键时,报警电路发出警报,抢答鉴别模块进入工作状态,选手可以进行抢答,同时抢答定时器开始从10秒递减;当时间未减少到0秒时,有选手抢答,报警电路发出警报,则抢答鉴别模块锁存该选手的号码,其他选手抢答无效,同时,译码显示选手编号,定时器不再递减;当定时器时间减少到0秒时,表示抢答时间到,发出警报,选手抢答无效。抢答选手的号码和抢答时间的倒计时分别通过译码电路显示在数码管上。若有选手选中,则选中后开始答题,并由答题定时电路开始10秒倒计时,剩余答题时间译码显示,规定时间内答完题,选手按键;若规定时间内选手未答完题,答题定时结束输出报警。 三、方案设计(系统的模块结构) 根据八路抢答器的技术指标及其基本原理,我根据实验提供的条件,采用如下的方案: 基于FPGA芯片设计的八路智力抢答器 本方案主要使用VHDL语言编写程序,来实现系统的功能。利用XLINX_ISE6.2和ModelSim软件来实现程序设计和仿真,最后下载到FPGA芯片中,完成系统的功能要求。 本方案具有的优点是:随着EDA技术的高速发展,电子系统的设计技术和工具发生了深刻的变化,大规模可编程逻辑器件CPLD/FPGA的出现,给设计人员带来了诸多方便。利用它进行产品开发,不仅修改方便、开发周期短、仿真方便、可靠性高,而且具有完全的知识产权。不足之处是:成本比基于基本IC器件开发的多路智力抢答器高,要有较高的软件开发平台,并要求初学者能熟练掌握开发平台的使用。 四、系统实现过程 此部分将要详细介绍基于FPGA开发的八路智力抢答器的基本原理,设计思路以及程序设计和仿真结果.任何一个系统都是有若干个功能模块构成,在此将采用自顶而下的设计方式实现。 基本原理与框图 基本原理 本系统共由抢答单元(qiangda.vhdl)、答题单元(dingshiqi.vhdl)和报警单元(baojing.vhdl)等三部分组成。 首次进行时,主持人设置答题时间,再按一次清零开关,报警器发出声音提示抢答开始,同时抢答锁存模块开始工作,抢答定时器开始减计数,并将时间通过译码电路显示在数码管上。当在规定的时间内,有选手抢答时,抢答锁存模块就将该选手的号码锁存,其他的选手的抢答无效,同时报警器发出警报,定时器停止工作,抢答时间和该选手的号码分别通过数码管显示出来。当规定的时间到并且没有人抢答,定时器递减到0,并通过译码器显示出00,同时报警器报警。 在选手抢题成功后,立即开始答题,同时答题定时器开始倒计时,并将剩余译码显示。在规定时间内,若选手答题完成,则选手按答题完成键,报警器报警,倒计时停止计时;若选手未答完题,倒计时结束,报警器报警。 此外,主持人设置下一次答题时间,按两次清零开关,并开始下一次的抢答。 系统顶层文件 顶层文件原理图: VHDL程序: library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL; -- Uncomment the following lines to use the declarations that are -- provided for instantiating Xilinx primitive components. --library UNISIM; --use UNISIM.VComponents.all; entity myproject is port( clk : in std_logic; --时钟信号 clear : in std_logic; --清零信号 player : in std_logic_vector(7 downto 0); --八个抢答选手输入 settime1 : in std_logic_vector(3 downto 0);--答题时间设置 led_10s : out std_logic_vector(6 downto 0); --10s抢答计时已进行的时间显示 selector : out std_logic_vector(6 downto

文档评论(0)

14576 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档