您的位置:   首页>>设计与制作>>电脑抢答器设计与制作
  基于电脑的抢答器实现方法
  • 来源:
  • 作者:qdq
  • 时间:2008/2/23 10:44:30
  • 网友评论:0
  • 点击数:7648
推荐阅读   加入收藏      
                          
                             作者:应辉志        来源:电子报  

    很多竞赛活动.都需要用到抢答器.市面上有些抢答器采用小型数码管显示。这样的效果并不理想。而显示数字大点的且带计分等功能的都很贵,有的甚至上万元.只适合要求较高的场合。针对一般小规模使用,本文介绍一种低成本、基于电脑的抢答器实现方法。          
    本抢答器的原理是.选手按下按钮,单片机系统判断出选手号.然后向电脑发送数据.剩下的竞赛功能都由电脑完成。这样,硬件设计就比较简单,相对来说,造价也比较低廉。至于电脑.现在一般单位都具备,而且显示屏幕较多。本抢答器的参赛选手可达8位.当然,也可以再扩展.不过要增加一些成本,而且一般情况下也不需要太多人参加。如果规模扩大.单由电脑屏幕或大屏幕电视提供显示,是很难满足选手和现场观众看清楚题目的。本抢答器在竞赛使用过程中,还可以播放音乐或视频来活跃现场气氛,由于充分地利用了已有设备,需要新增的投入较小.而使用效果还算不错,特别适合于学校班级等小团体使用。
    一、硬件设计
    硬件设计比较简单.电路见图l。8路选手按钮信号通过光耦输入到89C5l的P2口,采用光耦隔离的原因是因为选手距离主机可能较远,在比赛现场可能有相当严重的干扰存在,通过光耦隔离后能有效滤去外部干扰。按钮可以选用电气设备上用的急停按钮,这样比较醒目,操作也很方便,而且一按即锁住.想多按几次也没用。PO口、P3.2接数码管,用于显示抢到的选手号。Pl口用于指示相关状态,如抢答允许指示灯、数据与电脑应答信号指示灯等,P3.0、P3.1接电脑串口。为节约成本,本文采用三极管电路制作,使用时也相当可靠。当然用专用IC效果更好。如果资源节约一点,由89C205l也能完成功能需要。

                               

    二、软件设计
    单片机主程序流程见图2   
                                                   
                               

    由于在串口中传递的是控制字,所传送的数据量不是很多,为可靠起见.选用了比较低的波特率,2400kbps。晶振采用11.059MHz,串口设成方式1工作.无校验、l位起始位、1位停止位的标准lO位一帧。为避免误码,在传送时,采用应答方式,当单片机传选手号数据到电脑时,电脑判断数据是否正确.正确发“P”,不正确则发“R”,且要求重发。同理,电脑发送的数据也要判断对错.不对也要重发。通过这样的协议.可最大限度地保证传送数据的完整和准确。
    三、联机调试                              
    在制作好硬件电路板.写好程序并检查无误后,进行联机调试。首先,在电脑上用串口调试程序(加串口调试助手)选好串口号,设好波特率,向单片机以字符方式发控制字。先发“T”(注意,以下字符全是大写)。若单片机板上的LED2闪一下.串口调试助手接收窗口上出现“P”(字符方式),证明系统的数据传送应是基本无误.再按下某个按钮,看电脑窗口上显示的是否为该按钮编号.数码管显示的是否正确。这两步通过后.再在电脑上试发“R”、“S”、“P”字符,观察单片机反应是否正确,若一切正常.则说明系统调试已通过。
    四、具体使用                                 
    电脑程序由VB编成.使用时需有VB环境。具体在使用时需先把文件解压到C盘根目录下.并在所在目录下按所需格式编辑好竞赛题目.并按照10分的题、20分的题、30分的题分别保存在扩展名为txt的文件中,至于每文件中有多少题目可以自定。同时也可根据个人喜好更改程序所用图片及选手照片。需要注意的是,竞赛要有一个主持人和一个电脑操作者。                                 
    打开竞赛程序.设定好相关参数,输人参赛选手的名字.接下来就是答题环节了。当在答题窗口中点显示题目按钮时.题目及选项均显示在电脑上。操作者可根据主持人读题节奏指令,在电脑上点准备回答按钮.延时3s后电脑发出允许抢答信号,单片机系统中抢答指示灯亮。此后有选手按下按钮,单片机接收输入信号后,通过计算得到选手号.在数码管上显示1秒左右,同时由串口向电脑发选手号。电脑中选手框中显示出选手号,并开始倒计时15秒.要求选手回答。选手要在规定时间内回答.操作者将其回答输入到电脑.再由电脑根据题目文件中原编好的正确答案自动判断对错,并转向相关加、减分处理程序。如不能在规定时间内回答.算是答题错误。至于答题错误要不要扣分,则可在开始前的参数设置时选定。具体功能由软件提供,在此就不再复述。

 

上一条:无        下一条:用DELPHI实现比赛用抢答器
相关文章