




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、抢答器设计 内容提要:电子智能抢答计分器在抢答过程中,为了知道哪一组或哪一位选手先答题,必须要设计一个系统来完成这个任务。如果在抢答中,靠视觉是很难判断出哪组先答题。利用单片机系统来设计抢答器,使以上问题得以解决,即使两组的抢答时间相差几微秒,也可分辨出哪组优先答题。本设计使用AT89C51单片机来设计智能抢答器,组数可以在八组以内任意使用。并且具有倒计时和时间设置及报警功能。利用AT89C51单片机对信号进行锁存、显示等功能。分别从硬件和软件两方面阐述了该控制系统的设计方法,并经过调试和运行使该系统达到预期目标,具有反应快、功能齐全、实用性强的特点。一、 系统总体方案设计数码管及上拉电阻AT
2、89C51复位电路抢答器计时时间调整及语音报警独立式按键键盘电子智能抢答计分器在抢答过程中,为了知道哪一组或哪一位选手先答题,必须要设计一个系统来完成这个任务。为了完成这个任务设计时系统能显示抢答组号、各组计分并能计分显示以及比赛结束时能发出报警声三个要求;电子智能抢答计分器主要是由硬件部分和软件部分构成,硬件和软件分开设计;系统综框图如下:图1-1 系统框架图抢答器的工作原理抢答器的工作原理是利用单片机的定时器T0、T1中断完成,其余状态循环调用显示子程序,用4个共阴极LED数码管来显示,用P0口作为数码管的八个段选,用P2口中的P2.0、P2.1、P2.2、作为4个数码管其中3个位选,P1
3、口接4个按键,提供选手抢答,P3.0-P3.5四个接四个按键,提供开始、结束、答题时间调整、抢答时间调整,加1、减1调整之用。抢答功能:通过四路按键配合程序来实现抢答功能。当主持人按下抢答键开始抢答后,此时任一路按下按钮均闭锁其它各路,由程序对键盘译码并显示最先按下抢答键的路数及其当前时间。抢答限时:主持人按下抢答键后,设置5秒为抢答时间(此时间可在1-99秒之间修改)。若5秒内无人抢答,倒计时为0时发出报警,说明该抢答题目作废。此时闭锁所有抢答按键,只有当主持人再次按下抢答键开始下一次抢答方可抢答。答题限时:当选手按下按钮时,启动倒计时(此倒计时时间可在199秒之间修改),倒计时为0时发出报
4、警,说明答题时间到。二、 系统硬件设计1、控制系统及所需元件芯片的选择抢答器电路的核心是89C51单片机,其内部带有4KB的FLASH ROM,无需外扩程序存储器;抢答器没有大量的运算和暂存数据现有的128B篇内RAM已经能满足容量需求,故不需外扩片外RAM,系统配有8位8段数码显示管,管采用共阴数码管,作为时钟的显示输出。控制系统主要由单片机应用电路、存储器、接口电路、显示接口电路组成;其中单片机采用的是AT89C51单片机使系统工作的核心,它主要负责控制各个部分协调工作。所需元件:该系统的核心器件是AT89C51,其外部接上复位电路、上拉电阻、数码管、按钮及扬声器。元件为:晶体振荡管X1,
5、电容C1、C2、C3,电阻RP1,P3.0和P3.1有裁判控制分别是抢答停止和开始键;P1.0-P1.7是8组抢答的输入口;P2.0-P2.3口为数码管的段选口;位选口用的是P0.0-P0.6口输出,外部中断0、1和P3.3,P3/4为抢答记时调整口,实现的对个队进行计时,并且加减调整,外部中断0,1实现了答题时间调整。P3.4、P3.5分别实现了时间的加一和减一;P3.6为蜂鸣器控制口。智能抢答器用单片机来设计制作完成,由于其功能的实现主要通过软件编程来完成,采用单片机AT89C51,它是低功耗、高性能的CMOS型8位单片机。片内带有4KB的Flash存储器,并允许在系统内改写或用编程器编程
6、。该智力竞赛抢答器的准确度很高,其误差主要由晶振自身的误差所造成。AT89C51单片机由微处理器,存储器,I/O口以及特殊功能寄存器SFR等部分构成。其存储器在物理上设计成程序存储器和数据存储器两个独立的空间,片内程序存储器的容量为4KB,片内数据存储器为128个字节。89C51单片机有4个8位的并行I/O口:P0口,P1口,P2口和P3口。各个接口均由接口锁存器,输出驱动器和输入缓冲器组成。P1口是唯一的但功能口,仅能用作通用的数据输入/输出口。P3口是双功能口除了具有数据输入/输出功能外,每条接口还具有不同的第二功能,如P3.0是串行输入口线,P3.1口是串行输出口线。在需要外部程序存储存
7、储器和数据存储器扩展时,P0可作为分时复用的低8位地址/数据总线,P2口可作为高8位的地址总线。P3口也可作为AT89C51的一些特殊功能口,同时为闪烁编程和编程校验接收一些控制信号。复位电路的设计图2-1 复位电路原理图该复位电路采用上电自动复位和手动复位两种复位方式,图中网络标号所指9连接到单片机的复位引脚。要实现复位只需在,51系列单片机的RESET引脚上加上5ms的高电平就可以了。上电复位是利用电容的充电来实现的,即上电瞬间RESET端的电位与Vcc相同,随着电容上储能增加,电容电压也逐渐增大,充电电流减小,RESET端的电位。这样就会建立一个脉冲电压,调节电容与电阻的大小可对脉冲的持
8、续时间进行调节。通常若采用12MHz的晶振时,复位元件参数为22F的电解电容和10k的电阻。按钮复位电路是通过按下复位按钮时,电源对RESET端维持两个机器周期的高电平实现复位的。3.4 晶振电路的设计MSC-51单片机的定时控制功能是用时钟电路和振荡器完成的,而根据硬件电路的不同,连接方式分为内部时钟方式和外部时钟方式。本设计中采用内部时钟方式。单片机内部有一个反相放大器,XTAL1、XTAL2分别为反相放大器的输入端和输出端,外接定时反馈元件组成振荡器(内部时钟方式),产生时钟送至单片机内部各元件。时钟频率越高,单片机控制器的控制节拍就越快,运算速度也就越快。一般来说单片机内部有一个带反馈
9、的线性反相放大器,外界晶振(或接陶瓷振荡器)和电容就可组成振荡器,如图2-2所示。加电以后延时一段时间(约10ms)振荡器产生时钟,不受软件控制,图中Y1为晶振,震荡产生的时钟频率主要由Y1确定。电容C1,C2的作用有两个:一是帮助振荡器起振,二是对振荡器的频率起微调作用,典型值为30pF。晶振电路的设计如图2-2所示:图2-2 晶振电路原理图3.5数码显示管的选择数码显示管用来作为时间的显示输出,一般用7段数码显示管。本次设计中采用7段共阴数码显示管应用简单、可靠性高、成本低,作为显示输出。连接时段选信号接在P0口的P0.0P0.6七个I/O口上,P1口是准双向I/O接口在输出驱动部分具有驱
10、动4个TTL负载的能力,即输出电流不大于400A,所以在接电阻时选择接510限流电阻。而在位选方面采用单片机P2口的P2.0P2.2三个I/O口作为位选信号的输出口。软件设计4.1 主程序的设计此程序的及时采用定时器T0和T1中断完成,其余状态循环调用显示子程序。系统主程序流程图如图3-1所示。主程序开始 各控制单元赋初值初始化调用显示程序调用键盘扫描程序调用键值处理程序图3-1 系统主程序流程图4.2显示子程序的设计由于采用软件动态扫描实现数据显示,显示用十进制BCD码的数据对应段码存放
11、在ROM表中。显示时,先取出70H75H某一地址中的数据,然后查得对应的显示段码从P0口输出。P2口将对应的数码管选中,就能显示该地址单元的数据值。4.3定时器T0、T1中断服务程序的设计定时器T0用于响铃程序,定时器T1用于计时程序。当答题剩余5秒种时P3.6口不断取反使喇叭发出一定频率的声音,提示选手。中断服务程序流程图如图3-2所示。定时中断服务程序开始关中断、恢复定时初值开中断、修改计数单位到1秒? N Y置计数初值设备修改到计时单位到计时结束? N恢复初值 Y中断返回图3-2 中断服务程序流程图4.4程序清单定时器T1时间初值设50ms时间初值为Z,Z的计算方法为(216- Z)
12、215;12=12×50×103,结果Z=15536D=3CB0HOK EQU 20H ;抢答开始标志位RING EQU 22H ;响铃标志位ORG 0000HAJMP MAINORG 0003HAJMP INT0SUBORG 000BHAJMP T0INTORG 0013HAJMP INT1SUBORG 001BHAJMP T1INTORG 0040HMAIN: MOV R1,#30 ;初设抢答时间为30sMOV R2,#60 ;初设答题时间为60sMOV TMOD,#11H ;设置定时器T0/T1模式1MOV TH0,#0F0HMOV TL0,#0FFH ;越高发声频率
13、越高,越尖MOV TH1,#3CHMOV TL1,#0B0H ;50ms为一次溢出中断SETB EASETB ET0SETB ET1SETB EX0SETB EX1 ;允许四个中断,T0/T1/INT0/INT1CLR OKCLR RINGSETB TR1SETB TR0 ;一开始就运行定时器,以开始显示FFF=查询程序=START: MOV R5,#0BH MOV R4,#0BH MOV R3,#0BHACALL DISPLAY ;未开始抢答时候显示FFFJB P3.0,NEXT;dddddddACALL DELAYJB P3.0,NEXTACALL BARK ;按键发声MOV A,R1MO
14、V R6,A ;送R1->R6,因为R1中保存了抢答时间SETB OK ;抢答标志位,用于COUNT只程序中判断是否查询抢答MOV R3,#0AH ;抢答只显示计时,灭号数AJMP COUNT ;进入倒计时程序,"查询有效抢答的程序"在COUNT里面NEXT: JNB P1.0,FALSE1 JNB P1.1,FALSE2 JNB P1.2,FALSE3 JNB P1.3,FALSE4AJMP STARTTZ1: JMP FALSE7TZ2: JMP FALSE8=非法抢答处理程序=FALSE1: ACALL BARK; ; 按键发声MOV R3,#01H AJMP
15、ERRORFALSE2: ACALL BARKMOV R3,#02H AJMP ERRORFALSE3: ACALL BARKMOV R3,#03H AJMP ERRORFALSE4: ACALL BARKMOV R3,#04H AJMP ERROR=INT0(抢答时间R1调整程序)=INT0SUB:MOV A,R1 MOV B,#0AH DIV AB MOV R5,A MOV R4,BMOV R3,#0AHACALL DISPLAY ;先在两个时间LED上显示R1JNB P3.4,INC0 ; P3.4为+1s键,如按下跳到INCOJNB P3.5,DEC0 ; P3.5为-1s键,如按下跳
16、到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就置99DEC R1ACALL DELAY1AJMP INT0SUBSETR1: MOV R1,#63H ACALL DELAY1 AJMP INT0SUBBA
17、CK0: RETI =INT1(回答时间R2调整程序)= INT1SUB:MOV A,R2 MOV B,#0AH DIV ABMOV R5,AMOV R4,BMOV R3,#0AHACALL DISPLAYJNB P3.4,INC1JNB P3.5,DEC1JNB P3.1,BACK1AJMP INT1SUBINC1: MOV A,R2 CJNE A,#63H,ADD1 MOV R2,#00H ACALL DELAY1AJMP INT1SUBADD1: INC R2 ACALL DELAY1 AJMP INT1SUBDEC1: MOV A,R2 JZ SETR2 DEC R2 ACALL DE
18、LAY1 AJMP INT1SUBSETR2: MOV R2,#63H ACALL DELAY1 AJMP INT1SUBBACK1: RETI =倒计时程序(抢答倒计时和回答倒计时都跳到改程序)=COUNT: MOV R0,#00H ;重置定时器中断次数 MOV TH1,#3CH MOV TL1,#0B0H ;重置定时器RECOUNT:MOV A,R6;R6 保存了倒计时的时间,之前先将抢答时间或回答时间给R6 MOV B,#0AH DIV AB ;除十分出个位/十位 MOV 30H,A ;十位存于(30H) MOV 31H,B ;个位存于(31H) MOV R5,30H ; 取十位 MOV
19、 R4,31H ; 取个位 MOV A,R6 SUBB A,#07H JNC LARGER ; 大于5s跳到LARGER,小于等于5s会提醒 MOV A,R0 CJNE A,#0AH,FULL 1s中0.5s向下运行 CLR RING AJMP CHECKFULL: CJNE A,#14H,CHECK 下面是1s的情况,响并显示号数并清R0,重新计 SETB RING MOV A,R6 JZ QUIT ;计时完毕 MOV R0,#00H DEC R6 ;一秒标志减1 AJMP CHECKLARGER: MOV A,R0 CJNE A,#14H,CHECK 如果1s向下运行,否者跳到查"
20、;停/显示" DEC R6 ;计时一秒R6自动减1 MOV R0,#00HCHECK: JNB P3.1,QUIT ;如按下停止键退出 ACALL DISPLAY JB OK,ACCOUT 如果是抢答倒计时,如是则查询抢答,否者跳过查询继续倒数(这里起到锁抢答作用) AJMP RECOUNTACCOUT:JNB P1.0,TRUE1 JNB P1.1,TRUE2 JNB P1.2,TRUE3 JNB P1.3,TRUE4 JNB P1.4,TRUE5 JNB P1.5,TRUE6 JNB P1.6,TZ3 JNB P1.7,TZ4 AJMP RECOUNTTZ3: JMP TRUE7
21、TZ4: JMP TRUE8 QUIT: CLR OK ; 如果按下了"停止键"执行的程序 CLR RING AJMP START=正常抢答处理程序=TRUE1: ACALL BARK ;按键发声 MOV A,R2 MOV R6,A ; 抢答时间R2送R6 MOV R3,#01H CLR OK 因为答题的计时不再查询抢答,所以就锁了抢答 AJMP COUNTTRUE2:ACALL BARK MOV A,R2 MOV R6,A MOV R3,#02H CLR OK AJMP COUNTTRUE3:ACALL BARK; MOV A,R2 MOV R6,A MOV R3,#03
22、H CLR OK AJMP COUNTTRUE4:ACALL BARK; MOV A,R2 MOV R6,A MOV R3,#04H CLR OK AJMP COUNT=犯规抢答程序=ERROR: MOV R0,#00H MOV TH1,#3CH MOV TL1,#0B0H MOV 34H,R3 ;犯规号数暂存与(34H)HERE: MOV A,R0 CJNE A,#0AH,FLASH ; 0.5s向下运行->灭并停响 CLR RING MOV R3,#0AH MOV R4,#0AH MOV R5,#0AH ; 三灯全灭 AJMP CHECK1FLASH: CJNE A,#14H,CHE
23、CK1 下面是1s的情况,响并显示号数并清R0,重新计 SETB RING MOV R0,#00H MOV R3,34H ;取回号数 MOV R5,#0BH MOV R4,#0BH ;显示FF和号数 AJMP CHECK1CHECK1: JNB P3.1,QUIT1 ACALL DISPLAY AJMP HEREQUIT1: CLR RING CLR OKAJMP START=显示程序=DISPLAY:MOV DPTR,#DAT1 查表显示程序,利用P0口做段选码口输出/P2低三位做位选码输出, MOV A,R3 MOVC A,A+DPTR MOV P2,#0feH MOV P0,A ACAL
24、L DELAY MOV DPTR,#DAT2 MOV A,R5 MOVC A,A+DPTR MOV P2,#0fdH MOV P0,A ACALL DELAY MOV A,R4 MOVC A,A+DPTR MOV P2,#0fbH MOV P0,A ACALL DELAY RETDAT1:DB 00h,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh,00H,71H ;"灭","1","2","3","4","5","6","7","8","9",
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《交通安全伴我行:3 发生交通事故后》教学设计-2023-2024学年六年级下册综合实践活动沪科黔科版
- 《包装的学问》(教学设计)-2023-2024学年五年级下册数学北师大版
- 血栓后遗症的护理措施
- 14《我要的是葫芦》(教学设计)2024-2025学年统编版语文二年级上册
- 血液科基础知识
- Unit 2 My week Part B Read and write Part C Story time(教学设计)-2024-2025学年人教PEP版英语五年级上册
- Starter Section 3 Saying Hello (教学设计)-2024-2025学年北师大版(2024)初中英语七年级上册
- 2018年春人教版九年级历史上册教学设计:第15课 血腥的资本积累
- 九年级历史下册 第二单元 第二次工业革命和近代科学文化 第7课 近代科学与文化教学设计3 新人教版
- 九年级历史下册 第一单元 苏联社会主义道路的探索 第2课 对社会主义道路的探索教学设计 新人教版
- 2024年10月自考13683管理学原理中级试题及答案含评分参考
- 仿生鱼机器人设计说明书
- Q∕GDW 12070-2020 配电网工程标准化设计图元规范
- (精心整理)小学英语特殊疑问句练习(带答案)
- 小学语文人教课标版(部编)三年级下册习作:我做了一项小实验
- 广西壮族自治区建筑装饰装修工程消耗量定额(2013版)
- 中国历史朝代简表全
- 铁总计统【2017】177号关于进一步加强铁路建设项目征地拆迁工作和费用管理的指导意见
- 立式水轮发电机轴线分析及处理
- 蹲踞式起跑PPT
- 1云南省初中综合素质,完整版综合素质评定表
评论
0/150
提交评论