EDA电子抢答器设计探析.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文档。上传文档
查看更多
PAGE  PAGE 18 课程设计报告 电子抢答器设计 课程:可编程器件及应用课程设计 班级: 2012142216 姓名:曹勤 陈有玲 陈淑媛 指导教师: 黄林 2014年 11月 20日 目 录 1课题背景 3 设计的目的 3 系统功能及要求 3 2程序功能模块组成及流程图 4 2.1 程序功能模块组成4 2.2 程序流程图4 3程序代码及模块分析 4 4运行结果12 5实验现象16 6总结与体会 18 1.课题背景 EDA及电子设计自动化,是指使用计算机自动完成电子系统的设计,应用EDA技术进行电子产品的设计已成为当今电子工程师的一项基本技。随着电子技术和计算机技术的飞速发展,新的高度集成的电子设计方法不断推出,电子产品的性能越来越高,更新的速度也越来越快,与此同时,市场对电子产品的设计提出了更为严格的要求,从而促进了电子设计自动化(EDA)技术的迅速发展 在多项竞赛及节目上都用到电子抢答器,他们抢答所使用的抢答器就是我这次要做的课程设计的内容。有了抢答器会使选手间更加公平、公正、公开,也方便了主持人对现场的主持。 1.1设计的目的 本次课程设计的目的是在学习完EDA课程的基础上,运用EDA的知识即VHDL语言,编写程序来实现此次我设计的电子抢答器所要实现的功能,不仅会编写程序,还要能够在实验室中检测我所编写的程序是否能够达到预期的目的。 1.2系统功能及要求 (1)优先编码器电路立即分辨出抢答者编号,并由锁存器进行锁存,然后由译码显示电路显示编号; (2)扬声器发出短暂声响,提醒主持人注意; (3)控制电路要对输入编码电路进行封锁,避免其他选手再次进行抢答;(4)当选手将问题回答完毕,主持人操作计分开关,计分电路采用十进制加/减计数器、数码管显示。本轮抢答完毕,主持人操作控制开关,使系统回复到禁止工作状态,以便进行下一轮抢答。 2.程序功能模块组成及流程图 2.1程序功能模块组成 本程序主要设计了七个模块,分别是: 1.抢答鉴别模块 2.计时模块 3.数据选择模块 4.报警模块 5.译码模块 6.计分模块 7.控制模块 2.2程序流程图 鉴别 计时 控制 数据选择 报警 译码 计分 主持人 选手 显示 3.程序代码及模块分析 3.1抢答鉴别模块 鉴别锁存模块的关键是准确判断出第一抢答者并将其锁存,实现的方法可使用触发器或锁存器,在得到第一信号后将输入封锁,使其它组的抢答信号无效。形成第一抢答信号后,用编码、译码及数码显示电路显示第一抢答者的组号并启动答题计时电路。 抢答鉴别电路可以由VHDL程序来实现,以下是一断抢答鉴别的VHDL程序: library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity identify is port(ret,clk:in std_logic; a0,a1,a2,a3:in std_logic; states:buffer std_logic_vector(3 downto 0); tmp:out std_logic); end identify; architecture behav of identify is signal st:std_logic_vector(3 downto 0); begin process(clk , ret,a0, a1,a2,a3) begin if ret=1 then tmp=0; st=0000; elsif clkevent and clk=1 then if (a0=1 or st(0)=1)and not( st(1)=1 or st(2)=1 or st(3)=1 ) then st(0)=1; end if ; if (a1=1 or st(1)=1)and not( st(0)=1 or st(2)=1 or st(3)=1 ) then st(1)=1; end if ; if (a2=1 or st(2)=1)and not( st(0)=1 or st(1)=1 or st(3)=1 ) then st(2)=1; end if ; if (a3=1 or st(3)=1)and not( st(0)=1 or st(1)=1 or st(2)=1 ) then st(3)=1; end if ; tmp=st(0) or st(1) or st(2) or st(3); end if ;

文档评论(0)

bbnnmm885599 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档