智能抢答器的制作.doc_第1页
智能抢答器的制作.doc_第2页
智能抢答器的制作.doc_第3页
智能抢答器的制作.doc_第4页
智能抢答器的制作.doc_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

广 州 大 学 城 建 学 院智能抢答器的制作专业班级:06 应用电子技术 姓名:杨耿超指导老师:xxx摘要 抢答器是智力竞赛活动必不可少的设备。本文介绍的4路无线抢答器,是以AT89S51单片机为核心制成的,有抢答和回答倒计时功能,并能根据情况调整相应时间。同时能辨认犯规操作,发出相应提示。在室内一般能实现100米的无线抢答,方便操作。关键字 抢答器;智能抢答器;无线编解码;单片机。ABSTRACT Vies to answer first is the intelligence event essential equipment. This article introduced 4 groups vie to answer first wireless, is makes take at89S51 monolithic integrated circuit as the core, has vies to answer first and replies the countdown function, and can act according to the conditioning corresponding time. Simultaneously can identify violates a regulation the operation, sends out the corresponding prompt. In indoor can realize 100 meter wireless viing to answer first generally, facilitates the operation.KEY WORDS Vies to answer first;The intelligence vies to answer first;Arranges the decoding wireless;Monolithic integrated circuit目录前言3第一章 AT89S51单片机芯片介绍4第二章 智能抢答器介绍62.1 智能抢答器的构成62.2 智能抢答器的功能6第三章 电路设计73.1 硬件电路设计73.2 晶体振荡器与AT89C51的接法83.3 单片机复位电路的连接83.4 蜂鸣器驱动93.5 数码管结构及代码显示93.6 LED数码显示器有两种连接方法93.7 无线编码发射与接收解码103.8 电平转换133.9 整流稳压电路13第四章 智能抢答器软件系统设计144.1 软件系统中的主模块设计144.2 显示模块的设计144.3 倒计时时间模块的设计144.4 声音提示功能的设计154.5 犯规处理设计154.6 倒计时时间调整模块的设计154.7 自动 /手动功能设计16第六章 调试过程16总结17参考文献17附 录18前言(1)智能抢答器的设计内容 设计一台可供4人使用的无线抢答器。(2)智能抢答器的设计要求此台智力竞赛抢答器,可同时供4名选手或4个代表队参加比赛,他们的编号分别是1、2、3、4各用一个抢答按钮,按钮的编号与选手的编号相对应。抢答器具体有抢答倒计时与回答倒计时功能。给节目主持人设置两个控制开关,分别用来控制系统的清零与抢答的开始在倒计时时间小于5S时,每秒有响音一次提示。当抢答者提前抢答导致犯规时,有相应的警报提示。抢答倒计时和回答倒计时,可以在0-99秒之间调整。扩展功能:4位无线抢答,8位有线抢答;可以选择自动或手动进入回答倒计时;回答过程中,回答倒计时时间可以随时复位。(3)智能抢答器的设计目的(1)掌握AT89S51实验开发系统中的实验模块原理,画出电路原理图;(2)综合运用实验模块,用89S51开发设计具有一定功能的单片机控制系统,进行软、硬件设计及调试;(3)巩固、加深和扩大单片机应用的知识面,提高综合及灵活运用能力;(4)提高组成系统、编程、调试的动手能力;(5)了解抢答器的组成及工作原理,熟悉抢答器的设计与制作。第一章 AT89S51单片机芯片介绍单片机自1976年由Intel公司推出MCS-48开始,迄今已有二十多年了。由于单片机集成度高、功能强、可靠性高、体积小、功耗地、使用方便、价格低廉等一系列优点,目前已经渗入到人们工作和生活的方方面面,几乎“无处不在,无所不为”。单片机的应用领域已从面向工业控制、通讯、交通、智能仪表等迅速发展到家用消费产品、办公自动化、汽车电子、PC机外围以及网络通讯等广大领域。AT89S51是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案。管脚说明:VCC:供电电压。GND:接地。P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3 /INT1(外部中断1)P3.4 T0(记时器0外部输入)P3.5 T1(记时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。第二章 智能抢答器介绍2.1 智能抢答器的构成智能抢答器主要由单片机主控制电路,电源系统,显示驱动电路,发生提示电路,无线接收/发射电路组成。(1)单片机主控制电路 判断抢答先后,为抢答、答题者进行倒计时,确定抢答是否有效或犯规,为其他电路模块提供支持平台。(2)电源系统 提供稳定的5V稳压电源。(3)显示驱动电路 驱动P2.0-P2.3位选,和P0段位,显示时间及抢答者(4) 发生提示电路 对抢答过程中,答题,犯规提供提示功能。(5) 无线接收/发射电路2.2 智能抢答器的功能(1) 基本的抢答功能辨别第一抢答者,并显示其号码。(2) 倒计时功能抢答器设计时使用了T0作为倒计时。 (3) 抢答倒计时与回答倒计时时间调整功能INT0为抢答倒计时所用,INT1为答题倒计时所用。(4) 犯规提示功能对抢答过程中出现的犯规问题给予提示。(5)无线抢答功能第三章 电路设计3.1 硬件电路设计图3-1 电路仿真ProteusCPU4位数码显示电路蜂鸣器提示电路按键与按钮电路晶体振荡电路电源系统无线译码及电平转换电路图3-2 原理框图3.2 晶体振荡器与AT89C51的接法本次设计的重点在于了解个元器件的功能,了解了元器件的功能就可以画出所要做的数字钟的电路图,放可焊接。元器件的功能在上面已经介绍了,所以下来就是连接方式。晶体振荡器与AT89C51的接法为如图所示,XTAL1和XTAL2脚接到12MHz的晶体振荡器上。图3-33.3 单片机复位电路的连接MCS-51单片机的复位是由外部的复位电路来实现的。复位引脚RST通过一个斯密特触发器与复位电路相连,斯密特触发器用来抑制噪声,在每个机器周期的S5P2,斯密特触发器的输出电平由复位电路采样一次,然后才能得到内部复位操作所需要的信号。上电复位:上电复位电路是种简单的复位电路,只要在RST复位引脚接一个电容到VCC,接一个电阻到地就可以了。上电复位是指在给系统上电时,复位电路通过电容加到RST复位引脚一个短暂的高电平信号,这个复位信号随着VCC对电容的充电过程而回落,所以RST引脚复位的高电平维持时间取决于电容的充电时间。为了保证系统安全可靠的复位,RST引脚的高电平信号必须维持足够长的时间。电路图如下:图3-4上电自动复位是通过外部复位电路的电容充电来实现的。只要Vcc的上升时间不超过1ms,就可以实现自动上电复位。3.4 蜂鸣器驱动为了使蜂鸣器音量足够大,采用了PNP型三极管8550来驱动蜂鸣器,驱动电阻用1K的,蜂鸣器为5V小型蜂鸣器。若用NPN来驱动蜂鸣器音量要小一点。LED数码管位驱动用8550,电子钟采用5v电源供电。图3-5 PNP8550驱动蜂鸣器3.5 数码管结构及代码显示发光二极管LED是一种通电后能发光的半导体器件,其导电性质与普通二极管类似。LED数码显示器就是由发光二极管组合而成的1种新型显示器件。在单片机系统中应用非常普遍。LED数码显示器是1种由LED发光二极管组合显示字符的显示器件。它使用了8个LED发光二极管,其中7个用于显示字符,1个用于显示小数点。3.6 LED数码显示器有两种连接方法(1)共阳极接法。把发光二极管的阳极连在一起构成公共阳极,使用时公共阳极接+5V,每个发光二极管的阴极通过电阻与输入端相连。当阴极端输入低电平时,段发光二极管就导通点亮,而输入高电平时则不点亮。(2)共阴极接法。把发光二极管的阴极连在一起构成公共阴极,使用时公共阴极接地。每个发光二极管的阳极通过电阻与输入端相连。当阳极端输入高电平时,段发光二极管就导通点亮,而输入低电平时则不点亮。在本设计中所采用的是共阳极LED数码显示器,其引脚排列如下图(3.1)所示:图3-6由4个共阳极的数码管组成队号、倒计时秒的显示。以一片AT89S51单片机为主体,其显示数据从P0口输出,P2.0到P2.3口输出对应的四位位选信号。此设计我们采用图3-7所示的接法。 图3-7 (P0端口对应的数码段位图) 图3-83.7 无线编码发射与接收解码(1) PT2262/PT2272 芯片介绍无线部分,我们使用PT2262/PT2272低功耗低价位通用编解码电路,PT2262/PT2272最多可有12位(A0-A11)三态地址端管脚(悬空,接高电平,接低电平),任意组合可提供531441地址码,PT2262最多可有6位(D0-D5)数据端管脚,设定的地址码和数据码从17脚串行输出,可用于无线遥控发射电路。编码芯片PT2262发出的编码信号由:地址码、数据码、同步码组成一个完整的码字,解码芯片PT2272接收到信号后,其地址码经过两次比较核对后,VT脚才输出高电平,与此同时相应的数据脚也输出高电平,如果发送端一直按住按键,编码芯片也会连续发射。当发射机没有按键按下时,PT2262不接通电源,其17脚为低电平,所以315MHz的高频发射电路不工作,当有按键按下时,PT2262得电工作,其第17脚输出经调制的串行数据信号,当17脚为高电平期间315MHz的高频发射电路起振并发射等幅高频信号,当17脚为低平期间315MHz的高频发射电路停止振荡,所以高频发射电路完全收控于PT2262的17脚输出的数字信号,从而对高频电路完成幅度键控(ASK调制)相当于调制度为100的调幅。PT2262 引脚图:名称管脚说 明A0-A111-8、10-13地址管脚,用于进行地址编码,可置为“0”,“1”,“f”(悬空),D0-D57-8、10-13数据输入端,有一个为“1”即有编码发出,内部下拉Vcc18电源正端()Vss9电源负端()TE14编码启动端,用于多数据的编码发射,低电平有效;OSC116振荡电阻输入端,与OSC2所接电阻决定振荡频率;OSC215振荡电阻振荡器输出端;Dout17编码输出端(正常时为低电平)PT2272 解码电路 引 脚 图:名称管脚说 明A0-A111-8、10-13地址管脚,用于进行地址编码,可置为“0”,“1”,“f”(悬空),必须与2262一致,否则不解码D0-D57-8、10-13地址或数据管脚,当做为数据管脚时,只有在地址码与2262一致,数据管脚才能输出与2262数据端对应的高电平,否则输出为低电平,锁存型只有在接收到下一数据才能转换Vcc18电源正端()Vss9电源负端()DIN14数据信号输入端,来自接收模块输出端OSC116振荡电阻输入端,与OSC2所接电阻决定振荡频率;OSC215振荡电阻振荡器输出端;VT17解码有效确认 输出端(常低)解码有效变成高电平(瞬态)(2)基于PT2262 的无线编码发射电路图3-9 无线发射电路(2)基于PT2267的超外差接收解码电路图3-10 无线接收电路3.8 电平转换当接收到信号时,解码芯片PT2267解除相应的驱动线路,并提高5V高电平。不过我们软件设置是当P1口为0时,表示按键按下操作。所以我们必要使用一个电平转换电路来完成上述转变。我们采用74LS04非门集成块,作为转换元件。图3-11 元件内部电路 图3-12 元件外部电路3.9 整流稳压电路第四章 智能抢答器软件系统设计4.1 软件系统中的主模块设计图4-1程序流程图4.2 显示模块的设计基本显示模块设计的重点是由显示代码取得相应的段码。由前述可知,从P2 口输出位选码,然后通过查表程序,选出相应的8位显示码送给 8位数码管。注意:本次设计采用的是PNP9012驱动位选,数码管接在相应的集电极,从而导致位选反相。程序编写应注意0/1的转换。4.3 倒计时时间模块的设计整个抢答器程序运行有两个倒计时过程,1、抢答倒计时,2、回答倒计时。我们通过定时器中断T0对倒计时时间进行计时,在进入抢答倒计时或回答倒计时时,每50ms中断一次,在中断20次后,对(R2时间位之前已经把值赋予R6)R6减1,即实现倒计时功能。YesNoNoR0=20吗?R0加一R6=0吗?R0清零R6减一Yes图4-2在抢答倒计时时,R6=R1;在回答倒计时时,R6=R24.4 声音提示功能的设计利用定时器T1的溢出中断,实现闪烁位标志求反;在时间设定模块中根据此标志的状态,分别显示当前时间参数或退出,达到设定时间亮灭交替的效果,即闪烁。定时器中断T1确定响音的频率,在程序运行的整个过程,T1定时器中断始终是工作着,通过判断“RING EQU 22H”确定是否得响应进发声中断。4.5 犯规处理设计犯规主要体现在主持人未宣布开始抢答之前,选手已经按下按键,提前抢答。这将导致抢答的公平性受到破坏,因而我们把提前抢答设为犯规。在程序设计中,选手犯规的同时我们进行犯规处理,查询选手号,将选手号付给R3,同时调用“AJMP ERROR”,在“ERROR”程序块里面处理,发出犯规提示警告。具体程序安排在附录源程序“非法抢答处理程序”程序块内。4.6 倒计时时间调整模块的设计开发外部中断INT0/INT1口,当按下P3.2或P3.3进入相应的中断程序块。通过P3.4执行+1s操作,通过P3.5执行-1s操作,同时规定倒计时时间在1到99秒之间调整。具体调整程序在附录源程序“INT0/INT1(抢答时间R1/R2调整程序)”程序块内。4.7 自动 /手动功能设计当程序运行到抢答倒计时时,有选手抢答时,程序会通过判断P3.7的情况,确定接下来程序进入哪一个功能块。当P3.7为0时,程序进行自动功能(即立即进行回答倒计时);当P3.7为1时,程序停留下手动功能。只有主持人重新按下P3.0口(即P3.0为0时)时,程序才会跳出手动功能块,自动转入自动功能。NoYesNoYesP3.7=0?显示当前时间P3.0=0?图4-2第六章 调试过程为安全起见,首先必须进行断电调试。断电调试的内容至少包含短路检测和原理正确性确认。1.按照电路连接图准确连接好电路。2.测试电源连接部分,防止烧坏原件。3.检查故障。特别是软件编写总结通过两个星期的学习和调试过程,终于完成了智能抢答器的工作。并且使抢答器能够顺利运行,完成了预期的目标。从抢答器的设计过程中也找到了一些单片机开发的规律:先了解所有元件的具体内容,从而画出其电路图,使程序从简易变成多功能的方式,并且实现了无线抢答与智能控制功能。从而让我踏入了单片机应用领域的第一步。然而在调试过程中有也有许多的不足之处:例如编写调试程序有点不足。希望能够在以后的不断深入学习中能够弥补自己的不足之处。在此,最先感谢我的导师谢元成老师,正是他在帮忙之中还抽出宝贵的时间对我进行精心的指导,才使我顺利完成了我的毕业设计。参考文献51系列单片机设计实例 楼然苗 李光飞 北京航空航天大学出版社单片机课程设计实例指导 李光飞 楼然苗 胡佳文 谢向佐北京航空航天大学出版社单片机原理及应用 李明 北京航空航天大学出版社8051单片机的彻底研究经验篇 林伸茂 人民邮电出版社8051单片机实践与应用吴金 沈庆阳 郭庭吉 清华大学出版社附 录源程序:OK EQU 20H ;抢答标准位RING EQU 22H ;响铃或闪烁标准位ORG 0000HAJMP MAINORG 0003HAJMP INT0SUBORG 000BHAJMP T0INTORG 0013HAJMP INT1SUBORG 001BHAJMP T1INTORG 0040H ;=-;单片机抢答器主程序设计;=MAIN: MOV R1,#0FH ;初设抢答时间为15sMOV R2,#0AH ;初设答题时间为10sMOV TMOD,#11H ;设置未定时器/模式1MOV TH0,#0F0HMOV TL0,#0FFH ;越高发声频率越高,越尖MOV TH1,#3CHMOV TL1,#0B0H ;50ms为一次溢出中断SETB EASETB ET0SETB ET1SETB EX0SETB EX1 ;允许四个中断,T0/T1/INT0/INT1CLR OKCLR RINGSETB TR1SETB TR0 ;一开始就运行定时器,以开始显示FFF.如果想重新计数,重置TH1/TL1就可以了;=查询程序=START: MOV R5,#0BHMOV R4,#0BHMOV R3,#0BHACALL DISPLAY ;未开始抢答时候显示FFFJB P3.0,NEXT ;dddddddACALL DELAYJB P3.0,NEXT ;去抖动,如果开始键按下就向下执行,否者跳到非法抢答查询ACALL BARK ;按键发声MOV A,R1MOV R6,A ;送R1-R6,因为R1中保存了抢答时间SETB OK ;抢答标志位,用于COUNT只程序中判断是否查询抢答MOV R7,#01HMOV R3,#0AH ;抢答只显示计时,灭号数AJMP COUNT ;进入倒计时程序,查询有效抢答的程序在COUNT里面NEXT: JNB P1.0,FALSE1JNB P1.1,FALSE2JNB P1.2,FALSE3JNB P1.3,FALSE4JNB P1.4,FALSE5JNB P1.5,FALSE6JNB P1.6,FALSE7JNB P1.7,FALSE8AJMP START;=非法抢答处理程序=FALSE1: MOV R3,#01HAJMP ERRORFALSE2: MOV R3,#02HAJMP ERRORFALSE3: MOV R3,#03HAJMP ERRORFALSE4: MOV R3,#04HAJMP ERRORFALSE5:MOV R3,#05HAJMP ERRORFALSE6: MOV R3,#06HAJMP ERRORFALSE7: MOV R3,#07HAJMP ERRORFALSE8: MOV R3,#08HAJMP ERROR ;=INT0(抢答时间R1调整程序)=INT0SUB:MOV A,R1MOV B,#0AHDIV ABMOV R5,AMOV R4,BMOV R3,#0AHACALL DISPLAY ;先在两个时间LED上显示R1JNB P3.4,INC0 ;P3.4为+1s键,如按下跳到INCOJNB P3.5,DEC0 ;P3.5为-1s键,如按下跳到DECOJNB P3.1,BACK0 ;P3.1为确定键,如按下跳到BACKOAJMP INT0SUBINC0: MOV A,R1CJNE A,#63H,ADD0 ;如果不是99,R2加1,如果加到99了,R1就置0,重新加起。MOV R1,#00HACALL DELAY1AJMP INT0SUBADD0: INC R1ACALL DELAY1AJMP INT0SUBDEC0: MOV A,R1JZ SETR1 ;如果R1为0, R1就置99,DEC R1ACALL DELAY1AJMP INT0SUBSETR1: MOV R1,#63HACALL DELAY1AJMP INT0SUBBACK0: RETI ;=INT1(回答时间R2调整程序)=INT1SUB:MOV A,R2MOV B,#0AHDIV ABMOV R5,AMOV R4,BMOV R3,#0AHACALL DISPLAYJNB P3.4,INC1JNB P3.5,DEC1JNB P3.1,BACK1AJMP INT1SUBINC1: MOV A,R2CJNE A,#63H,ADD1MOV R2,#00HACALL DELAY1AJMP INT1SUBADD1: INC R2ACALL DELAY1AJMP INT1SUBDEC1: MOV A,R2JZ SETR2DEC R2ACALL DELAY1AJMP INT1SUBSETR2: MOV R2,#63HACALL DELAY1AJMP INT1SUBBACK1: RETI ;=倒计时程序(抢答倒计时和回答倒计时都跳到改程序)=REPEAT:MOV A,R2 ;当P3.0=1时,重新进行回到倒计时MOV R6,AClR RINGCOUNT: MOV R0,#00H ;重置定时器中断次数(进入抢答倒计时或回答倒计时,R0清零,开始计时)MOV TH1,#3CHMOV TL1,#0B0H ;重置定时器RECOUNT:MOV A,R6 ;R6保存了倒计时(抢答或回答倒计时)的时间,(之前先将抢答时间或回答时间给R6)MOV B,#0AHDIV AB ;除十分出个位/十位MOV 30H,A ;十位存于(30H)MOV 31H,B ;个位存于(31H)MOV R5,30H ;取十位MOV R4,31H ;取个位MOV A,R6SUBB 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 RINGMOV A,R6JZ QUIT ;计时完毕MOV R0,#00HDEC R6 ;一秒标志减1AJMP CHECKLARGER:;=判断R0(中断次数)*T1(中断时间)是否等于1S=MOV A,R0 ;在未进入倒计时之前先将R0清零,(T1中断时间50ms,远比“TT1”到“TT2”行的运行时间长)。CJNE A,#14H,CHECK;如果1s向下运行,否者跳到查停/显示DEC R6 ;计时一秒R6自动减1MOV R0,#00H;=CHECK: JNB P3.1,QUIT ;如按下停止键退出JNB OK,CHECKK ;判断是在哪个倒计时程序中,是抢答倒计时(OK=1),还是回到倒计时(OK=0)。AJMP NEXTT ;是抢答倒计时CHECKK:JNB P3.0,REPEAT;当P3.0=1时,重新进行回到倒计时NEXTT: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.6,TZ1JNB ACC.7,TZ2AJMP RECOUNTTZ1:JMP TRUE7TZ2:JMP TRUE8QUIT: CLR OK ;如果按下了停止键执行的程序CLR RINGAJMP START;=正常抢答处理程序=TRUE1: ACALL BARK ;按键发声MOV A,R2MOV R6,A ;抢答时间R2送R6MOV R3,#01HCLR OK ;因为答题的计时不再查询抢答,所以就锁了抢答;=是否自动进入答题倒计时及退出程序=RR1:JNB P3.7,RT1 ACALL MYJNB P3.1,QUITJB P3.0,RR1RT1:AJMP COUNT;=TRUE2: ACALL BARK;MOV A,R2MOV R6,AMOV R3,#02HCLR OKRR2:JNB P3.7,RT2 ACALL MYJNB P3.1,QUITJB P3.0,RR2RT2:AJMP COUNTTRUE3: ACALL BARK;MOV A,R2MOV R6,AMOV R3,#03HCLR OKRR3:JNB P3.7,RT3 ACALL MYJNB P3.1,QUITJB P3.0,RR3RT3:AJMP COUNTTRUE4: ACALL BARK;MOV A,R2MOV R6,AMOV R3,#04HCLR OKRR4:JNB P3.7,RT4ACALL MYJNB P3.1,QUITJB P3.0,RR4RT4:AJMP COUNTTRUE5: ACALL BARK;MOV A,R2MOV R6,AMOV R3,#05HCLR OKRR5:JNB P3.7,RT5 ACALL MYJNB P3.1,QUITJB P3.0,RR5RT5:AJMP COUNTTRUE6: ACALL BARK;MOV A,R2MOV R6,AMOV R3,#06HCLR OKRR6:JNB P3.7,RT6 ACALL MYJNB P3.1,QUITJB P3.0,RR6RT6:AJMP COUNTTRUE7: ACALL BARK;MOV A,R2MOV R6,AMOV R3,#07HCLR OKRR7:JNB P3.7,RT7 ACALL MYJNB P3.1,TCQJB P3.0,RR7RT7:AJMP COUNTTRUE8: ACALL BARK;MOV A,R2MOV R6,AMOV R3,#08HCLR OKRR8:JNB P3.7,RT8ACALL MYJNB P3.1,TCQJB P3.0,RR8RT8:AJMP COUNTTCQ:AJMP QUIT;=犯规抢答程序=ERROR: MOV R0,#00HMOV TH1,#3CHMOV TL1,#0B0HMOV 34H,R3 ;犯规号数暂存与(34H)HERE: MOV A,R0CJNE A,#06H,FLASH ;0.3s向下运行-灭并停响CLR RING MOV R3,#0AHMOV R4,#0AHMOV R5,#0AH ;三灯全灭AJMP CHECK1FLASH: CJNE A,#0CH,CHECK1 ;

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论