基于单片机的八路抢答器设计论文

  •  

1.1        课题研究的相关背景

抢答器是一种应用非常广泛的设备,在各种竞赛、抢答场合中,它能迅速、客观地分辨出最先获得发言权的选手。早期的抢答器只由几个三极管、可控硅、发光管等组成,能通过发光管的指示辩认出选手号码。现在大多数抢答器均使用单片机(如MCS-51型)和数字集成电路,并增加了许多新功能,如选手号码显示、抢按前或抢按后的计时、选手得分显示等功能。

本课题利用AT89C51单片机及外围接口实现的抢答系统,利用单片机的定时器/计数器定时和记数的原理,将软、硬件有机地结合起来,使得系统能够正确地进行计时,同时使数码管能够正确地显示时间和选手号码。用开关做键盘输出,扬声器发生提示。系统达到要求:在抢答中,只有开始后抢答才有效,如果在开始抢答前抢答为无效;抢答限定时间和回答问题的时间可是在1-99s设定;可以显示是哪位选手有效抢答和无效抢答,正确按键后有音乐提示;抢答时间和回答问题时间倒记时显示,时间完后系统自动复位;按键锁定,在有效状态下,按键无效非法[1]。

1.2         选题的目的和意义

通过这次设计,掌握51单片机的原理,了解简单多功能抢答器组成原理,醪秸莆斩喙δ芮来鹌鞯牡髡安馐苑椒ǎ岣叨帜芰团懦收系哪芰ΑM蓖ü究翁馍杓朴胱芭洹⒌魇裕岣咦约旱亩帜芰Γ桃蜒У睦砺壑叮⒌テ砺酆褪导慕岷希私舛喙δ芮来鹌鞲鞯ピ缏分涞墓叵导跋嗷ビ跋欤佣苷飞杓啤⒓扑愣ㄊ奔剖母鞲龅ピ缏贰3醪秸莆斩喙δ芮来鹌鞯牡髡安馐苑椒āL岣叨帜芰团懦收系哪芰Α�

1.3          课题研究的内容

本系统采用模块化设计智能抢答器,在抢答比赛中广泛应用,各组分别有一个抢答按钮。主持人有开始和结束、复位键。在后台主持人可以修改,抢答时间和选手回答问题的时间设置,原始状态下抢答时间为20s,回答问题时间为30s。通过加键和减键修改上述时间,改完后结束键确定。新时间开始有效,主持人按键开始后,选手开始抢答为有效,数码显示屏显示抢答时间倒计时和选手号,在最后五秒扬声器发生提示。如果主持人没有按下开始键而选手就抢答视为犯规,数码显示屏显示犯规者的代号,扬声器持续发生。主持人可按键结束,新一轮抢答开始。

通过研究并在设计验证后发现,采用单片机技术设计的抢答器与目前常用的抢答器相比,首先,电路连接简单,因为大多数功能单元都通过程序设计在单片机内部,第二,工作性能可靠,抗干扰能力优于目前抢答器。所以本研究是一个实用的工程设计,具有创新性。

本论文章节的结构和内容如下:

第一章:绪论。简要介绍了抢答器的发展现状,说明了本课题研究的内容。

第二章:抢答器系统概述。说明了抢答器的工作过程和主要功能,并定下了本课题要达到的设计目标。

第三章:抢答器的硬件电路的设计。详细描述了本课题各个组成电路单元的设计。

第四章:抢答器的软件设计,并编程序。

第五章:Proteus仿真,仿真出结果。

第六章:总结。总结课题设计,指出设计中的一些问题,提出改善的意见,并展望抢答器的未来设计。

1.4        国内外研究现状

抢答器作为一种电子产品,早已广泛应用于各种智力和知识竞赛场合,但目前所使用的抢答器有的电路较复杂不便于制作,可靠性低,实现起来很困难;有的则用一些专用的集成块,而专用集成块的购买又很困难。为适应高校等多代表队单位活动的需要而设计一个多功能抢答器,这种抢答器具有电路简单,元件普通,易于购买等优点,很好地解决了制作者制作困难和难于购买的问题。在国内外已经开始了普遍的应用[2]。

1.5         抢答器目前存在的主要问题

随着改革开放事业的不断深入,促使人们学科学、学技术、学知识的手段多种多样,抢答器作为一种工具,已广泛应用于各种智力和知识竞赛场合。但抢答器的使用频率校低,且有的要么制作复杂,要么可靠性低,减少兴致。作为一个单位若专购一台抢答器虽然在经济上可以承受,但每年使用的次数极少,往往因长期存放使(电子器件的)抢答器损坏,再购置的麻烦和及时性就会影响活动的开展。

而且目前多数抢答器存在3个不足之处[3]:第一,现场线路连接复杂。因为每个选手位于抢答现场的不同位置,每个选手与控制台之间要有长长的连接线。选手越多,连接线就越多、越乱,这些连接线不仅影响了现场的美观,而且降低了抢答器的可靠性,增加了安装的难度,甚至影响了现场人员的走动。第二,电路复杂。因为单片机只完成号码处理、计时、数据运算等功能,其它功能如选手号码的识别、译码、计分显示等仍只能通过数字集成电路完成。采用单片机扫描技术识别选手抢按号码时,电路的延迟时间较大。第三,选手抢按成功,但出现没有抢答被记录的问题。

  • 抢答器的系统概述

2.1        系统的主要功能

本系统是借用单片机采用模块化设计的八路抢答器,包括8路抢答按纽、计时显示、提示功能等(根据需要可另设或多设相关功能)、开始与结束控制按钮、时限设定、各种相关显示调控功能等(根据需要也可另设或多设相关功能)。

参赛者系统,除享有抢答按纽的权利功能外,还有人性化的提示功能和时间提示功能,也可设定由主控控制在参赛者终端表现的趣味性功能等;主控系统的控制按钮做开始与结束控制,根据活动参赛者的层次,对提前抡答者的行为设定为非法或阻隔,若设有非法抢答控制功能时,在主控处带有公示性显示的非法抡答者的台位号,对抢答限时及回答问题限时设为倒计时,并有显示提示。

系统的主要功能模块方框图如图1所示。

图1 系统主要功能模块

本系统采用模块化设计的八路抢答器,在抢答比赛中广泛应用,各组分别有一个抢答按钮。一共有8个按键输入,分别对应8路选手的抢答按键。

主持人有开始和结束键。在后台主持人可以修改,抢答时间和选手回答问题的时间设置,原始状态下抢答时间为20s,回答问题时间为30s。通过加键和减键修改上述时间,改完后结束键确定。新时间开始有效,主持人按键开始后,选手开始抢答为有效,数码显示屏显示抢答时间倒计时和选手号,在最后五秒扬声器发生提示。如果主持人没有按下开始键而选手就抢答视为犯规,数码显示屏显示犯规者的代号,扬声器持续发生。主持人可按键结束,新一轮抢答开始。

单片机是整个抢答器的核心,内部电路设计用汇编语言编写。它完成了时间参数的设定,抢按号码的译码,保存;显示;输出,抢按及答题倒计时功能等。

本设计中,有一个共阴的数码管组,四个数码管。其中两个显示时间,一个空位,一个显示抢答号码。主持人依次按下复位键(RESET),开始键后开始抢答。可以抢按:超时数码管显示“FFF”,当抢按超过规定时间或答题超过规定时间后数码管显示“FFF”。若有选手在规定时间内抢按成功,则可以答题,数码管显示抢答时间的同时也显示选手号码。若在按开始键前抢答表示违规,数码管显示“FF”并显示选手号码。

2.2         系统需求分析

1、在抢答中,只有开始后抢答才有效,如果在开始抢答前抢答为无效。

2、抢答限定时间和回答问题的时间可以在1~99s设定。

3、可以显示是哪位选手有效抢答和无效抢答,正确按键后有音乐提示。

4、抢答时间和回答问题时间倒记时显示,时间完后系统自动复位。

5、抢答限定时间内使用锦囊回答时间将加到60s。

6、按键锁定,在有效状态下,按键无效非法。

2.3        抢答器的工作流程

抢答器的基本工作原理[4]:在抢答竞赛或呼叫时,有多个信号同时或不同时送入主电路中,抢答器内部的寄存器工作,并识别、记录第一个号码,同时内部的定时器开始工作,记录有关时间并产生超时信号。在整个抢答器工作过程中,显示电路、声音电路等还要根据现场的实际情况向外电路输出相应信号。抢答器的工作流程分为:系统复位、正常流程、违例流程等几部分,如图2所示,下面分别予以介绍。

图2 抢答器工作流程

2.4        抢答器的工作过程

1、如果想调节抢答时间或答题时间,按“加一”键或“减一”键进入调节状态,此时会显示现在设定的抢答时间或回答时间值,如想加一秒按一下"加1s"键,如果想减一秒按一下“减1s”键,时间LED上会显示改变后的时间,调整范围为0~99s, 0s时再减1s会跳到99,99s时再加1s会变到0s。

2、主持人按"抢答开始"键,会有提示音,并立刻进入抢答倒计时(预设20s抢答时间),如有选手抢答,会有提示音,并会显示其号数并立刻进入回答倒计时(预设30s抢答时间),不进行抢答查询,所以只有第一个按抢答的选手有效。倒数时间到小于5s会每秒响一下提示音。

3、如倒计时期间,主持人想停止倒计时可以随时按“停止”按键,系统会自动进入准备状态,等待主持人按“抢答开始”进入下次抢答计时。

4、如果主持人未按“抢答开始”键,而有人按了抢答按键,犯规抢答,LED上不断闪烁FF和犯规号数并响个不停,直到按下“停止” 键为止。

总而言之,本课题利用AT89C51单片机及外围接口实现的抢答系统设计了抢答器,该抢答器增加了新功能、提高了系统的可靠性、简化了电路结构、节约了成本,是一个实用的工程设计。

2.5         器件选型方案及详细清单

微控制器选用ATMAL公司生产的AT89C51,该芯片货源充足,并且价格也比较便宜。如表1所示。

表1 器件选型方案的详细清单

器件名称
规格型号
数量
微处理器
AT86C51
1
芯片
74LS04
1
74HC30
1
电阻
3WTT10K
8
电容

相关推荐

  1. 基于单片机四路抢答设计

    2024-06-07 17:30:05       46 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-06-07 17:30:05       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-06-07 17:30:05       100 阅读
  3. 在Django里面运行非项目文件

    2024-06-07 17:30:05       82 阅读
  4. Python语言-面向对象

    2024-06-07 17:30:05       91 阅读

热门阅读

  1. websockets怎么工作的呢?

    2024-06-07 17:30:05       27 阅读
  2. SpringBoot整合kafka

    2024-06-07 17:30:05       31 阅读
  3. vue3+element-plus 表单校验和循环form表单校验

    2024-06-07 17:30:05       26 阅读
  4. ABC318-D

    2024-06-07 17:30:05       26 阅读
  5. 算法 | 刷题日记

    2024-06-07 17:30:05       24 阅读
  6. ERC-7401:嵌套 NFT 标准的全新篇章

    2024-06-07 17:30:05       28 阅读
  7. 浅谈云原生安全

    2024-06-07 17:30:05       31 阅读