单片机技术课程设计说明书-电子智能抢答器设计.doc

上传人:李主任 文档编号:3262492 上传时间:2019-08-06 格式:DOC 页数:21 大小:625.52KB
返回 下载 相关 举报
单片机技术课程设计说明书-电子智能抢答器设计.doc_第1页
第1页 / 共21页
单片机技术课程设计说明书-电子智能抢答器设计.doc_第2页
第2页 / 共21页
单片机技术课程设计说明书-电子智能抢答器设计.doc_第3页
第3页 / 共21页
单片机技术课程设计说明书-电子智能抢答器设计.doc_第4页
第4页 / 共21页
单片机技术课程设计说明书-电子智能抢答器设计.doc_第5页
第5页 / 共21页
点击查看更多>>
资源描述

《单片机技术课程设计说明书-电子智能抢答器设计.doc》由会员分享,可在线阅读,更多相关《单片机技术课程设计说明书-电子智能抢答器设计.doc(21页珍藏版)》请在三一文库上搜索。

1、 单片机技术课程设计说明书 抢答器系 、 部: 电信 学生姓名: 指导教师: 职称 副教授 专 业: 自动化 班 级: 自本 0804 完成时间: 2010-12-26 摘 要电子智能抢答器在抢答过程中,为了知道哪一组或哪一位选手先答题,必须要设计一个系统来完成这个任务。本设计使用AT89S52单片机来设计智能抢答器,组数可以在八组以内任意使用,并且具有倒计时和时间设置及报警功能。利用AT89S52单片机对信号的锁存,显示等功能,分别从软件和硬件两方面阐述该控制系统的设计方法,并经过调试和运行使该系统达到预期目标,使其具有方应快,功能齐全,实用性强的特点。【关键词】8路;抢答器;设计;定时;计

2、数;报警ABSTRACTIn this paper ,the electric circuit and designing thought of an answering racer based on the common-used series of 89C52 with 8-wire is introduced,and its function is also described, The answering races function includes timing,counting,and alarming,besides the basic function of ansering

3、 racer,the host sets the provided time for the answering race through the time-setting switch,after this the system will count down the time automatically. If anybody ansswer the question on time,the counting of time will stop; If nobody answer the question on time ,the alarm will give out some soun

4、d,helping the host know the race om this turn is of no use ,so the function of alarming iss achieved.【Keywords】8-wire;answering racer;design;timing;counting;alarming目 录第1章 引 言 4 1.1 八路抢答器的概述 4 1.2 本设计主要任务 4 1.3 系统主要功能 4第2章 系统硬件设计 52.1 芯片的选择 52.2 工作原理 52.3 系统的硬件构成及功能 62.3.1抢答器的电路图 62.3.2单元电路设计 72.3.3

5、报警电路设计 8第3章 系统软件设计 83.1 系统主程序设计 93.2 抢答器的源程序 10 第4章 系统软件仿真 15 4.1 kei仿真 154.2 protues仿真164.3 PCB图 17第5章 技术指标及故障处理 185.1 主要技术参数 185.2 使用说明 185.3 常见故障 18心得体会 19参考文献 20 特别感谢 20第1章 引 言当今的社会竞争日益激烈,选拔人才,评选优胜,知识竞赛之类的活动愈加频繁,那么也就必然离不开抢答器。而现在的抢答器有着数字化,智能化的方向发展,这就必然提高了抢答器的成本。鉴于现在小规模的知识竞赛越来越多,操作简单,经济实用的小型抢答器必将大

6、有市场。本抢答器通过十分巧妙的设计仅用两块数字芯片便实现了数显抢答的功能,与其他抢答器电路相比较有分辨时间极短、结构清晰,成本低、制作方便等优点,并且还有防作弊功能。因此,我们制作了这款简易八路抢答器屏弃了成本高,体积大,而且操作复杂。我们采用了数字显示器直接指示,自动锁存显示结果,并自动复位的设计思想,因而本抢答器具有显示直观,不需要人干预的特点。而且在显示时抢答器会发出叮咚声使效果更为生动。工厂、学校和电视台等单位常举办各种智力竞赛, 抢答记分器是必要设备。1.1八路抢答器的概述本人设计的八路数显抢答器具有电路简单、操作方便、灵敏可靠等优点,经使用效果良好的抢答器,它由8个发射器和1个接收

7、器组成,可用于8组或8组以下的智力竞赛中。比赛前,将参赛组从0至7编号,每组发给对应的一个发射器。将接收器放于各组中央或前方。主持人按一下启动键后,抢答开始。此后,哪一组最先按下发射器上的抢答键,接收器就立即显示该组的组号并锁定,同时发出3次清脆的“叮咚”声。以后,按下任何一路抢答键均不起反映。只有主持人再次按动启动键后,才能进行下一次抢答该电路由直流稳压电源、抢答器、倒计时报警与电子计分四部分组成。1.2本设计任务及要求任务要求:根据现有的XL400实验板的电路与原理设计抢答器电路图,电路要求有4位LED数码管和8个输入按键和一个小喇叭。4位数码管输出显示信息,喇叭输出声音提示信息,8个按键

8、作为选手的抢答控制或其它复用控制。1.3系统主要功能A:系统运行初始状态是显示你的最后3位学号B:按主持人按键,响铃提示进入显示抢答题30秒倒计时。 a、30秒期间选手选题,显示选手号和进入60s答题倒计时,0s响铃结束,显示开始状态的学号。 b、30秒期间选手不选题,则0s响铃结束,显示开始状态的学号。第2章 系统硬件设计2.1芯片的选择本设计使用到的元器件包括:AT89S52芯片、数码LED显示器、七段LED数码管的译码。其中AT89S52是系统的核心,它主要负责控制各个部分的协调工作。在其外围接上复位电路,上拉电阻,数码管,按钮以及振荡器。P1.7为开始停止键,p1.0-p1.7为八路抢

9、答输入, 数码管段选P0口,位选P2口,蜂鸣器输出为P3.3口。2.2工作原理基于这个设计的上述要求,根据功能要求,须设计有抢答电路、译码显示电路、主持人控制电路、定时电路、报警电路,各个电路都有其自己的功能。通过复位按键FW,电路进入就绪状态,等待抢答。然后再由主持人发布抢答命令(按下P1.7按键)同时发光二极管随即变亮,当看到二极管亮,进入倒计时状态和抢答状态。在电路中“1-8”为8路抢答器的8个按键,如果有人按下按键,程序就会判断是谁先按下的,然后从P2口输出抢答者号码的七段码值,经GAL16V8驱动,送到码管显示,并封锁键盘,保持刚才按键按下时刻的时间,禁止其他人按键的输入,从而实现了

10、抢答的功能。如果在设定的时间中没有一个人按下按键,一到时间,则产生报警信号已经超时,不可以抢答。当要进行下一次的抢答时,由主持人先按一下复位按键P1.7,电路复位,进入下一次抢答的就绪状态。AT89C52的管脚图如下示:2.3系统的硬件构成及功能2.3.1 抢答器的电路框图 如图11、1所示为电路框图。其工作原理为:接通电源后,主持人将开关拨到“清除”状态,抢答器处于禁止状态,编号显示器灭灯,定时器显示设定时间;主持人将开关置,“开始”状态,宣布“开始”抢答器工作。定时器倒计时,扬声器给出声响提示。选手在定时时间内抢答时,抢答器完成:优先判断、编号锁存、编号显示、扬声器提示。当一轮抢答之后,定

11、时器停止、禁止二次抢答、定时器显示剩余时间。如果再次抢答必须由主持人再次操作开始、停止状态开关。图11.1抢答器框图图11.2抢答电路的接口电路2.3.2 单元电路设计(1)抢答器电路参考电路如图11.2所示。该电路完成两个功能:一是分辨出选手按键的先后,并锁存优先抢答者的编号,同时译码显示电路显示编号;二是禁止其他选手按键操作无效。如有再次抢答需由主持人将S开关重新置,“清除”然后再进行下一次抢答。(2)时序控制电路设计时序控制电路是抢答器设计的关键,它要完成以下功能:a.主持人将控制开关拨到开始位置时,扬声器发声,抢答电路和定时电路进人正常抢答工作状态。 b.当参赛选手按动抢答键时,扬声器

12、发声,抢答电路和定时电路停止工作。(3)复位电路的设计外部中断和内部中断并存,单片机硬件复位端,只要持续4个机器周期的高电平即可实现复位,硬件复位后的各状态可知寄存器以及存储器的值都恢复到了初始值,因为本设计中功能中有倒计时时间的记忆功能,所以不能对单片机进行硬件复位,只能用软件复位,软件复位实际上就是当程序执行完之后,将程序通过一条跳转指令让它完成复位。复位电路如下图示:(3)外部震荡电路外部震荡电路单片机必须在AT89C52的驱动下才能工作,在单片机内部有一个时钟震荡电路,只需要外接一个振荡器就能产生一定的时钟信号送到单片机内部的各个单元,外部震荡电路如下图。图11.3外部震荡电路2.3.

13、3报警电路设计报警电路用于报警,当遇到报警信号时,发出警报。一般喇叭是一种电感性图11.4报警电路图。8952驱动喇叭的信号为各种频率的脉冲。因此,最简单的喇叭驱动方式就是利用达林顿晶体管,或者以两个常用的小晶体管连接成达林顿架势。在右图中电阻R为限流电阻,在此利用晶体管的高电流增益,以达到电路快速饱和的目的。不过,如果要由P0输出到此电路,还需要连接一个10K的上拉电阻。选手在设定的时间内抢答时,实现:优先判断、编号锁存、编号显示、扬声器提示。当一轮抢答之后,定时器停止、禁止二次抢答、定时器显示剩余时间。如果再次抢答必须由主持人再次*作清除和开始状态开关。图面是数字抢答器的报警电路图。其中5

14、55构成多谐振荡器,振荡频率fo143(RI2R2)C,其输出信号经三极管推动扬声器。PR为控制信号,当PR为高电平时,多谐振荡器工作,反之,电路停振。图11.4报警电路第3章 系统软件设计3.1系统主程序设计为了能够达到抢答的公平、公正、合理,应该在主持人发布抢答命令之前必须先设定抢答的时间,因而在编开始抢答前的程序得先编写设定时间的程序,当时间设好了之后,主持人发布抢答命令按下P1.7按键,程序开始打开定时中断开始倒计时,然后调用键盘扫描子程序,编写键盘扫描程序。当在扫描到有人按下了答题键,马上关闭T0、调用显示程序、封锁键盘。(1)主程序流程图主程序设置抢答时间和回答问题时间定时器及并行

15、口初始化将时间计数器及启动标志值1开中断采并行口数据为0吗?启动标志=1吗?判断抢答组号将抢答组发光二极管点亮判断哪一组为抢答组将抢答组号送显示抢答时间到了吗?输出响铃信号提示超时继续抢答比赛吗?系统返回NYYYNYN3.2主程序清单OK EQU 20H;抢答开始标志位RING EQU 22H;响铃标志位ORG 0000H AJMP MAIN ORG 000BH AJMP T0INT ORG 001BHAJMP T1INTORG 0040HMAIN: MOV R1,#30;初设抢答时间为30sMOV R2,#60;初设答题时间为60sMOV TMOD,#11H;设置未定时器/模式1MOV TH

16、0,#0F0HMOV TL0,#0FFH;越高发声频率越高,越尖MOV TH1,#3CHMOV TL1,#0B0H;50ms为一次溢出中断SETB EA SETB ET0 SETB ET1 SETB EX0SETB EX1;允许四个中断,T0/T1/INT0/INT1CLR OK CLR RING SETB TR1SETB TR0;一开始就运行定时器,以开始显示103.如果想重新计数,重置TH1/TL1就可以了;=查询程序=START: MOV R5,#00HMOV R4,#03H MOV R3,#02HACALL DISPLAY;未开始抢答时候显示学号203JB P1.7,STARTACAL

17、L BARK;按键发声MOV A,R1 MOV R6,ASETB OK ;抢答标志位,用于COUNT只程序中判断是否查询抢答MOV R7,#01H ;读抢答键数据信号标志MOV R3,#0AH;抢答只显示计时,灭号数AJMP COUNT;进入倒计时程序,;倒计时程序(抢答倒计时和回答倒计时都跳到改程序)=COUNT: MOV R0,#00H;重置定时器中断次数MOV TH1,#3CHMOV TL1,#0B0H;重置定时器RECOUNT:MOV A,R6;R6保存了倒计时的时间,之前先将抢答时间或回答时间给R6MOV B,#0AHDIV AB;除十分出个位/十位MOV 30H,A;十位存于(30

18、H)MOV 31H,B;个位存于(31H)MOV R5,30H;取十位MOV R4,31H;取个位MOV A,R6 SUBB A,#07HJNC LARGER;大于5s跳到LARGER,小于等于5s会提醒MOV A,R0CJNE A,#0AH,FULL;1s中0.5s向下运行CLR RING AJMP CHECKFULL: CJNE A,#14H,CHECK;下面是1s的情况,响并显示号数并清R0,重新计SETB RING MOV A,R6JZ QUIT;计时完毕MOV R0,#00HDEC R6;一秒标志减1LARGER: MOV A,R0CJNE A,#14H,CHECK;如果1s向下运行

19、,否者跳到查停/显示DEC R6;计时一秒R6自动减1MOV R0,#00HCHECK: JNB P3.1,QUIT;如按下停止键退出;JNB OK,CHECKK ;只在回答倒计时才有效AJMP NEXTTNEXTT: ACALL DISPLAYJB OK,ACCOUT;如果是抢答倒计时,如是则查询抢答,否者跳过查询继续倒数(这里起到锁抢答作用)AJMP RECOUNTACCOUT:MOV A,36HJNB ACC.0,TRUE1JNB ACC.1,TRUE2JNB ACC.2,TRUE3JNB ACC.3,TRUE4JNB ACC.4,TRUE5JNB ACC.5,TRUE6JNB ACC.

20、6,TZ1JNB ACC.7,TZ2AJMP RECOUNTTZ1:JMP TRUE7TZ2:JMP TRUE8 QUIT: CLR OK;如果按下了停止键执行的程序CLR RINGAJMP STARTTRUE1: ACALL BARKMOV A,R2MOV R6,A;抢答时间R2送R6MOV R3,#01HCLR OK;因为答题的计时不再查询抢答,所以就锁了抢答AJMP COUNTTRUE2:ACALL BARKMOV A,R2MOV R6,AMOV R3,#02HCLR OKAJMP COUNTTRUE3:ACALL BARKMOV A,R2MOV R6,AMOV R3,#03HCLR O

21、KAJMP COUNTTRUE4:ACALL BARKMOV A,R2MOV R6,AMOV R3,#04HCLR OKAJMP COUNTTRUE5:ACALL BARK MOV A,R2 MOV R6,A MOV R3,#05H CLR OKAJMP COUNT TRUE6: ACALL BARK MOV A,R2MOV R6,A MOV R3,#06H CLR OKAJMP COUNTTRUE7:ACALL BARK MOV A,R2MOV R6,AMOV R3,#07HCLR OKAJMP COUNTTRUE8:ACALL BARK MOV A,R2MOV R6,AMOV R3,#08

22、HCLR OKAJMP COUNT;=显示程序=DISPLAY:MOV DPTR,#TAB1;查表显示程序,利用P0口做段选码口输出/P2低三位做位选码输出,MOV A,R3MOVC A,A+DPTRMOV P2,#0feHMOV P0,AACALL DELAY2MOV DPTR,#TAB2MOV A,R5MOVC A,A+DPTRMOV P2,#0fdHMOV P0,AACALL DELAY2MOV A,R4MOVC A,A+DPTRMOV P2,#0fbHMOV P0,AACALL DELAY2RET DELAY1: MOV 35H,#08HLOOP0: ACALL DISPLAYDJNZ

23、 35H,LOOP0RET;=延时4236个机器周期DELAY: MOV 32H,#12HLOOP: MOV 33H,#0AFHLOOP1: DJNZ 33H,LOOP1DJNZ 32H,LOOPRET;=延时4236个机器周期(显示用到)=DELAY2: MOV 32H,#43HLOOP3: MOV 33H,#1EHMOV A,R7 ;每隔6070个机器周期读一次P1口,全为1时为无效数据,继续读,有一个不为1时,转到正常抢答处理JNZ AAAA1 ;没读到有效数据时继续转到AAAA1LOOP2: DJNZ 33H,LOOP2DJNZ 32H,LOOP3RET;响铃程序T0INT: MOV

24、TH0,#0ECHMOV TL0,#0FFHJNB RING,OUTCPL P3.3;RING标志位为1时候P.6口不短取反使喇叭发出一定频率的声音OUT: RETI;=T1溢出中断(计时程序)=T1INT: MOV TH1,#3CHMOV TL1,#0B0HINC R0RETITAB1: DB 0FFh,7eh,0a2h,62h,74h,61h,21h,7ah,20h,60h,0FFH;TAB2:DB 28h,7eh,0a2h,62h,74h,61h,21h,7ah,20h,60h,0FFH END第4章 系统软件仿真4.1用到了keil软件仿真,界面如下:4.2 Proteus仿真图做好的

25、Proteus仿真图如下:四号抢到抢答器倒计时9秒的显示图4.3 PCB板图第5章 技术指标及故障处理5.1主要技术参数电源电压:交流220V10% 工作功耗:交流5W5.2抢答器使用说明(1) 开机按电源开关,显示屏左边的抢答指示灯亮,数码管显示。(2) 设定抢答倒计时时间(3) 设定答题倒计时时间(4) 测试各组抢答按键试按一下各组的抢答按钮,应立即显示该组的组别数字,同时机内喇叭发出叮咚的提示音,按取消键,返回0闪烁状态。(5) 启动抢答倒计时,开始抢答203状态下,当主持人宣布抢答开始时,马上按一下抢答键,屏幕显示所设定的抢答倒计时时间并开始倒计时,提示倒计时时间马上临近结束。倒计时到

26、0以后,仪器发出叮咚的结束提示音,同时显示屏返回203待命状态。在抢答倒计时中,如果有参赛组抢答,仪器屏幕立即显示该组的组别号,同时发出叮咚的抢答成功提示音。需要返回203待命状态,按取消键即可。(6) 启动答题倒计时203状态下,或有参赛组抢答成功后,需要开始答题的计时时,按答题计时键,屏幕显示所设定的答题倒计时时间并开始倒计时,提示倒计时时间马上临近结束。倒计时到0以后,仪器发出丁冬的结束提示音,同时显示屏返回203待命状态。(7) 提前取消倒计时无论是抢答还是答题的倒计时时间,需要提前退出,只要按一下取消键,即可返回到203待命状态。(8) 违规抢答当主持人读题过程中,而未宣布抢答开始时

27、按下抢答按钮。主显示屏将显示该违规组号,及发出提示音。及该组的红灯亮起。5.3常见故障开机无显示解决办法: 查电源插座是否插好;仪器后板的保险丝是否烧断;POWER开关是否有接触不良;蜂鸣器到点不出声,查看电路是否短路,还是蜂鸣器已坏。在PCB板绘制过程中,存在接线布局层次不合理,板子做好后,才发现PCB线路图存在未接通的焊点,只好接线穿越 在这部分布局存在未接通的焊点课程设计体会这次课程设计老师给我们安排了三个星期的时间,可以说是比较充裕的,但也因为刚好是碰到复习周,所以又很多事要做。虽然如此,我还是很用心的做设计,因为前一周也是有一个课程设计,我也完成并做好了设计报告,所以利用了周六周日两

28、天的时间在宿舍思考本次的课程设计,拿到题目,感觉太繁杂了,不知怎么下手,虽然这些知识以前都有接触过,但也只是分部分来接触,而这次的设计是要对前面几次实验的一个综合,真的很难。也翻阅了一些资料,并事先请教这方面基础扎实的同学编写好了程序,到了二十号去到机房时候,把自己写的程序烧进去芯片里面,发现不行,那些数字闪动得非常厉害,自己检查了好久好久,但还是发现不了问题,之后问了同学,才知是我把段码搞错了,我用的是共阳位选,但数据表的段码我却用了共阴的段码,所以不能在数码管上正常显示。通过运用单片机设计八路抢答器程设计,发现自己的很多不足,自己知识的很多漏洞,看到了自己的实践经验还是比较缺乏,理论联系实

29、际的能力还急需提高。在这个过程中,我也曾经因为实践经验的缺乏失落过,也曾经仿真成功而热情高涨。特别是Proteus仿真软件的使用,不知是由于电脑的问题还是怎么,这个软件的安装就花了我很长的时间,好不容易安装好了,又对软件的使用一点都不熟悉,要从头开始学起,对着老师发给我们的芯片原理进行仿真画图,刚刚开始时候真的很难下手,因为是英文版的软件,很多东西都看不太明白,都是通过自己一个个来慢慢琢磨,才把仿真图画了出来,然后把写好的程序导入芯片,进行仿真,当看到程序正常运行的那一刻,心中真是有几分的喜悦。生活就是这样,汗水预示着结果也见证着收获。劳动是人类生存生活永恒不变的话题。虽然这只是一次的较简单的

30、课程制作(八路抢答器),可是平心而论,也耗费了我不少的心血。通过这次课程设计,我想说:为完成这次课程设计我们确实很辛苦,但苦中仍有乐,三年的同窗友谊在这次课程设计中占了最重的位置,我感觉我和同学们之间的距离更加近了。这个工程确实很累, LED亮了起来,喇叭响起的是我一生以来最好听的声音,我们的心中就不免兴奋,不免激动。以前种种艰辛这时就变成了最甜美的回忆!这次学习给我留下了深刻的印象,使我受益匪浅。而且对于论文的总体构思也有了很多经验,相信自己经过这一次的训练与学习,对于今后会更加努力,做得最好。对我而言,知识上的收获重要,精神上的丰收更加可喜。让我知道了学无止境的道理。我们每一个人永远不能满足于现有的成就,人生就像在爬山,一座山峰的后面还有更高的山峰在等着你。挫折是一份财富,经历是一份拥有。这次课程设计必将成为我人生旅途上一个非常美好的回忆!参考文献1、马忠梅,单片机的C语言Windows环境编程宝典M, 北京:北京航空航天大学出版社,2003.6; 2、李光飞,单片机C程序设计指导M,北京:北京航空航天大学出版社,2003.01 ;3、李光飞,单片机课程设计实例指导M,北京:北京航空航天大学出版社,2004.9。特别感谢自本0801班 陈金辉通信0801班 肖文凤自本0804班 陈冠军 21

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 研究报告 > 信息产业


经营许可证编号:宁ICP备18001539号-1