《多路智力竞赛抢答器.doc》由会员分享,可在线阅读,更多相关《多路智力竞赛抢答器.doc(14页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、【精品文档】如有侵权,请联系网站删除,仅供学习与交流多路智力竞赛抢答器.精品文档.摘 要转眼大三即将结束,一直以来都在不停的问自己3年来到底学到了什么,我也一直很迷惘,很为自己毕业后着急。站在人来人往的校园里完全没有一个立足点去审视自己的能力,一直在等待着能自己实践的机会。我们的专业老师明白学生的心理,安排了毕业论文的选题,由学生自己选择课题,自己设计,自己制出产品。这样的一个安排我很是高兴,听到这消息我就暗暗的告诉自己一定好好努力做这次设计,我选择的课题是用单片机实现智能数字抢答器,在论文要求的基础上又增加了一些功能。关键词:80C51定时器 调试ABSTRACTIt is three is
2、 coming to an end and has been continuously ask yourself what exactly learned for three years, I have been very lost, very for himself after the graduation worry. Standing in the campus of people come and go completely without a foothold to examine his own ability, had been waiting for the chance to
3、 his practice. Our professional teachers understand the students psychology, arrange the topic of the graduation thesis, by the students themselves, their design, select subjects made their products. Such an arrangement, I am glad to hear the news I secretly tell myself must work hard to do the desi
4、gn, I chose the task is to use microcomputer intelligent digital vies to implement, in the paper based on the requirements of the increased again some function. Key words:80C51 timer debugging 目 录引言11.数字抢答器的总体设计11.1 原理图的确定11.2 抢答器的工作原理31.3 抢答器的总体设计31.4 抢答器实现功能32.硬件电路详细设计32.1硬件的选择与电路设计32.2芯片的选择32.3复位
5、电路的设计 32.4晶振电路的设计42.5 数码显示管的选择 53.软件详细设计53.1主程序的设计 53.2 显示子程序的设计 53.3定时器T0、T1中断服务程序的设计63.4 抢答处理程序的设计64.试验结果及结论 6结论7致谢7参考文献8附录引 言1、如果想调节抢答时间或答题时间,按抢答时间调节键或答题时间调节键进入调节状态,此时会显示现在设定的抢答时间或回答时间值,如想加一秒按一下加1s键,如果想减一秒按一下-1s键,时间LED上会显示改变后的时间,调整范围为0s99s, 0s时再减1s会跳到99,99s时再加1s会变到0s。2、主持人按抢答开始键,会有提示音,并立刻进入抢答倒计时(
6、预设30s抢答时间),如有选手抢答,会有提示音,并会显示其号数并立刻进入回答倒计时(预设60s抢答时间),不进行抢答查询,所以只有第一个按抢答的选手有效。倒数时间到小于5s会每秒响一下提示音。3、如倒计时期间,主持人想停止倒计时可以随时按停止按键,系统会自动进入准备状态,等待主持人按抢答开始进入下次抢答计时。4、如果主持人未按抢答开始键,而有人按了抢答按键,犯规抢答,LED上不断闪烁FF和犯规号数并响个不停,直到按下停止键为止。5、P3.0为开始抢答,P3.1为停止,p1.0-p1.7为八路抢答输入数码管段选P0口,位选P2口低3位,蜂鸣器输出为P3.6口。P3.2抢答时间调整结,P3.3回答
7、时间调整,P3.4为时间加1调整,P3.5为时间减1调整。1、数字抢答器的总体设计1.1原理图的确定在设计开始,笔者查了不少关于抢答器的资料,其大体分为2种,一种是纯硬件实现,另一种是单片机实现。由于当时觉得自己单片机学得不怎么好,用单片机实现会有难度,于是刚开始设计了两个原理图都是纯硬件实现08应电 贺小雨 图1.1原理图这是由锁存器373和一个二极管阵列驱动数码管显示组成的纯硬件抢答器,只能实现基本的抢答功能,并且元件繁多,学校实验室做的是单层板,做PCB板时布线难度比较大。当时想到了做两块PCB板。一块是前面的按键部分和锁存核心电路,一块是后面的二极管阵列连上数码管,中间用连接器连接。经
8、过多方查找资料最终确定抢答器原理图08应电 贺小雨 图1.2抢答器原理图1.2抢答器的工作原理抢答器的工作原理是利用单片机的定时器T0、T1中断完成,其余状态循环调用显示子程序,用4个共阴极LED数码管来显示,用P0口作为数码管的八个段选,用P2口中的P2.0、P2.1、P2.2、作为4个数码管其中3个位选,P1口接8个按键,提供选手抢答,P3.0-P3.5四个接四个按键,提供开始、结束、答题时间调整、枪答时间调整,加1、减1调整之用。1.3抢答器的总体设计倒计时方案方面利用MCS-51的内部的定时/计时器进行中断计时,配合软件延时实现倒计时。该方案节省硬件成本,并且能够在定时器/计数器的使用
9、、中断及程序设计方案方面得到锻炼与提高,显示方面采用穿行传输实现动态显示,该方案的硬件连接简单,但动态扫描的显示方式需占用CPU较多的时间,适用于单片机没有太多实时测控的任务场合1.4抢答器实现功能抢答功能:通过八路按键配合程序来实现抢答功能。当主持人按下抢答键开始抢答后,此时任一路按下按钮均闭锁其它各路,由程序对键盘译码并显示最先按下抢答键的路数及其当前时间。抢答限时:主持人按下抢答键后,设置5秒为抢答时间(此时间可在1-99秒之间修改)。若5秒内无人抢答,倒计时为0时发出报警,说明该抢答题目作废。此时闭锁所有抢答按键,只有当主持人再次按下抢答键开始下一次抢答方可抢答。2、硬件电路详细设计
10、2.1硬件的选择与电路设计2.2芯片的选择抢答器电路的核心是89C51单片机,其内部带有4KB的FLASH ROM,无需外扩程序存储器;抢答器没有大量的运算和暂存数据现有的128B篇内RAM已经能满足容量需求,故不需外扩片外RAM,系统配有8位8段数码显示管,管采用共阴数码管,作为时钟的显示输出。2.3复位电路的设计图2-1复位电路原理图该复位电路采用上电自动复位和手动复位两种复位方式,图中网络标号所指9连接到单片机的复位引脚。要实现复位只需在,51系列单片机的RESET引脚上加上5ms的高电平就可以了。上电复位是利用电容的充电来实现的,即上电瞬间RESET端的电位与Vcc相同,随着电容上储能
11、增加,电容电压也逐渐增大,充电电流减小,RESET端的电位。这样就会建立一个脉冲电压,调节电容与电阻的大小可对脉冲的持续时间进行调节。通常若采用12MHz的晶振时,复位元件参数为22F的电解电容和10k的电阻。按钮复位电路是通过按下复位按钮时,电源对RESET端维持两个机器周期的高电平实现复位的。2.4晶振电路的设计MSC-51单片机的定时控制功能是用时钟电路和振荡器完成的,而根据硬件电路的不同,连接方式分为内部时钟方式和外部时钟方式。本设计中采用内部时钟方式。单片机内部有一个反相放大器,XTAL1、XTAL2分别为反相放大器的输入端和输出端,外接定时反馈元件组成振荡器(内部时钟方式),产生时
12、钟送至单片机内部各元件。时钟频率越高,单片机控制器的控制节拍就越快,运算速度也就越快。一般来说单片机内部有一个带反馈的线性反相放大器,外界晶振(或接陶瓷振荡器)和电容就可组成振荡器,如图2-2所示。加电以后延时一段时间(约10ms)振荡器产生时钟,不受软件控制,图中Y1为晶振,震荡产生的时钟频率主要由Y1确定。电容C1,C2的作用有两个:一是帮助振荡器起振,二是对振荡器的频率起微调作用,典型值为30pF。晶振电路的设计如图2-2所示:图2-2晶振电路设计2.5数码显示管的选择数码显示管用来作为时间的显示输出,一般用7段数码显示管。本次设计中采用7段共阴数码显示管应用简单、可靠性高、成本低,作为
13、显示输出。连接时段选信号接在P0口的P0.0P0.6七个I/O口上,P1口是准双向I/O接口在输出驱动部分具有驱动4个TTL负载的能力,即输出电流不大于400A,所以在接电阻时选择接510限流电阻。而在位选方面采用单片机P2口的P2.0P2.2三个I/O口作为位选信号的输出口 3、软件详细设计3.1主程序的设计此程序的及时采用定时器T0和T1中断完成,其余状态循环调用显示子程序。3.2显示子程序的设计由于采用软件动态扫描实现数据显示,显示用十进制BCD码的数据对应段码存放在ROM表中。显示时,先取出70H75H某一地址中的数据,然后查得对应的显示段码从P0口输出。P2口将对应的数码管选中,就能
14、显示该地址单元的数据值。3.3定时器T0、T1中断服务程序的设计定时器T0用于响铃程序,定时器T1用于计时程序。当答题剩余5秒种时P3.6口不断取反使喇叭发出一定频率的声音,提示选手图3-2中断程序流程图3.4抢答处理程序的设计当有选手第一个按下抢答器按扭时数码管显示选手号码,开始倒计时,并锁定抢答。当在此选手之后再有选手按下按扭时无效,数码管不变。4、试验结果及结论通过仿真结果证实,该方案可行。该设计方案同过51系列单片机的P0口作为段选输出,用P2口作为位选输出,动态扫描LED显示管,显示时间。并通过接在P3.0-P3.6口的按键开关控制开始、结束、喇叭提示等功能。P1口接选手按键,控制抢
15、答。本设计实现简单,成本较低很适合我们大学生动手实践。当有选手按下按扭时,数码管显示选手号码并开始倒计时,如图所示08应电 贺小雨 图4-1仿真的结果结 论 课程设计很快结束了,其中酸甜苦辣都尝到了,在这过程,遇到问题及时通过网络查找资料,就连晚上睡觉都会时常梦到做设计。很久很久没有这样的感觉了,虽然很累,但感觉很充实,很有收获。这样的课程设计真的很有意义,第一次自己真真切切的动手设计制作产品,感觉自己学会了很多,成长了很多,让我找回了往日奋斗的激情,也许这样的机会在大学不会再有了,我会深深的记住这次,记住这次饱含我汗水的综合课程设计。这次也发现了自身很多的不足,许多的基本电路都不是很熟悉,在
16、画原理图的时候就不停的找以前的教材,以后还得多看看教材,牢记一些基本的电路,感谢各个指导老师的辛勤付出。致 谢经过自己不断的搜索努力以及各位指导老师的耐心指导和热情帮助,本设计已经基本完成。在此对指导老师和实验室的同学表示深深的感谢。通过这次毕业设计,深刻地认识到学好专业知识的重要性,也理解了理论联系实际的含义,并且检验了大学几年的学习成果。虽然在这次设计中对于知识的运用和衔接还不够熟练。但是笔者将在以后的工作和学习中继续努力、不断完善。由于自身水平有限,设计中一定存在很多不足之处,敬请各位老师批评指正。参考文献1张迎新 单片机初级教程,航空航天大学出版社,20072周润景,张丽娜 基与PRO
17、TEUS的电路及单片机仿真,航空航天大学出版社,20073刘迎春 MCS-51单片机原理及应用教程,清华大学车版社,2005-05附录主程序部分和注解如下:OKEQU 20H;抢答开始标志位RING EQU 22H;响铃标志位ORG 0000HAJMPMAINORG 0003HAJMP INT0SUBORG 000BHAJMP T0INTORG 0013HAJMP INT1SUBORG 001BHAJMP T1INTORG 0040HMAIN:MOV R1,#30;初设抢答时间为30sMOV R2,#60;初设答题时间为60sMOV TMOD,#11H;设置未定时器/模式1MOV TH0,#0
18、F0HMOV TL0,#0FFH;越高发声频率越高,越尖MOV TH1,#3CHMOV TL1,#0B0H;50ms为一次溢出中断SETB EASETB ET0SETB ET1SETB EX0SETB EX1;允许四个中断,T0/T1/INT0/INT1CLR OKCLR RINGSETB TR1SETB TR0;显示子程序,及部分注解如下:DISPLAY:MOV DPTR,#DAT1;查表显示程序,利用P0口做段选码口输出/P2低三位做位选码输出,MOV A,R3MOVC A,A+DPTRMOV P2,#0feHMOV P0,AACALL DELAYMOV DPTR,#DAT2MOV A,R
19、5MOVC A,A+DPTRMOV P2,#0fdHMOV P0,AACALL DELAYMOV A,R4MOVC A,A+DPTRMOV P2,#0fbHMOV P0,AACALL DELAYRETDAT1:DB 00h,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh,00H,71H;灭,1,2,3,4,5,6,7,8,9,灭,FDAT2:DB 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh,00H,71H第一个为零,其他与上相同,因为十位如果为零显示熄灭=TO溢出中断(响铃程序)=T0INT:MOV TH0,#0ECHMOV TL0,
20、#0FFHJNB RING,OUT;CPL P3.6;RING标志位为1时候P3.6口不断取反使喇叭发出一定频率的声音OUT:RETIT1溢出中断(计时程序):T1INT:MOV TH1,#3CHMOV TL1,#0B0HINC R0RETIEND抢答器处理程序:TRUE1: ACALL BARK;按键发声MOV A,R2MOV R6,A;抢答时间R2送R6MOV R3,#01HCLR OK;因为答题的计时不再查询抢答,所以就锁了抢答AJMP COUNTTRUE2:ACALL BARK;MOV A,R2MOV R6,AMOV R3,#02HCLR OKAJMP COUNTTRUE3:ACALL
21、 BARK;MOV A,R2MOV R6,AMOV R3,#03HCLR OKAJMP COUNTTRUE4:ACALL BARK;MOV A,R2MOV R6,AMOV R3,#04HCLR OKAJMP COUNTTRUE5:ACALL BARK;MOV A,R2MOV R6,AMOV R3,#05HCLR OKAJMP COUNTTRUE6:ACALL BARK;MOV A,R2MOV R6,AMOV R3,#06HCLR OKAJMP COUNTTRUE7:ACALL BARK;MOV A,R2MOV R6,AMOV R3,#07HCLR OKAJMP COUNTTRUE8:ACALL BARK;MOV A,R2MOV R6,AMOV R3,#08HCLR OKAJMP COUNT