《多路抢答器课程设计报告.docx》由会员分享,可在线阅读,更多相关《多路抢答器课程设计报告.docx(6页珍藏版)》请在第壹文秘上搜索。
1、基于单片机的多路抢答器摘要抢答器是一种应用非常广泛的设备,在各种竞赛、抢答场合中,它能迅速、客观地分辨出最先获得发言权的选手。目前大多数抢答器均使用单片机和数字集成电路。本设计利用89C51单片机及外围接口实现多路抢答系统,利用单片机的定时器/计数器定时和记数的原理,将软、硬件有机地结合起来,使得系统能够正确地进展计时,同时使数码管能够正确地显示时间。关键词:抢答器;单片机89c51;数字集成电路;定时器/计数器AbstractResponderisakindofwidelyusedequipment,inallkindsofcompetition,itcanquicklyandobjecti
2、velyidentifytheplayersgetvoice.NowmostoftheresponderalluseSCManddigitalintegratedcircuit,ThistopicUSES89c51andperipheralinterfaceimplementationviestoanswerfirstsystem,withthehelpofthemicrocontrollertimer/countertimingandnumberprinciple,softwareandhardwareorganically,andmakesthesystemcancorrectlytoth
3、etime,atthesametimemakedigitaltubedisplaythetimecorrectly.KeyWords:Responder,89c51,Digitalintegratedcircuit,Timer/counter1.引言目前电视节目日益丰富,其中的竞赛环节也越来越多,其中抢答器是不可或缺的器材。它能准确、公正、直观地判断出第一抢答者。本次设计用AT89C51单片机作为核心控制元件,设计一个简易的抢答器,并通过PrOteUS软件设计并利用KeilC软件编辑程序,仿真验证。使系统能够完成多路抢答,且系统实用性强,判断精准,操作简单。2 .设计方案及原理本次设计的抢答过
4、程主要分为准备抢答,开场抢答,开场答题以及答题完毕四个阶段。本方案以AT89C51单片机作为主控核心,与晶振、数码管等构成二路抢答器,利用了单片机的电源电路、按键复位电路、时钟电路、定时电路等。具体系统设计方框图如图1所示。图1系统原理方框图3 .硬件设计在抢答中,只有规定开场后抢答才有效,如果在开场抢答前抢答为无效;显示灯可以显示是哪位选手有效抢答,抢答时间和答复以下问题时间倒计时显示在数码管上,时间用尽后系统自动复位。假设选手答复完毕,主持人按下准备按钮,数码管清零,可以进入下一提的抢答。具体系统电路图如图2所示。图中PLO为主持人按键,提示选手开场抢答,此时二极管DI亮。P3.0-P3.
5、1为二路抢答的输入,为选手抢答按键。PL1为主持人提示开场抢答倒计时按键,此时数码管P0.0-P0.7显示6秒倒计时。P3.6-P3.7为选手对应的提示灯,按下即亮,重复按图2系统原理电路图下无效。4 .软件设计两路抢答器由两个按键控制,程序一致判断是否有按键按下,假设没有按键按下那么循环判断,直到有按键按下后,立即把通过按键输入的信号储存起来然后对2路输入信号进展扫描判断,发光二极管亮起,表示抢答成功。软件设计利用中断系统的基本构成原理编写中断服程序,其信号由按键电路提供,由CPU响应中断,并输出响应。用到了定时器模块、显示时间模块、计数器模块等。程序流程图如图3所示。图3系统流程图5 .系
6、统仿真及实际调试开场抢答倒计时仿真图如图4所示。开场答题倒计时仿真图如图5所示。图4开场抢答倒计时仿真图图5开场答题倒计时仿真图6 .总结本次课程设计的题目是基于单片机的多路抢答器设计,在设计的过程中出现了以下几种问题。例如利用PrOteUS软件仿真的时候屡次出现数码管不亮的情况,并且复位键按下电路无反响的现象,通过对程序的调试并重新装入才解决了数码管不亮的问题。而复位键不灵敏的问题那么是因为时间过短导致复位显示不明显。此外,开场的时候并没有表达出多路抢答,后来在教师的指导下添加了两路电路才使得本次课程设计圆满完成。通过查阅相关资料,许多问题最终得到解决。而这些才是作为一名工科学生最珍贵的财富
7、。参考文献1王思明.张金敏.苟军年.张鑫.杨乔礼.单片机原理及应用系统设计M.北京:科学出版社,2012.9:90/51.李华.王思明.张金敏.单片机原理及应用M.兰州:兰州大学出版社,2001.5:59-86.3吕铭.部德才.徐明达.单片机串行通讯在抢答器设计中的应用J.齐齐哈尔大学学报.2011(4):73-75.4宋春华.江涛.王贵恩.裴小英.基于单片机控制的数字抢答器J.河南机电高等专科学校学报.2005(5):32-33.5杨居义杨尧.杨晓琴.王益斌单片机课程设计指导M.北京:清华大学出版社,2009.9:170-174.附录源程序代码#includeSbitStart=P10;sb
8、itplease=Pll;sbitStop=Pl2;sbitans=Pl3;sbitpl=P30;sbitp2=P3l;sbitlight1=P36;sbitlighl2=P37;sbitS=P20;sbitG=P21;unsignedcharcodetime10=0xc0,0xf9,0xa4,OxbO,0x99,0x92,0x82,0xf8,0x80,0x90);unsignedcharcont=0,shi,ge,i;unsignedcharT;答题时间voidinter()interrupt1(TH0=(65536-50000)256;TL0=(65536-50000)%256;cont+
9、;)main()(while(l)(1.待机阶段while(start=1)(S=l;G=O;P0=time0;for(i=0;i100;i+);PO=Oxff;S=O;G=l;P0=time0;for(i=0;i100;i+);PO=Oxff;)2.抢答阶段while(l)1).开场抢答ans=O;/判断那个选手抢到题while(l)(if(pI=O)(Iightl=O;break;if(p2=0)1light2=0;break;)/制止其他选手再选题while(please=1);2).开场答题ans=l;T=6;TMOD=OxOI;TH0=(65536-50000)256;TL0=(65536-50000)%256;EA=I;ETO=I;TRO=I;while(T200&slop=l)(shi=T10;ge=T%10;S=I;G=O;PO=timeshi;for(i=0;il(X);i+);PO=Oxff;S=0;G=l;PO=timege;for(i=0;i20)(cont=0;T-;3).停顿答题P3=0xff;break;