邵阳学院信息工程系 曹文俊 王少杰
基于STC12C5A60S2单片机的6路抢答器设计
邵阳学院信息工程系 曹文俊 王少杰
基于STC12C5A60S2单片机的6路抢答器设计提出了用STC12C5A60S21单片机为核心控制单元,设计一个简易基于STC12C5A60S2单片机的6路抢答器,基于STC12C5A60S2单片机的6路抢答器设计以STC12C5A60S2单片机作为主控核心,与晶振、数码管、蜂鸣器等构成六路抢答器,利用了STC12C5A60S2单片机的自带定时器、按键复位电路、时钟电路、定时/中断等电路设计的基于STC12C5A60S2单片机的6路抢答器具有实时显示抢答选手的号码和抢答时间的特点,还有复位电路,使其再开始新的一轮的答题和比赛,同时还利用C51语言编程,使其实现一些基于STC12C5A60S2单片机的6路抢答器的基本功能。
STC12C5A60S2单片机;6路抢答器;C51语言
改革开放后,随着我国的经济文化的快速发展,我国的一些智力竞赛、娱乐项目也越来越多,这就需要一个能在人非常多的情况下争取到发言或演示的装置,基于STC12C5A60S2单片机的6路抢答器就满足了这样的要求,近年来由于我国数字电子技术的发展,数字抢答器也得到了发展,因为数字抢答器设计简单,功能稳定的优点被广泛应用于各种竞赛项目中。
图1 功能模块图
基于STC12C5A60S2单片机的6路抢答器总体方案设计各个功能模块图如图1所示。
STC12C5A60S2单片机当接收到按键扫描的信息确定是否开始启动本轮抢答,基于STC12C5A60S2单片机的6路抢答器的STC-12C5A60S2单片机启动声音模块,蜂鸣器发声一段时间停止发声,与此同时选手开始抢答,基于STC12C5A60S2单片机的6路抢答器的STC12C5A60S2单片机启动LED显示模块,显示抢答倒计时,和各选手的的分数,整个过程基于STC12C5A60S2单片机的6路抢答器的按键扫描一直执行,当有选手按下抢答键,基于STC12C5A60S2单片机的6路抢答器的按键扫描终止对选手按键的扫描,基于STC12C5A60S2单片机的6路抢答器的STC12C5A60S2单片机启动声音模块提示有选手按键,并将该选手的序号发送到LED显示。然后,基于STC12C5A60S2单片机的6路抢答器的按键扫描对加减分按键扫描,按键每按下一次对相应的选手对应的数码管上显示的分数加减一,直到抢答复位键的按下,开始新的一轮循环。当倒计时结束时选手仍然没有按键,基于STC12C5A60S2单片机的6路抢答器的STC12C5A60S2单片机启动声音模块,提示本轮抢答结束。
基于STC12C5A60S2单片机的6路抢答器的软件设计首先设置STC12C5A60S2单片机的定时器,然后检测基于STC12C5A60S2单片机的6路抢答器的抢答开始建是否按下,其次启动基于STC-12C5A60S2单片机的6路抢答器的定时器、蜂鸣器,然后在检测基于STC12C5A60S2单片机的6路抢答器的抢答键是否按下,基于STC12C5A60S2单片机的6路抢答器显示选手编号,然后检测基于STC12C5A60S2单片机的6路抢答器的加分键或者减分键是否按下,然后对应的基于STC12C5A60S2单片机的6路抢答器的数码管加一或者减一,然后检测基于STC12C5A60S2单片机的6路抢答器的抢答复位键是否按下,返回设置基于STC12C5A60S2单片机的6路抢答器的STC12C5A60S2单片机的定时器。而编程采用C51语言,单片机C51语言是由C语言继承而来的。和C语言不同的是,C51语言运行于单片机平台,而C语言则运行于普通的桌面平台。C51语言具有C语言结构清晰的优点,基于STC12C5A60S2单片机的6路抢答器采用C语言的模块化设计,使得整个编程简单明了。
基于STC12C5A60S2单片机的6路抢答器的系统调试包括基于STC12C5A60S2单片机的6路抢答器的系统硬件调试和基于STC-12C5A60S2单片机的6路抢答器的系统软件调试,而且两者是密不可分的。设计好基于STC12C5A60S2单片机的6路抢答器的硬件电路和基于STC12C5A60S2单片机的6路抢答器软件程序,只有经过联合调试,才能验证基于STC12C5A60S2单片机的6路抢答器的其正确性,基于STC12C5A60S2单片机的6路抢答器软硬件是否达到设计任务的要求,也只有经过基于STC12C5A60S2单片机的6路抢答器的系统调试,才能发现基于STC12C5A60S2单片机的6路抢答器的系统调试的问题并加以解决、完善,最终开发成实用产品。基于STC12C5A60S2单片机的6路抢答器的调试方法:先对基于STC12C5A60S2单片机的6路抢答器进行仿真,达到基于STC-12C5A60S2单片机的6路抢答器的预期效果,基于STC12C5A60S2单片机的6路抢答器的设计最终方案是采用数码管显示屏实现显示功能,最初基于STC12C5A60S2单片机的6路抢答器的数码管显示不正常,亮度不够。通过调试发现这是由于数码管的驱动电流不够。基于STC12C5A60S2单片机的6路抢答器的蜂鸣器发声异常:蜂鸣器要发出声音是通过单片机的P1^0输出低电平来实现,最初仿真的时候用的是喇叭,它是需要STC12C5A60S2单片机提供一个具有一定频率的方波信号来发声,所以一直不会发出声音,修改基于STC12C5A60S2单片机的6路抢答器的程序后,解决了该问题。
基于STC12C5A60S2单片机的6路抢答器实用性强、判断精确、操作简单、扩展功能强。基于STC12C5A60S2单片机的6路抢答器的功能实现是比赛开始,主持人读完题之后按下基于STC12C5A60S2单片机的6路抢答器的抢答键,声音提示,提示音结束后抢答倒计时开始,此时基于STC12C5A60S2单片机的6路抢答器的数码管开始进行时间的倒计时,直到有一个选手抢答,选手按下基于STC12C5A60S2单片机的6路抢答器的抢答键时有声音提示并在对应基于STC12C5A60S2单片机的6路抢答器的数码管上显示出该选手的编号和抢答所剩的时间。如果在规定的10s时间内没有做出抢答,基于STC12C5A60S2单片机的6路抢答器自动鸣笛提示本轮抢答结束,则此题作废,即开始重新一轮的抢答。下一轮抢答前先将基于STC12C5A60S2单片机的6路抢答器的时间归零,再按下基于STC12C5A60S2单片机的6路抢答器的抢答键即开始。抢答者回答正确后,主持人可按下基于STC-12C5A60S2单片机的6路抢答器的加分键,对应于选手编号在基于STC12C5A60S2单片机的6路抢答器的数码管显示数字就增加,反之,抢答者回答错误后,在该选手的得分数不为0时,主持人可按下基于STC12C5A60S2单片机的6路抢答器的减分键。
[1]马亦男.基于AT89C51单片机的简易五路抢答器的Proteus仿真设计与实现[J].信息化研究,2015(03):284.
[2]周功明,周陈琛.基于单片机AT89C2051的九路多功能智力竞赛抢答器的设计[J].现代电子技术,2006(20):7.
[3]康丽杰,康迪.基于单片机的8路抢答器简单设计[J].信息系统工程,2010(02):1394.
[4]邹海珍.《4路数字显示抢答器》的教学设计——关于探讨Protues仿真软件在《单片机原理及应用》中的应用[J].科技视界,2014(19):57.
[5]曲瑞超.学习汇编语言的重要性[J].赤峰学院学报(自然科学版),2010(01):151.