基于8051单片机的8路抢答器.docx
- 文档编号:6591395
- 上传时间:2023-01-08
- 格式:DOCX
- 页数:25
- 大小:209.17KB
基于8051单片机的8路抢答器.docx
《基于8051单片机的8路抢答器.docx》由会员分享,可在线阅读,更多相关《基于8051单片机的8路抢答器.docx(25页珍藏版)》请在冰豆网上搜索。
基于8051单片机的8路抢答器
本科生毕业设计(论文)
题目:
基于8051单片机的8路抢答器
Title:
教学单位
姓名
学号
年级
专业
指导教师
职称
摘要
随着科学技术的发展和普及,各种各样的竞赛越来越多,其中抢答器的作用也越来越重要。
本文设计出以AT89S51单片机为核心的八路抢答器,采用了数字显示器直接指示,自动锁存显示结果,并自动复位的设计思想,它能根据不同的抢答输入信号,经过单片机的控制处理并产生不同的与输入信号相对应的输出信号,最后通过LED数码管显示相应的路数,即使两组的抢答时间相差几微秒,也可分辨出是哪组优先按下的按键,充分利用了单片机系统结构简单、功能强大、可靠性好、实用性强的特点。
本设计是以抢答为出发点。
考虑到依需设定限时回答的功能,利用89S51单片机及外围接口实现的抢答系统,利用单片机的定时器/计数器定时和记数的原理,将软、硬件有机地结合起来,使得系统能够正确地进行计时,同时使数码管能够正确地显示时间。
用开关做键盘输出,扬声器发生提示。
同时系统能够实现:
在抢答中,只有开始后抢答才有效,如果在开始抢答前抢答为无效;满时后系统计时自动复位及主控强制复位;按键锁定,在有效状态下,按键无效非法
【关键词】抢答器单片机LED数码显示管定时器/计数器扬声器。
Abstract
Withthedevelopmentofscienceandtechnologyandpopularization,allkindsofcompetitions,includingcontestismoreandmoretheroleofmoreandmoreimportant.ThispaperdesignedAT89S51asthecoreinthezhuhaiviesregulator,withdigitaldisplaydirectinstructions,automaticlatchshowedresults,andautomaticresetdesignideas,itcanaccordingtodifferentcontestinputsignalbyMCUcontrol,handleandproducedifferentwiththeinputsignalcorrespondingoutputsignal,finallyLEDdigitalpipedisplaybythecorrespondingpoints,evenifthetwogroupsofviesdiffersafewmicroseconds,alsotimecandistinguishwhichgroupofprioritypressbuttons,fullyutilizethesingle-chipmicrocomputersystemstructureissimple,powerful,goodreliabilityandpracticabilitystrongcharacteristic.
Thisdesignisforthestartingpoint.ResponderConsideringthesetlimittoanswerin89S51single-chipmicrocomputerandfunction,useofperipheralinterfaces,scare-answeringsystemofthemicrocontrollertimer/countertimingandnumerationprinciple,softwareandhardwareorganically,andmakesthesystemcancorrectlytothetime,atthesametimemakingdigitaltubecanproperlyshowtime.Withaswitchdokeyboardoutput,thespeakerhappenshints.Andthesystemcanrealize:
inthecontest,onlyafterbeginningviestoeffective,ifatthestartofthecontestfortheinvalid;formercontestFullautomaticresetandclockafterthesystemmastermandatoryreset;Keylock,ineffectivecondition,buttonsinvalidillegal
【KeyWords】viestoimplementmicrocontrollerLEDdigital
Thetimer/countersspeaker.
第1节引言……………………………………………………………………1
1.1抢答器的概述……………………………………………………………1
1.2本设计主要任务…………………………………………………………1
1.3系统主要功能……………………………………………………………1
第2节系统硬件设计………………………………………………………3
2.1芯片的选择………………………………………………………………3
2.2工作原理…………………………………………………………………3
2.3系统的硬件构成及功能…………………………………………………3
2.3.1抢答器的电路图…………………………………………………………3
2.3.2单元电路设计……………………………………………………………5
2.3.3定时电路设计……………………………………………………………7
2.3.4报警电路设计……………………………………………………………7
第3节系统软件设计…………………………………………………………9
3.1系统主程序设计………………………………………………………9
3.2抢答器的源程序………………………………………………………9
第4节技术指标及故障处理…………………………………………………20
4.1主要技术参数………………………………………………………20
4.2使用说明……………………………………………………………20
4.3常见故障……………………………………………………………21
结束语………………………………………………………………………22
参考文献…………………………………………………………………………23
第1节引言
当今的社会竞争日益激烈,选拔人才,评选优胜,知识竞赛之类的活动愈加频繁,那么也就必然离不开抢答器。
而现在的抢答器有着数字化,智能化的方向发展,这就必然提高了抢答器的成本。
鉴于现在小规模的知识竞赛越来越多,操作简单,经济实用的小型抢答器必将大有市场。
本抢答器通过十分巧妙的设计仅用两块数字芯片便实现了数显抢答的功能,与其他抢答器电路相比较有分辨时间极短、结构清晰,成本低、制作方便等优点,并且还有防作弊功能。
因此,我们制作了这款简易八路抢答器屏弃了成本高,体积大,而且操作复杂。
我们采用了数字显示器直接指示,自动锁存显示结果,并自动复位的设计思想,因而本抢答器具有显示直观,不需要人干预的特点。
而且在显示时抢答器会发出叮咚声使效果更为生动。
工厂、学校和电视台等单位常举办各种智力竞赛,抢答记分器是必要设备。
1.1八路扫描式抢答器的概述
本文介绍的八路数显抢答器具有电路简单、成本较低、操作方便、灵敏可靠等优点,经使用效果良好,具有较高的推广价值。
无线遥控抢答器,它由8个发射器和1个接收器组成,可用于8组或8组以下的智力竞赛中。
比赛前,将参赛组从0至7编号,每组发给对应的一个发射器。
将接收器放于各组中央或前方。
主持人按一下启动键后,抢答开始。
此后,哪一组最先按下发射器上的抢答键,接收器就立即显示该组的组号并锁定,同时发出3次清脆的“叮咚”声。
以后,按下任何一路抢答键均不起反映。
只有主持人再次按动启动键后,才能进行下一次抢答该电路由直流稳压电源、抢答器、超时报警与电子计分四部分组成。
1.2本设计任务及要求
任务:
设计一个供8名选手参加八路扫描式抢答器。
1.3系统主要功能
每名选手有一个抢答按钮,按钮的编号与选手的编号相对应,抢答器具有第一个抢答信号的鉴别和数据锁存、显示的功能。
抢答开始后,若有选手按抢答按钮,刚该选手指示灯亮,并在数码管上显示相应编号,扬声器发出音响提示。
同时,电路应具备自锁功能,禁止其他选手再抢答,优先抢答选手的编号一直保持到主持人将系统清0为止。
抢答器具有计分、显示功能。
预置分数可由主持人设定,并显示在每名选手的计分牌上,选手答对加10分,答错扣10分。
抢答器具有定时抢答的功能。
一次抢答的时间由主持人设定,在主持人发出抢答指令后,定时器立即进行减计时,并在显示器上显示,同时扬声器发出短暂声响,声响时间持续0.5s左右。
选手在设定的时间内进行抢答,抢答有效,定时器停止工作,显示器显示选手编号和抢答时刻的时间,并保持到主持人将系统清0为止。
第2节系统硬件设计
2.1芯片的选择
本设计使用到的元器件包括:
8051芯片、数码LED显示器、七段LED数码管的译码。
2.2工作原理
基于这个设计的上述要求,根据功能要求,须设计有抢答电路、译码显示电路、主持人控制电路、定时电路、报警电路,各个电路都有其自己的功能。
通过复位按键FW,电路进入就绪状态,等待抢答。
首先由主持人根据题目的难易程度,可以用“JIASHI”和“JIANSHA”两个按键,设定时间在(0S-99S)之间,然后再由主持人发布抢答命令(按下KS按键)同时发光二极管随即变亮,当看到二极管亮,进入倒计时状态和抢答状态。
在电路中“S1-S8”为8路抢答器的8个按键,如果有人按下按键,程序就会判断是谁先按下的,然后从P2口输出抢答者号码的七段码值,经GAL16V8驱动,送到码管显示,并封锁键盘,保持刚才按键按下时刻的时间,禁止其他人按键的输入,从而实现了抢答的功能。
如果在设定的时间中没有一个人按下按键,一到时间,则产生报警信号已经超时,不可以抢答。
当要进行下一次的抢答时,由主持人先按一下复位按键FW,电路复位,进入下一次抢答的就绪状态。
2.3系统的硬件构成及功能
2.3.1抢答器的电路框图
如图11、1所示为电路框图。
其工作原理为:
接通电源后,主持人将开关拨到“清除”状态,抢答器处于禁止状态,编号显示器灭灯,定时器显示设定时间;主持人将开关置,“开始”状态,宣布“开始”抢答器工作。
定时器倒计时,扬声器给出声响提示。
选手在定时时间内抢答时,抢答器完成:
优先判断、编号锁存、编号显示、扬声器提示。
当一轮抢答之后,定时器停止、禁止二次抢答、定时器显示剩余时间。
如果再次抢答必须由主持人再次操作"清除"和"开始"状态开关。
图11.1抢答器框图
图11.2抢答电路的接口电路
2.3.2单元电路设计
(1)抢答器电路
参考电路如图11.2所示。
该电路完成两个功能:
一是分辨出选手按键的先后,并锁存优先抢答者的编号,同时译码显示电路显示编号;二是禁止其他选手按键操作无效。
工作过程:
开关S置于“清除”端时,RS触发器的端均为0,4个触发器输出置0,使74LS148的=0,使之处于工作状态。
当开关S置于"开始"时,抢答器处于等待工作状态,当有选手将键按下时(如按下S5),74LS148的输出经RS锁存后,1Q=1,=1,74LS48处于工作状态,4Q3Q2Q=101,经译码显示为"5"。
此外,1Q=1,使74LS148=1,处于禁止状态,封锁其他按键的输入。
当按键松开即按下时,74LS148的此时由于仍为1Q=1,使=1,所以74LS148仍处于禁止状态,确保不会出二次按键时输入信号,保证了抢答者的优先性。
如有再次抢答需由主持人将S开关重新置,“清除”然后再进行下一轮抢答。
74LS148为8线-3线优先编码器,表11、1为其功能表。
图11.2抢答器电路
表10.1 74LS148的功能真值表
(2)时序控制电路设计
时序控制电路是抢答器设计的关键,它要完成以下功能:
a.主持人将控制开关拨到"开始"位置时,扬声器发声,抢答电路和定时电路进人正常抢答工作状态。
b.当参赛选手按动抢答键时,扬声器发声,抢答电路和定时电路停止工作。
(3)复位电路的设计
当MCS-5l系列单片机的复位引脚RST(全称RESET)出现2个机器周期以上的高电平时,单片机就执行复位*作。
如果RST持续为高电平,单片机就处于循环复位状态。
根据应用的要求,复位*作通常有两种基本形式:
上电复位和上电或开关复位。
8051的复位方式可以是自动复位,也可以是手动复位,见下图。
此外,RESET/Vpd还是一复用脚,VCC掉电期间,此脚可接上备用电源,以保证单片机内部RAM的数据不丢失。
2.3.3定时电路设计
为了达到抢答的合理性、完整性、可控性,需根据题目的难易程度的不同设定相应的抢答时间。
所以本设计设置了抢答定时电路。
它包括两个按键,一个是加(JIASHI)、另一个是减(JIANSHI),该两个按键由主持人用于在发布开始命令之前设定时间(可以设定在00S-99S),每按一下“JIASHI”按键就会在原来的数字的基础上加上一,如果是按的“JIANSHI”按键就会在原来的数值上减去一。
图11.3可预置时间的定时电路
由节目主持人根据抢答题的难易程度,设定一次抢答的时间,通过预置时间电路对计数器进行预置,计数器的时钟脉冲由秒脉冲电路提供。
可预置时间的电路选用十进制同步加减计数器74LS192进行设计,具体电路如图11、3所示。
2.3.4报警电路设计
报警电路用于报警,当遇到报警信号时,发出警报。
一般喇叭是一种电感性
图11.4报警电路图。
8051驱动喇叭的信号为各种频率的脉冲。
因此,最简单的喇叭驱动方式就是利用达林顿晶体管,或者以两个常用的小晶体管连接成达林顿架势。
在右图中电阻R为限流电阻,在此利用晶体管的高电流增益,以达到电路快速饱和的目的。
不过,如果要由P0输出到此电路,还需要连接一个10K的上拉电阻。
选手在设定的时间内抢答时,实现:
优先判断、编号锁存、编号显示、扬声器提示。
当一轮抢答之后,定时器停止、禁止二次抢答、定时器显示剩余时间。
如果再次抢答必须由主持人再次*作"清除"和"开始"状态开关。
图面是数字抢答器的报警电路图。
其中555构成多谐振荡器,振荡频率fo=1.43/[(RI+2R2)C],其输出信号经三极管推动扬声器。
PR为控制信号,当PR为高电平时,多谐振荡器工作,反之,电路停振。
图11.4报警电路
第3节系统软件设计
3.1系统主程序设计
为了能够达到抢答的公平、公正、合理,应该在主持人发布抢答命令之前必须先设定抢答的时间,所以应该得根据题目的难易程度事先设定时间,因而在编开始抢答前的程序得先编写设定时间的程序,在硬件电路中可以看到有两个按键(JIANSHI和JIANSHI)所以按下硬件的这两个按键相应的在软件进行对数据的加减。
当时间设好了之后,主持人发布抢答命令按下KS按键同时二极管变亮,程序开始打开定时中断开始倒计时,然后调用键盘扫描子程序,编写键盘扫描程序。
当在扫描到有人按下了键,马上关闭T0、调用显示程序、封锁键盘。
3.2抢答器的源程序
一、八路扫描式抢答器参考程序清单
P1.0-P1.7为八路抢答输入数码管段选P0口,位选P2口,蜂鸣器输出为P3.6口。
P3.0为开始抢答,P3.7为停止。
KEQU20H;抢答开始标志位;将P1口与P2口互换,P3.0-P1.0,P3.1-P1.7
RINGEQU22H;响铃标志位
ORG0000H
AJMPMAIN
ORG0003H
AJMPINT0SUB
ORG000BH
AJMPT0INT
ORG0013H
AJMPINT1SUB
ORG001BH
AJMPT1INT
ORG0040H
MAIN:
MOVR1,#0FH;初设抢答时间为15s
MOVR2,#0AH;初设答题时间为10s
MOVTMOD,#11H;设置未定时器/模式1
MOVTH0,#0F0H
MOVTL0,#0FFH;越高发声频率越高,越尖
MOVTH1,#3CH
MOVTL1,#0B0H;50ms为一次溢出中断
SETBEA
SETBET0
SETBET1
SETBEX0
SETBEX1;允许四个中断,T0/T1/INT0/INT1
CLROK
CLRRING
SETBTR1
SETBTR0;一开始就运行定时器,以开始显示FFF.如果想重新计数,重置TH1/TL1就可以了
;***查询程序***
START:
MOVR5,#0BH
MOVR4,#0BH
MOVR3,#0BH
ACALLDISPLAY;未开始抢答时候显示FFF
JBP3.0,NEXT
ACALLDELAY
JBP3.0,NEXT;去抖动,如果"开始键"按下就向下执行,否者跳到非法抢答查询
ACALLBARK;按键发声
MOVA,R1
MOVR6,A;送R1->R6,因为R1中保存了抢答时间
SETBOK;抢答标志位,用于COUNT只程序中判断是否查询抢答
MOVR3,0AH;抢答只显示计时,灭号数
AJMPCOUNT;进入倒计时程序,"查询有效抢答的程序"在COUNT里面
NEXT:
JNBP1.0,FALSE0
JNBP1.1,FALSE1
JNBP1.2,FALSE2
JNBP1.3,FALSE3
JNBP1.4,FALSE4
JNBP1.5,FALSE5
JNBP1.6,FALSE6
JNBP1.7,FALSE7
AJMPSTART
;***非法抢答处理程序***
FALSE0:
ACALLBARK;按键发声
MOVR3,#00H
AJMPERROR
FALSE1:
ACALLBARK;按键发声
MOVR3,#01H
AJMPERROR
FALSE2:
ACALLBARK
MOVR3,#02H
AJMPERROR
FALSE3:
ACALLBARK
MOVR3,#03H
AJMPERROR
FALSE4:
ACALLBARK
MOVR3,#04H
AJMPERROR
FALSE5:
ACALLBARK
MOVR3,#05H
AJMPERROR
FALSE6:
ACALLBARK
MOVR3,#06H
AJMPERROR
;***INT0(抢答时间R1调整程序)***
INT0SUB:
MOVA,R1
MOVB,#0AH
DIVAB
MOVR5,A
MOVR4,B
MOVR3,#0AH
ACALLDISPLAY;先在两个时间LED上显示R1
JNBP3.4,INC0;P3.4为+1s键,如按下跳到INCO
JNBP3.5,DEC0;P3.5为-1s键,如按下跳到DECO
JNBP3.7,BACK0;P3.7为确定键,如按下跳到BACKO
AJMPINT0SUB
INC0:
MOVA,R1
CJNEA,#63H,ADD0;如果不是99,R2加1,如果加到99了,R1就置0,重新
加起。
MOVR1,#00H
ACALLDELAY1
AJMPINT0SUB
ADD0:
INCR1
ACALLDELAY1
AJMPINT0SUB
DEC0:
MOVA,R1
JZSETR1;如果R1为0,R1就置99,
DECR1
ACALLDELAY1
AJMPINT0SUB
SETR1:
MOVR1,#63H
ACALLDELAY1
AJMPINT0SUB
BACK0:
RETI
;***INT1(回答时间R2调整程序)***
INT1SUB:
MOVA,R2
MOVB,#0AH
DIVAB
MOVR5,A
MOVR4,B
MOVR3,#0AH
ACALLDISPLAY
JNBP3.4,INC1
JNBP3.5,DEC1
JNBP1.7,BACK1
AJMPINT1SUB
INC1:
MOVA,R2
CJNEA,#63H,ADD1
MOVR2,#00H
ACALLDELAY1
AJMPINT1SUB
ADD1:
INCR2
ACALLDELAY1
AJMPINT1SUB
DEC1:
MOVA,R2
JZSETR2
DECR2
ACALLDELAY1
AJMPINT1SUB
SETR2:
MOVR2,#63H
ACALLDELAY1
AJMPINT1SUB
BACK1:
RETI
;***倒计时程序(抢答倒计时和回答倒计时都跳到改程序)***
COUNT:
MOVR0,#00H;重置定时器中断次数
MOVTH1,#3CH
MOVTL1,#0B0H;重置定时器
RECOUNT:
MOVA,R6;R6保存了倒计时的时间,之前先将抢答时间或回答时间给R6
MOVB,#0AH
DIVAB;除十分出个位/十位
MOV30H,A;十位存于(30H)
MOV31H,B;个位存于(31H)
MOVR5,30H;取十位
MOVR4,31H;取个位
MOVA,R6
SUBBA,#07H
JNCLARGER;大于5s跳到LARGE
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 8051 单片机 抢答