【摘要】该智能抢答器以51单片机为核心控制器件,通过串行通信,将主机与8路从机连接,实现了有效抢答信号的识别显示、犯规选手识别显示、不同时长的抢答倒计时、不同时长的答题倒计时、提示报警等功能。文章同时给出了系统的硬件原理图和部分程序框图。样机运行效果良好,可广泛应用于智力竞赛等公开竞争场合。

【关键词】单片机;抢答器;串行通信

1.引言

抢答器广泛应用在学校和企事业单位举行的各种竞赛、抢答活动中,它能通过指示灯显示、语音提醒、数字显示、警示显示等手段迅速、准确、公正、直观地判断出最先获得发言权的选手。本文介绍一种以51单片机为核心,通过串行通信方式实现的八路抢答器系统,具有结构简单、功能强大、可靠性好、实用性强的特点。

2.抢答器的功能

本抢答器系统可实现以下功能:

(1)抢答功能:抢答器设有主持人控制的抢答允许键,当主持人按键前,系统不断扫描选手按键情况,若有人按键视为抢答犯规并蜂鸣器报警且显示其号码;只有主持人按下抢答开始键后(有蜂鸣器提示音),才允许各组选手开始抢答,同时显示最先按下键的组号,并屏蔽其它各路选手按键信号。若出现多个选手同时按键的情况,则通过随机程序任意选一组。

(2)抢答限时:系统可事先预置l~99秒之间的抢答限时时间,默认10秒,主持人按下抢答允许键后,若10秒后无人抢答,倒计时为0时蜂鸣器报警,说明该抢答题目作废。此时屏蔽所有抢答按键,只有当主持人再次按下抢答键后,开始下一轮抢答。

(3)答题限时:系统可事先预置l~99秒之间的答题时间,默认时间为30秒,当主持人按下开始答题按钮时,开始倒计时,当倒计时为0时发出报警,说明时间到,显示返回当前选手号。

(4)计分功能:答题结束时,当按下加、减计分键后,可将预设的分值通过串行通信的方式传给选手端并进行计分显示,分值可在l~999之间设置,默认为10分。

(5)纠错功能:当发现选手计分有误或某选手需要奖励惩罚时,可单独对其分值进行加减操作。

(6)设定功能:按下设定键后,可按顺序设置抢答限时时间、答题限时时间和计分分值,也可选择默认值。

3.抢答器的硬件设计

本设计在硬件结构上,一共可分为3个独立电路:主持人显示部分、主持人主机部分、选手从机部分。其中主持人主机部分和选手从机部分都是以51单片机为核心控制器设计的,并通过串口采取多机通信方式进行双向交互,从而达到分别计分的功能。另外考虑到数码管体积比较大,高亮度显示需要的电流也比较大,所以主机和从机的显示部分都是由可控制的光电耦合开关TLP521与高电压大电流八达林顿晶体管陈列ULN2803的组合进行控制显示。各部分介绍如下:

3.1 主持人主机部分

主持人主机部分原理图如图1。图中P0口为8路选手的抢答按键输入端;P1.0为蜂鸣器驱动输出端,P1.1~P1.4和P3.3(INT1)为主持人按键,功能分别是S0为带自锁的按键,定义为加减状态按键,S1定义为主持人允许按键,S2定义为分数修改按键,S3定义为确认按键,S4定义为修正按键。(用于在非正常情况下,结合按键S0和S2给选手进行分数调整)。其中按键S0和S2为复合功能按键,通过软件设计,在不同的时段有不同的定义功能,在初始阶段用来设置预置时间或预置分值,在抢答结束时用来计分。P1.5~P1.7未使用,预留;P2.0~P2.6口用于数码管段码显示输出;TXD、RXD为串行口通信引脚;J1~J8表示8个RJ-45接口,应用时将电源信号、选手抢答信号及串行口线通过带水晶头的网线与选手从机连接;J9为排线插口,用于与显示部分通过排线连接。

图1 主持人主机部分原理图

3.2 主持人显示部分

此部分为主持人主机显示电路,为了便于设计,我们将显示部分从主机中分离出来,通过排线与主机相连,构成整个主持人部分。原理图如图2所示。

图2 主持人显示部分原理图

图3 选手部分原理图

3.3 选手部分

选手部分主要有单片机控制器、显示电路与按键共同构成,原理图如图3。图中S0为选手抢答按键,是抢答的触发信号发生源,选手部分不能直接对本机进行信号控制,只有通过向主机发送信号后,由主机进行处理控制;J0为RJ-45接口,应用时通过网线与主持人主机的对应端口连接,接受主机部分提供的电源及通过串口传送的信息;显示电路主要显示选手的分值。

4.抢答器的软件设计

4.1 主持人模块

主持人部分软件设计流程,主要包含以下的几个功能子程序:

(1)显示子程序

在本设计中,显示部分是采取动态扫描方式。由单片机P2口作为段码的输出端口(P2.0~P2.6),P1.5~P1.7作为选位端。经过软件译码后,通过I/O显示到数码管上。可以在设置、抢答、答题、计时、查询等不同时段显示不同含义的信息。

(2)键盘扫描子程序

该部分主要扫描选手按键及主机的功能键,并修改相应的键值内容,其中功能键是分时复用的,不同时段不同功能。

(3)键值处理子程序

此子程序根据不同时段键盘扫描所取得的键值作出相应处理。主要有设置、抢答、加减分、送分、查询等功能标志。

(4)警报功能子程序

警报功能主要体现于主持人发出的开始抢答信号、限定时间到给选手的提醒信号、选手在抢答的过程中,有违规现象时的标志信号。

(5)倒计时功能子程序

倒计时功能主要是用于抢答时间和答题时间的倒计时,由主持人设定好时间后,主持人启动抢答允许后或者允许回答后,立即进入倒计时。并在最后的10秒钟内,每秒各响一下,为选手作为提示的警报。

(6)随机选取功能子程序

当在抢答时,有可能是不只一位选手进行抢答。当出现两位或以上的选手进行抢答时,为了对所有的选手都能有公平的抢答机会,将由系统通过此功能,在已进行抢答的选手当中随机选取其中的一位。

(7)违规处理和超时处理子程序

在整个抢答的过程中,当出现非正常流程时,比如当主持人还没有允许抢答时,选手进行抢答,即为违规。程序将立刻中止当前的程序,跳入违规处理程序,对犯规选手进行减分操作;在允许抢答的过程中,始终没有一位选手进行抢答。当出现这种情况时,系统将中止往下的程序,跳入超时处理程序中,进行下一轮抢答。

(8)串行通信子程序

此子程序主要实现主持人主机与选手从机的交互功能,实现将分值信息无误地传送给选手从机。另外还有中断子程序,在出现突发问题时,按下修正键进入中断程序,可以进行时间设置、分值设置或选手计分修正等,在此过程中,整个抢答流程将会被停止。

4.2 选手部分

选手部分主要是8台从机,每台从机事先定义好自己的编号,应用时与选手组号相对应。从机主要是通过串行口接收从主持人主机接受发送过来的数据帧,首先是判断是否属于本机的信号,如果若不是,则丢弃数据帧,继续等待;如果是,则提取数据帧信息,判断加或减的分值,并更新本机的信息,执行计算和记录此号选手的总分,显示到选手面前的数码管上。选手部分程序相对简单些,其流程图略。

5.总结

本抢答器是基于不定场地的实际需求没有采用无线通讯设计,主持人主机和选手从机都配有RJ-48网线插口,当学生举行抢答活动时,随便找一个教室,将主机和从机用8根带水晶头的网线连接即可,因为主机和从机公用一组电源,所以本抢答系统对电源要求不高。经对多次实践检验,本抢答器的设计合理、功能可靠达到了设计的预期目标。

参考文献

[1]戴佳,戴卫恒.51单片机C语言应用程序设计实例精讲[M].北京:电子工业出版社,2006,4.

[2]程相波,卫安军.基于MCS-51单片机的八路抢答器设计方法研究[J].北京工业职业技术学院学报,2007,4.

作者简介:张军涛(1977―),男,工程硕士,广东松山职业技术学院电气系讲师。

抢答器c语言程序设计,基于单片机的智能抢答器设计与实现相关推荐

  1. 四路抢答器c语言编程,基于单片机的四路抢答器设计

    基于单片机的四路抢答器设计 课程设计(论文) 题 目 名 称 多路数字抢答器设计 课 程 名 称 单片机原理及其应用 学 生 姓 名 学 号 系 .专 业 指 导 教 师 2013年 6月 24日 摘 ...

  2. 单片机6路抢答器c语言程序设计,基于单片机的抢答器设计(最终版)最新版

    <基于单片机的抢答器设计.doc>由会员分享,可免费在线阅读全文,更多与<基于单片机的抢答器设计(最终版)>相关文档资源请在帮帮文库(www.woc88.com)数亿文档库存里 ...

  3. 基于单片机的智能宠物喂食器设计

     word完整版可点击如下下载>>>>>>>> 基于单片机的智能宠物喂食器设计-硬件开发文档类资源-CSDN下载内容包括详细设计文档word版,附带开题 ...

  4. lcd显示屏c语言程序设计,基于单片机的LCD显示器控制的设计.doc

    基于单片机的LCD显示器控制的设计 PAGE 17基于单片机的LCD显示器控制设计摘要:LCD液晶显示已经是人机界面的关键技术.本文对基于单片机的LCM液晶显示模块控制系统进行了研究.首先在绪论中介绍 ...

  5. 智能窗帘传感器c语言程序,基于单片机的智能窗帘控制系统设计(附程序代码)

    基于单片机的智能窗帘控制系统设计(附程序代码)(论文18000字,程序代码) 摘要:二十一世纪初以来,科学技术不断发展,智能家居涌现于各家各户,人们越来越重视生活质量的提高.但是传统的手动开合窗帘耗时 ...

  6. 遥控窗帘c语言程序,基于单片机的红外遥控窗帘设计论文(含c语言源程序) 本科毕业论文(设计).doc...

    基于单片机的红外遥控窗帘设计论文(含c语言源程序) 本科毕业论文(设计) 摘 要 随着电子技术和自动化技术的发展,人们对生活质量的要求越来越高.家用电器产品也在不断的更新换代.从始初的晶体管.到电子管 ...

  7. 遥控窗帘c语言程序,基于单片机的红外遥控窗帘设计论文(含c语言源程序) 本科毕业论文.doc...

    基于单片机的红外遥控窗帘设计论文(含c语言源程序) 本科毕业论文 摘 要 随着电子技术和自动化技术的发展,人们对生活质量的要求越来越高.家用电器产品也在不断的更新换代.从始初的晶体管.到电子管:由模拟 ...

  8. 有温度传感器的风机控制系统C语言,毕业论文--基于单片机的工业风机控制器设计与实现.doc...

    大连东软信息学院 本科毕业设计(论文) 论文题目 论文题目:基于单片机的工业风机控制器设计与实现 系 所: 电子工程系 专 业: 电子信息工程(嵌入式系统工程方向) 学生姓名: 学生学号: 指导教师: ...

  9. 基于单片机的智能储存柜的设计

    1绪论 1.1课题研究背景及意义 存储柜是在公共场合十分常见的设备,一般分为机械式和电子式两种.机械式存储柜采用的是传统的机械锁构架,使用者凭借提供的钥匙开关储存柜.这一系统的缺点非常明显,如果钥匙丢 ...

最新文章

  1. Windows 7加域操作手册下
  2. (18)打鸡儿教你Vue.js
  3. 8个我希望早点意识到的学生思维
  4. 打印 Python 的一切 —— pprint beeprint
  5. java学习路线_java学习路线_我的入坑路
  6. java 获取ftp路径_Java Source 根据输入 ftp 地址 账号 密码 路径 读取提供路径下的文件...
  7. 你的护城河在哪?老程序员的一些2016感悟
  8. SQLite 3.30.0 发布,世界上使用量最大的数据库引擎
  9. Python回归 岭回归(Ridge Regression)
  10. 游戏中用户升级的设计
  11. 【python问题系列--4】ValueError: operands could not be broadcast together with shapes (100,3) (3,1)...
  12. 北大生物信息学学习(2) 生物学及生物学信息学的发展
  13. python无法启动此程序因为_(python shell怎么用)为啥我按照python安装教程,总说无法启动此程序,因为计算机中丢失?...
  14. 将xml类型的excel文件转换为标准的Excel格式文件
  15. 如何开启刷题,蓝桥杯练习系统
  16. phpword生成图表
  17. win11怎么隐藏任务栏图标?
  18. 服务器的安全配置技巧总结
  19. markdown格式,默写
  20. 歌礼与先声签订利托那韦片供应协议;索迪斯华东物流新仓于上海松江区开业 | 美通企业日报...

热门文章

  1. 使用WindowsLiveWriter发布51cto博客
  2. python全栈学习--day45(前端HTML)
  3. C中kbhit()和getch()以及gets()和getchar()的用法
  4. 关于H5页面在iPhoneX刘海屏适配(转)
  5. 合成大西瓜漏洞作弊详解,教你如何生成三个大西瓜
  6. 关于消防系统安装的一些规范
  7. 滴滴android wear,滴滴货运app下载_滴滴货运apk最新安卓版下载v5.4.0_3DM手游
  8. 虚拟机与物理主机设置为同一ip字段
  9. wps斜杠日期格式_wps表格,怎样将输入的日期间隔斜线改为横线?
  10. 2022年10月deepin 20.7.1 谈谈我们的N卡驱动开发心得