班路抢答器方案方案.docx

上传人:b****3 文档编号:2041170 上传时间:2022-10-26 格式:DOCX 页数:25 大小:332.94KB
下载 相关 举报
班路抢答器方案方案.docx_第1页
第1页 / 共25页
班路抢答器方案方案.docx_第2页
第2页 / 共25页
班路抢答器方案方案.docx_第3页
第3页 / 共25页
班路抢答器方案方案.docx_第4页
第4页 / 共25页
班路抢答器方案方案.docx_第5页
第5页 / 共25页
点击查看更多>>
下载资源
资源描述

班路抢答器方案方案.docx

《班路抢答器方案方案.docx》由会员分享,可在线阅读,更多相关《班路抢答器方案方案.docx(25页珍藏版)》请在冰豆网上搜索。

班路抢答器方案方案.docx

班路抢答器方案方案

一、实验目的

1.学习智力竞赛抢答器电路的工作原理。

2.学习综合数字电子电路的设计、实现和调试方法。

二、实验内容和要求

<1)抢答器可容纳四组选手,并为每组选手设置一个按钮供抢答者使用;为主持人设置一个控制按钮,用来控制系统清零<组别显示数码管灭灯)和抢答开始。

<2)电路具有对第一抢答信号的锁存、鉴别和显示等功能。

在主持人将系统复位并发出抢答指令后,蜂鸣器提示抢答开始,计时显示器显示初始时间并开始倒计时,若参赛选手按下抢答按钮,则该组别的信号立即被锁存,并在组别显示器上显示该组别,同时扬声器也给出音响提示,此时,电路具备自锁功能,使其他抢答按钮不起作用。

<3)如果无人抢答,计时器倒计时到零,蜂鸣器有抢答无效提示,主持人可以按复位键,开始新一轮的抢答。

<4)抢答器具有限时抢答的功能,且一次抢答的时间由主持人设定,本抢答时间设定为30秒。

当主持人启动开始键后,要求计时器采用倒计时,同时倒计时到0秒时扬声器会发出声响提示。

<5)参赛选手在设定的时间内抢答,则抢答有效,定时器停止工作,根据抢答结果由数码管显示选手的组别,并一直保持到主持人将系统清零为止。

2.2.2设计方案二

本工程也可以用EDA技术来实现其功能。

在芯片选型方面可以考虑选择CPLD芯片作为微控制器。

EDA自顶向下的设计方法比较先进;实验室有齐全的开发套件;组员们均系统学习过EDA基础课程,都有VHDL编程和实验经验,团队之间交流将会比较方便;芯片容量大,处理速度极快,管脚数目多达84个,IO口数目充足,适合本设计的规模。

缺点在于设备相对昂贵,使用不当容易烧毁微处理器。

三、设计思路

可将整个系统分为三个主要模块:

抢答鉴别模块QDJB;抢答计时模块JSQ;抢答计分模块JFQ。

整个系统的组成框图如图5-5-8所示。

图--1智力竞赛抢答器系统框图

四、电路设计

图--2

1.电路设计指标

.本抢答器最多可提供4名参赛选手使用,编号为1~4号,各队分别用一个按钮

.抢答器具有数据锁存功能,并将锁存数据用发光二极管指示灯显示出来,同时蜂鸣器发出间歇式声响,主持人清零后,声音提示停止。

.抢答先后的分辨率为1ms。

.开关S5作为清零及抢答控制开关<有主持人控制),当开关S5被按下时,抢答电路清零,松开后则允许抢答,输入抢答信号由抢答按钮的S1~S4实现。

.有抢答信号输入时,有数码管显示出相应组别的号码。

此时再按其他任何一个抢答开关均无效,指示灯依旧保持第一个开关按下时所对应的状态不变。

.能完成由主持人控制的30秒倒计时,有抢答信号输入后计时器停止。

.能完成定时器复位,启动,暂停/继续计数。

.能完成对每个选手抢答次数的记录,并可复位。

2.仿真电路组成

<1)四路抢答器原理

见图--3

图--3

该电路由四个D触发器、与非门及脉冲触发电路等组成。

其中S1,S2,S3、S4为抢答人按钮,S5为主持人复位。

74LS175为四D触发器。

无人抢答时,S1~S4均未被按下,1D~4D均为低电平,在555定时器电路产生时钟脉冲作用下,1Q立即变为高电平,对应指示灯X1发光,同时数码管显示为1,将555定时脉冲封锁,此时送给74ls175的CLK端不再有脉冲信号,所以74LS175输出不再变化,其他抢答者再按下按钮也不起作用,从而实现了抢答。

若要清除,则由主持人按S5按钮完成,并为下一次抢答做好准备。

<2)定时器实现

秒脉冲发生器由555定时器和外接元件R1、R2、C构成多谐振荡器。

F=1Hz

定时器电路见图--4

图--4

计数器由两片74LS192同步十进制计数器构成

利用错位输出端BO于下一级DOWN相连

30循环设置为,十位片DCBA=0011个位片DCBA=0000

译码及显示电路有译码驱动器74LS48和7段数码管组成

控制电路

与非门U20A和U21A组成RS触发器,实现计数器复位、计数和保持30

电路如图--5所示

图--5

<3)计数电路

计数器由74LS192构成

置数输入端接地,up端接选手输入信号,当有信号输入是加一,load端接电源和复位开关用于复位,down加开关控制计数器的减法,电路如图--6

图--7

<4)完整电路

见图--8

图--8

VHDL的程序设计

1、抢答鉴别模块VHDL源程序

LIBRARYIEEE。

USEIEEE.STD_LOGIC_1164.ALL。

ENTITYQDJBIS

PORT(CLR:

INSTD_LOGIC。

A,B,C,D:

INSTD_LOGIC。

A1,B1,C1,D1:

OUTSTD_LOGIC。

G:

OUTSTD_LOGIC_VECTOR(3DOWNTO0>>。

ENDQDJB。

ARCHITECTUREARTOFQDJBIS

CONSTANTW1:

STD_LOGIC_VECTOR:

="0001"。

CONSTANTW2:

STD_LOGIC_VECTOR:

="0010"。

CONSTANTW3:

STD_LOGIC_VECTOR:

="0100"。

CONSTANTW4:

STD_LOGIC_VECTOR:

="1000"。

BEGIN

PROCESS(CLR,A,B,C,D>

VARIABLELOCK:

STD_LOGIC。

BEGIN

IF(CLR='1'>THENG<="0000"。

LOCK:

='1'。

A1<='1'。

B1<='1'。

C1<='1'。

D1<='1'。

ELSIF(LOCK='1'>THEN

IF(A='1'ANDB='0'ANDC='0'ANDD='0'>THEN

A1<='0'。

B1<='1'。

C1<='1'。

D1<='1'。

G<=W1。

LOCK:

='0'。

ELSIF(A='0'ANDB='1'ANDC='0'ANDD='0'>THEN

A1<='1'。

B1<='0'。

C1<='1'。

D1<='1'。

G<=W2。

LOCK:

='0'。

ELSIF(A='0'ANDB='0'ANDC='1'ANDD='0'>THEN

A1<='1'。

B1<='1'。

C1<='0'。

D1<='1'。

G<=W3。

LOCK:

='0'。

ELSIF(A='0'ANDB='0'ANDC='0'ANDD='1'>THEN

A1<='1'。

B1<='1'。

C1<='1'。

D1<='0'。

G<=W4。

LOCK:

='0'。

ENDIF。

ENDIF。

ENDPROCESS。

ENDART。

2、抢答计时模块VHDL源程序

LIBRARYIEEE。

USEIEEE.STD_LOGIC_1164.ALL。

USEIEEE.STD_LOGIC_UNSIGNED.ALL。

ENTITYJSQIS

PORT(CLR,LDN,EN,CLK:

INSTD_LOGIC。

TA,TB:

INSTD_LOGIC。

FLAG:

INSTD_LOGIC。

BELL:

OUTSTD_LOGIC。

QA:

OUTSTD_LOGIC_VECTOR(3DOWNTO0>。

QB:

OUTSTD_LOGIC_VECTOR(3DOWNTO0>>。

ENDJSQ。

ARCHITECTUREARTOFJSQIS

SIGNALDA:

STD_LOGIC_VECTOR(3DOWNTO0>。

SIGNALDB:

STD_LOGIC_VECTOR(3DOWNTO0>。

SIGNALGWYUZHI:

STD_LOGIC_VECTOR(3DOWNTO0>。

SIGNALSWYUZHI:

STD_LOGIC_VECTOR(3DOWNTO0>。

SIGNALN:

INTEGERRANGE0TO10。

BEGIN

PROCESS(CLK,LDN,EN,CLR,TA,TB,FLAG>

VARIABLETMPA:

STD_LOGIC_VECTOR(3DOWNTO0>。

VARIABLETMPB:

STD_LOGIC_VECTOR(3DOWNTO0>。

VARIABLESTAY,FINISH:

STD_LOGIC。

--倒计时停止标志

BEGIN

IFCLR='1'THENTMPA:

="1001"。

TMPB:

="1001"。

SWYUZHI<="0000"。

GWYUZHI<="0000"。

DA<="1001"。

DB<="1001"。

ELSIFCLK'EVENTANDCLK='1'THEN

IFLDN='1'THEN

IFTA='1'THEN

GWYUZHI<=GWYUZHI+"0001"。

BELL<='0'。

IFGWYUZHI="1010"THEN

GWYUZHI<="0000"。

ENDIF。

ENDIF。

IFTB='1'THEN

SWYUZHI<=SWYUZHI+"0001"。

BELL<='0'。

IFSWYUZHI="1010"THEN

SWYUZHI<="0000"。

ENDIF。

ENDIF。

TMPA:

=GWYUZHI。

TMPB:

=SWYUZHI。

BELL<='0'。

STAY:

='0'。

ELSIFEN='1'ANDSTAY='0'THEN

IFFLAG='1'THEN

TMPA:

="0000"。

TMPB:

="0000"。

ENDIF。

IFTMPA="0000"THEN

TMPA:

="1001"。

IFTMPB="0000"THEN

STAY:

='1'。

FINISH:

='1'。

N<=N+1。

IFSWYUZHI="0000"THEN

TMPB:

="1001"。

BELL<='1'。

ELSETMPB:

=SWYUZHI。

TMPA:

=GWYUZHI。

BELL<='1'。

ENDIF。

ELSETMPB:

=TMPB-"0001"。

BELL<='0'。

ENDIF。

ELSETMPA:

=TMPA-"0001"。

BELL<='0'。

ENDIF。

ELSIFSTAY='1'ANDFINISH='1'THEN

N<=N+1。

IFN=4THEN

BELL<='0'。

N<=0。

FINISH:

='0'。

ENDIF。

ELSIFEN='0'THEN

STAY:

='0'。

ENDIF。

ENDIF。

QA<=TMPA。

QB<=TMPB。

ENDPROCESS。

ENDART。

3、译码器VHDL源程序

LIBRARYIEEE。

USEIEEE.STD_LOGIC_1164.ALL。

USEIEEE.STD_LOGIC_UNSIGNED.ALL。

ENTITYYMQIS

PORT(AIN4:

INSTD_LOGIC_VECTOR(3DOWNTO0>。

DOUT7:

OUTSTD_LOGIC_VECTOR(6DOWNTO0>>。

ENDYMQ。

A

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1