资源描述:
《EDA课程设计抢答器.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、内容摘要抢答器是为智力竞赛参赛者答题时进行抢答而设计的一种优先判决器电路,竞赛者可以分为若干组,抢答时各组对主持人提出的问题要在最短的时间内做出判断,并按下抢答按键回答问题。当第一个人按下按键后,则在显示器上显示该组的号码,对应的灯亮,同时电路将其他各组按键封锁,使其不起作用。若抢答时间内无人抢答,则报警灯亮。回答完问题后,由主持人将所有按键恢复,重新开始下一轮抢答。因此要完成抢答器的逻辑功能,该电路应包括抢答器鉴别模块、抢答器计数模块、报警模块、译码模块、分频模块。关键词:抢答鉴别封锁计数报警AbstractRespon
2、deristheanswerforthequizparticipantstoanswerinthedesignwhenaprioritydecisioncircuit,andtheracecanbedividedintoseveralgroups,answerineachgrouponthehostissuesraisedintheshortestpossibletimetomakejudgments,andpresstheanswerinanswerkey.Afterpressingthebuttonwhenthefir
3、stperson,thenthedisplayshowsthenumberofthegroup,thecorrespondinglights,whileothergroupswillbekeycircuitblock,itdoesnotwork.Iftheanswerintime,noanswerin,thealarmlights.Answeringquestions,allthekeysfromthehosttorestoreandre-startthenextroundoftheResponder.Sotocomple
4、tetheansweringdevicelogicfunctions,thecircuitshouldincludeResponderidentificationmodule,Respondercountingmodule,alarmmodule,decodingmodule,frequencymodule.KEY:ResponderIdentificationBlockadeCountAlarm13一、设计要求1.抢答器同时供4名选手或4个代表队比赛,分别用4个按钮S0~S3表示。2.设置一个系统清除和抢答控制开关rst
5、,该开关由主持人控制。3.抢答器具有锁存与显示功能。即选手按动按钮,锁存相应的编号,并在LED和数码管上显示,同时提示灯亮。选手抢答实行优先锁存,优先抢答选手的编号一直保持到主持人将系统清除为止。4.抢答器具有定时抢答功能,且一次抢答的时间由主持人设定(如20秒)5.如果定时时间已到,无人抢答,本次抢答无效,系统报警并禁止抢答,定时显示器上显示20。二、方案设计与论证1、概述将该任务分成五个模块进行设计,分别为:抢答器鉴别模块、抢答器计时模块、报警模块、分频模块、译码模块。2、抢答器鉴别模块:在这个模块中主要实现抢答过程中
6、的抢答功能,并能对超前抢答进行警告,还能记录无论是正常抢答还是朝前抢答者的台号,并且能实现当有一路抢答按键按下时,该路抢答信号将其余的抢答信号封锁的功能。其中有四个抢答信号s0、s1、s2、s3;抢答状态显示信号states;抢答与警报时钟信号clk2;系统复位信号rst;警报信号warm。3、抢答器计数模块:在这个模块中主要实现抢答过程中的计时功能,在有抢答开始后进行20秒的倒计时,并且在20秒倒计时后无人抢答显示超时并报警。其中有抢答时钟信号clk1;系统复位信号rst;抢答使能信号start;无人抢答警报信号warn
7、;计时中止信号stop;计时十位和个位信号tb,ta。4、报警模块:在这个模块中主要实现抢答过程中的报警功能,当主持人按下控制键,有限时间内人抢答或是计数到时蜂鸣器开始报警,计数停止信号stop;状态输出信号alm;计数脉冲clk。5、译码模块:在这个模块中主要实现抢答过程中将BCD码转换成7段的功能。6、分频模块:在这个模块中主要实现抢答过程中所需的时钟信号。7、顶层文件:在这个模块中是对前五个模块的综合编写的顶层文件。13三、单元电路设计(一)抢答鉴别模块1.VHDL源程序libraryieee;useieee.std
8、_logic_1164.all;useieee.std_logic_unsigned.all;entityxuanshouisport(rst,clk2:instd_logic;s0,s1,s2,s3:instd_logic;states:bufferstd_logic_vector(3downto0)