数字抢答器分析和总结.docx

  1. 1、本文档共13页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

《数字逻辑系统设计实习报告》

题目:数字式竞赛抢答器学院:电子工程信息技术班级:B0911

姓名:学号:38

主要内容:

设计一个可容纳6组参赛的数字式抢答器,当第一个人按下抢答按钮时,其他组的按钮不起作用。当主持人按下“复位”按钮,所有组的按键才可用。基本要求:

1、设计一个可容纳6组参赛的数字式抢答器,每组设一个按钮,供抢答使用。

2、抢答器具有第一信号鉴别和锁存功能,使除第一抢答者外的按钮不起作用。

3、设置一个主持人“复位”按钮。

4、主持人复位后,开始抢答,第一信号鉴别锁存电路得到信号后,有指示灯显示抢答组别,扬声器发出2-3秒的音响。

5、设置一个计分电路,每组开始预置100分,由主持人记分,答对一次加10分,答错一次减10分。

一、总体设计思想

基本原理

本设计为六路智能抢答器,所以这种抢答器要求有六路不同组别的抢答输入信号,并能识别最先抢答的信号,直观地通过数显和蜂鸣等方式显示出组别;对回答问题所用的时间进行计时、显示、超时报警、预置答题时间,同时该系统还应有复位、倒计时启动功能。

抢答过程:主持人按下系统复位键(RST),系统进入抢答状态,计时模块和计分模块输出初始信号给数码显示模块并显示出初始值。当某参赛组抢先将

抢答键按下时,系统将其余三路抢答信号封锁,同时扬声器发出声音提示,组别显示模块送出信号给数码显示模块,从而显示出该抢答成功组台号,并一直保持到下一轮主持人将系统清零为止。主持人对抢答结果进行确认,随后,计时模块送出倒计时计数允许信号,开始回答问题,计时显示器则从初始值开始以计时,在规定的时间内根据答题的正误来确定加分或减分,并通过数码显示模块将成绩显示出来。计时至0时,停止计时,扬声器发出超时报警信号,以中止未回答完问题。当主持人给出倒计时停止信号时,扬声器停止鸣叫。若参赛者在规定时间内回答完为题,主持人可给出倒计时计数停止信号,以免扬声器鸣叫。主持人按下复位键,即RST为高电平有效状态,清除前一次的抢答组别,又可开始新的一轮的抢答。

此抢答器的设计中采用自顶向下的设计思路,运用VHDL硬件描述语言对各

个模块进行层次化、系统化的描述,并且先设计一个顶层文件,再把各个模块连接起来。

设计框图

抢答按钮

抢答按钮

优先编

码电路

锁存器

译码

电路

显示

电路

主持人

控制开关

控制电路

报警电路

主电路

预制

计分电路

译码电路

显示电路

二、设计步骤和调试过程

总体设计电路

1、模块设计和相应模块程序

将该任务分成几个模块进行设计,分别为:抢答器鉴别模块、抢答器记分模块、译码模块、数选模块、报警模块,最后是撰写顶层文件。

抢答器鉴别模块:

在这个模块中主要实现抢答过程中的抢答功能,并能对超前抢答进行警告,还能记录无论是正常抢答还是超前抢答者的台号,并且能实现当有一路抢答按键按下时,该路抢答信号将其余过滤抢答封锁的功能。其中有六个抢答信号s0、s1、s2、s3、s4、s5;抢答使能信号s;抢答状态显示信号states;抢答与警报时钟信号clk2;系统复位信号rst;警报信号tmp。

抢答鉴别模块图

rst

rstclk2s0s1s2s3s4

s5

states[3..0]

tmp

qdjb

VHDL源程序

libraryieee;--抢答鉴别模块useieee.std_logic_1164.all;

useieee.std_logic_unsigned.all;entityqdjbis

port(rst,clk2:instd_logic;s0,s1,s2,s3,s4,s5:instd_logic;

states:bufferstd_logic_vector(5downto0);tmp:outstd_logic);

endqdjb;

architectureoneofqdjb is

signalst:std_logic_vector(5downto0);beginp1:process(s0,rst,s1,s2,s3,s4,s5,clk2)

begin

ifrst=0 thentmp=0;st=0000;

elsifclk2eventandclk2=1then

if(s0=1orst(0)=1)andnot(st(1)=1orst(2)=1orst(3)=1orst(4)=1orst(5)=1)st(0)=1;

endif;

if(s1=1orst(1)=1)andnot(st(0)=1orst(2)=1orst(3)=1orst(4)=1orst(5)=1)st(1)=1;

endif;

if(s2=1orst(2)

文档评论(0)

tianya189 + 关注
官方认证
内容提供者

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

认证主体阳新县融易互联网技术工作室
IP属地上海
统一社会信用代码/组织机构代码
92420222MA4ELHM75D

1亿VIP精品文档

相关文档