《单片机课程设计八位竞赛抢答器的设计》由会员分享,可在线阅读,更多相关《单片机课程设计八位竞赛抢答器的设计(14页珍藏版)》请在金锄头文库上搜索。
1、单片机课程设计报告题 目: 八位竞赛抢答器的设计 目 录 第1章 目的51.1八位竞赛抢答器的概述51.2系统主要功能5第2章 系统硬件设计52.1芯片的选择及工作原理52.3系统的硬件构成及功能72.3.1 抢答器的电路框图72.3.2 抢答器的电路图72.3.3 总体流程图9第3章 系统软件设计93.1系统主程序设计93.2抢答器的源程序10第4章 调式104.1主要技术参数104.2抢答器使用说明104.3常见故障11附件:11小结17参考文献.18第1章 目的1.1八位竞赛抢答器的概述本试验涉及的是八路数显抢答器,它具有电路简单、成本较低、操作方便、灵敏可靠等优点。该电路由直流稳压电源
2、、抢答器、超时报警与电子计分四部分组成。抢答器由8个发射器和1个接收器组成,可用于8组或8组以下的竞赛中:将参赛组按顺序排号18,每组发给对应的一个发射器。将接收器放于各组中央或前方。当启动键按下后,抢答开始。当其中一个发射器被按下后,接收器就立即显示该组的组号锁定。之后按下任何一路抢答键均不起反映。当再次按动启动键后,进行下一轮抢答。1.2系统主要功能抢答器具有第一个抢答信号的鉴别和数据锁存、显示的功能。每名选手有一个抢答按钮,按钮的编号与选手的编号相对应,抢答开始后,某抢答按钮被按下,电路具备自锁功能将信号锁定,禁止其他选手再抢答,优先抢答选手信息一直保持到启动键再次被按下,将系统清0 为
3、止。同时,对应该选手的指示灯亮,并在数码管上显示该选手编号,且扬声器发出音响提示。第2章 系统硬件设计2.1芯片的选择及工作原理本设计使用到的元器件包括:8051芯片(功能强大,操作简单,所用到的外围器件较少)、数码LED显示器、七段LED数码管的译码。工作原理:基于本实验设计得的功能要求,本实验电路由抢答电路、译码显示电路、主持人控制电路、定时电路、报警电路组成。通过复位按键FW,电路进入就绪准备状态。根据具体情况,可以通过 “JIA SHI”和“JIAN SHA”两个按键,将抢答时间设定在(0S-99S)之间,然后按下启动键(KS按键)开始抢答。按下KS键同时发光二极管随即变亮,当看到二极
4、管亮,进入倒计时状态和抢答状态。在电路中“S1-S8”为8路抢答器的8个按键,当有键按下,程序锁定信号,从P2口输出抢答者号码的七段码值,经GAL16V8驱动,送到码管显示,并封锁键盘,保持刚才按键按下时刻的时间,禁止其他人按键的输入,从而实现了抢答的功能。当设定的抢答时间结束,仍然没有抢答键被按下,则产生已经超时的报警信号,结束抢答。当要进行下一次的抢答时,首先先按一下复位按键FW,电路复位,进入下一次抢答的就绪状态。然后重复抢答操作。2.3系统的硬件构成及功能2.3.1 抢答器的电路框图电路框图工作原理:接通电源后,开关拨到“清除”状态,抢答器处于禁止状态,编号显示器灯灭,定时器显示设定时
5、间;开关置 “开始”状态,抢答器工作开始。定时器倒计时,扬声器给出声响提示。选手在设定的时间内抢答时。抢答器完成:优先判断、编号锁存、编号显示、扬声器提示。抢答之后,定时器停止、禁止二次抢答、定时器显示剩余时间。2.3.2 抢答器的电路图抢答电路的接口电路2.3.3 总体流程图总体流程图第3章 系统软件设计3.1系统主程序设计根据试验功能要求,根据比赛具体情况,试验设有时间设定功能。首先应编写时间设定程序,在硬件电路中的JIAN SHI 和 JIAN SHI两个按键在软件中为进行对数据的加减设置。然后设置复位程序热键为FW。KS为抢答开始热键,同时为二极管变亮热键,程序开始打开定时中断开始倒计
6、时,然后调用键盘扫描子程序,编写键盘扫描程序。当在扫描到有人按下了键,马上关闭T0、调用显示程序、封锁键盘。3.2抢答器的源程序见附件。第4章 调式4.1主要技术参数电源电压:交流220V10% 工作功耗:交流5W倒计时范围:30S4.2抢答器使用说明(1)准备工作先布置好场地,将抢答按钮依次安装于参赛桌上,每组按钮的二条线分别接到3.5MM的组别插头上,然后再将插头插入机后插座中8个组中。(2)开机按电源开关,显示屏左边的抢答指示灯亮,数码管显示。(3)测试各组抢答按键试按一下各组的抢答按钮,应立即显示该组的组别数字,同时机内喇叭发出叮咚的提示音,按取消键,返回0闪烁状态。(4) 启动答题倒
7、计时0闪烁状态下,或有参赛组抢答成功后,需要开始答题的计时时,按答题计时键,屏幕显示所设定的答题倒计时时间并开始倒计时,提示倒计时时间马上临近结束。倒计时到0以后,仪器发出丁冬的结束提示音,同时显示屏返回0闪烁待命状态。4.3常见故障(1)开机无显示解决办法: A、查电源插座是否插好;B、仪器后板的保险丝是否烧断; C、 POWER开关是否有接触不良。(2)抢答器无法正常工作解决方法: 查看线路接口是否出现短路、断路状况。 附件:源程序:cs8255 equ 0ffffh ;8255命令控制口outseg equ 0fffch ;字形控制口outbit equ 0fffdh ;字位/键扫控制口
8、 org 0Start: mov sp,#40h mov dptr,#CS8255 mov a,#88h ;命令字:A,B口输出 movx dptr,a ;8255初始化 clr cst0: setb p1.4 setb p1.5 setb p1.6 setb p1.7 jb p3.0,stystd: setbc setb p1.4 setb p1.5 setb p1.6 setb p1.7 mov r0,#0 call DisplayLED ;显示 ajmp st0sty: mov r0,#30 call xunhuan4st1:jb p1.0,st2clr cmov r0,#1clr p1
9、.4 setb p1.5 setb p1.6 setb p1.7call DisplayLED ;显示 AJMP STOPst2:jb p1.1,st3clr cmov r0,#2clr p1.5 setb p1.4 setb p1.6 setb p1.7call DisplayLED ;显示 AJMP STOP st3:jb p1.2,st4clr cmov r0,#3clr p1.6 setb p1.4 setb p1.5 setb p1.7call DisplayLED ;显示 AJMP STOPst4:jb p1.3,st0clr cmov r0,#4clr p1.7 setb p1.
10、4 setb p1.5 setb p1.6call DisplayLED ;显示 AJMP STOPstz: ajmp stdDelay: ;延时子程序 mov r7,#30h mov r6,#02hDelayLoop: jnb p1.0,st1 jnb p1.1,st2 jnb p1.2,st3 jnb p1.3,st4 djnz r7,DelayLoop djnz r6,delayloop retDelay1: ;延时子程序 mov r7,#05hDelayLoop1: djnz r7,DelayLoop1 retstx: ajmp st0DisplayLED: mov r2,#10000
11、000b;从左边开始显示Loop: mov dptr,#OUTBIT clr a movx dptr,a ;关所有八段管 mov dptr,#LedMap mov a,r0 movc a,a+dptr ;数字转换成显示码 mov dptr,#OUTSEG movx dptr,a mov dptr,#OUTBIT mov a,r2 movx dptr,a ;显示一位八段管 call Delay1 retxunhuan4: call display1 djnz r0,xunhuan4 sjmp stzdisplay1: mov r1,#60hdisolay2: mov dptr,#OUTBIT c
12、lr a movx dptr,a ;关所有八段管 mov r2, #01000000b mov a,r0 mov b,#10 div ab mov dptr,#LedMap movc a,a+dptr ;数字转换成显示码 mov dptr,#OUTSEG movx dptr,a mov dptr,#OUTBIT mov a,r2 movx dptr,a ;显示一位八段管 call Delay mov r2,#00100000b mov dptr,#OUTBIT clr a movx dptr,a ;关所有八段管 mov dptr,#LedMap mov a,b movc a,a+dptr ;数字转换成显示码 mov dptr,#OUTSEG movx dptr,a mov dptr,#OUTBIT mov a,r2 movx dptr,a ;显示一位