




已阅读5页,还剩16页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
安阳师范学院课程实践报告书单片机程实践竞赛抢答器作者: 陈玉琦141154004李晴141154013系(院): 物电学院专业:电气自动化年级:14专升本班学号:141154004 141154013指导教师:丁电宽日期:2014/12/18摘要随着现代娱乐节目及其它游戏环节的需要,也为了完善节目的紧张气氛和观众的互动,就出现了多路抢答器。它是人们常用于各种需要抢答比赛时用的电路器材,是一名公正的裁判员。抢答器的出现给人们带来极大的方便,他能准确无误的从若干名参赛中确定出最先抢答者,并且有显示,声效等功能。第一章 抢答器的总体设计1.1设计任务与要求 要求实现功能:将其中3个按键定义为14号,第一位数码管用于计时,第二位数码管用于显示当前抢答着。当开始后第二位数码管闪烁显示“-”,计时开始后,等待抢答。抢答后,停止计时,第二位数码管显示抢答者对应编号,按清除键清除。1. 设计出电气原理图;2. 设计出程序流程图;3. 设计出程序;4. 在实验室做出产品或仿真调试。1.2 设计方案与论证 方案:该系统采用51系列单片机AT89C51作为控制核心,该系统可以完成运算控制,信号识别以及显示功能的实现。由于用了单片机,使其技术比较成熟,应用起来方便,便于控制和实现。具有灵活的可编程性,能方便对系统功能的扩张和更改。警报电路 AT89C51主持人开关鉴别电路 选手开关显示电路 图1.2 抢答器原理图 第二章 单片机应用系统简介 2.1单片机结构定时器0定时器1震荡器CPU4KBRAM中断控制可编程全双工串行口I/O编口64KB总线扩张控制数据存储器256BRAMSFR (1)80C51单片机的功能结构 图2.1 单片机内部结构图 2.2 单片机的封装形式,引脚定义及功能。(1)80C51封装 80C51系列单片机具有双列直插式和方形两种封装。(2) 80C51系列单片机引脚功能 VCC-工作电源 +5V GND-电源接地 ALE/PROG访问外部存储器时作为低8位地址锁存控制信号。 PSEN-外部程序读选通信号。 EA/VPP-访问程序存储器控制信号。 RET-复位信号 XTAL1-片内震荡电路输入端。 XTAL2-片内震荡电路输出端。 P0-P3输入输出端口。 图2.2 80C51双列直插式引脚分布图第三章 硬件电路设计3.1 抢答器的电路图如图3.1所示为电路图,其工作原理为:接通电源后主持人将开关拨到“清零”状态,抢答器处于禁止状态,定时器设定时间,主持人将开关置“开始”,宣布抢答开始时,定时器倒计时,扬声器发出响声。选手要在规定时间内完成抢答;优先判断,编号锁存,扬声器提示。 图3.1 抢答器电路图3.2 单元电路设计 3.2.1 抢答选手开关电路 图3.2所示,该图为各个选手抢答信号的输入装置,在通过单片机,选择有效信号,同时封锁图3.2.1 抢答器选手开关电路3.2.2复位电路设计 外部中断的内部中断并存,单片机硬件复位端。 图3.2.2 复位端电路图3.2.3报警电路设计报警电路用于报警,但遇到信号时,发出报警,图3.2.3就是报警电路。选手在设定时间内抢答时,实现优先判断编号锁存等提示。图3.2.3 报警器电路图3.2.4 显示电路 显示电路用于显示抢答时间以及抢答信号,同时对犯规抢答组进行闪烁显示。其显示电路如图3.2.4所示。 图3.2.4 显示电路图 第四章 软件设计4.1 主程序系统结构图 如图4-1所示为总体原理框图。其工作原理为:接通电源后,主持人将开光FW拨到“清零”状态,抢答器处于禁止状态,编号显示器灭灯,定时器显示设定时间;主持人将开光置“开始”状态,宣布“开始”抢答器工作。定时器开始倒计时。选手在规定的15s定时时间内抢答时,抢答器完成:优先判断、编号显示、扬声器提示,倒计时显示。当一轮抢答之后,定时器停止、禁止二次抢答、定时器显示剩余时间。如果再次抢答必须由主持人再次操作“清除”和“开始”状态开关。图4-1 总体原理框图4.2 系统主程序 为了能过达到抢答的公平,公正,合理,应该在主持人发布抢答命令之前必须设定抢答时间,因而设定时间程序很重要。下面是抢答器主程序流程图4.2 图4.2 抢答器主程序流程图4.3 主程序清单 OK EQU 20H ;抢答开始标志位 RING EQU 22H ;响铃标志位 DATA0 EQU 36H ;抢答按键口数据存放地址 ORG 0000HAJMP MAINORG 0003HAJMP INTT0ORG 000BHAJMP T0INTORG 001BHAJMP T1INTORG 0040HMAIN: MOV R1,#15 ;初设抢答时间为15sMOV R2,#45 ;初设答题时间为45smov 38h,#60 ;启用锦囊时间从60s倒计时 MOV TMOD,#11H ;设置未定时器/模式1MOV TH0,#0F0HMOV TL0,#0FFH ;越高发声频率越高,越尖MOV TH1,#3CHMOV TL1,#0B0H ;50ms为一次溢出中断SETB EASETB ET0SETB ET1 ;允许二个中断,T0/T1CLR OKCLR RINGSETB TR1SETB TR0 ;一开始就运行定时器,以开始显示FFF.如果想重新计数,重置TH1/TL1就可以了;=;=查询程序=;=START: MOV DATA0,#0FFH ;初始化MOV R5,#0BHMOV R4,#0BHMOV R3,#0BHACALL DISPLAY ;未开始抢答时候显示FFFJNB P3.3,SELSUB0JNB P3.4,TZ3 ;倒计时调整 JB P3.0,NEXT ACALL DELAY JB P3.0,NEXT ;去抖动,如果开始键按下就向下执行,否者跳到非法抢答查询 SETB EX0 ;开放INT0ACALL BARK ;按键发声MOV A,R1 MOV R6,A ;送R1-R6,因为R1中保存了抢答时间SETB OK ;抢答标志位,在使用锦囊时用作判断是抢答倒计时还是回答倒计时MOV R3,#0AH ;抢答只显示计时,灭号数AJMP COUNT ;进入倒计时程序,查询有效抢答的程序在COUNT里面NEXT: JNB P1.0,FALSE1JNB P1.1,FALSE2 JNB P1.2,TZ1JNB P1.3,TZ2 AJMP STARTTZ1: AJMP FALSE3TZ2: AJMP FALSE4TZ3: AJMP SELSUB1AJMP START=非法抢答处理程序=;=FALSE1: MOV R3,#01HAJMP ERRORFALSE2: MOV R3,#02H AJMP ERRORFALSE3: MOV R3,#03HAJMP ERRORFALSE4: MOV R3,#04H AJMP ERROR;=SELSUB0(抢答时间R1调整程序)=;=SELSUB0: MOV A,R1MOV B,#0AHDIV ABMOV R5,AMOV R4,BMOV R3,#0AHACALL DISPLAY ;先在两个时间LED上显示R1JNB P3.5,INC0 ;P3.5为+1s键,如按下跳到INCOJNB P3.6,DEC0 ;P3.6为-1s键,如按下跳到DECOJNB P3.1,BACK0 ;P3.1为确定键,如按下跳到BACKOAJMP SELSUB0INC0: MOV A,R1CJNE A,#63H,ADD0 ;如果不是99,R2加1,如果加到99,R1就置0,重新加起。MOV R1,#00HACALL DELAY1 AJMP SELSUB0ADD0: INC R1ACALL DELAY1AJMP SELSUB0DEC0: MOV A,R1JZ SETR1 ;如果R1为0, R1就置99,DEC R1ACALL DELAY1AJMP SELSUB0SETR1: MOV R1,#63HACALL DELAY1AJMP SELSUB0BACK0: AJMP START;=SELSUB1(回答时间R2调整程序)=;=SELSUB1: MOV A,R2MOV B,#0AHDIV ABMOV R5,AMOV R4,BMOV R3,#0AHACALL DISPLAYJNB P3.5,INC1JNB P3.6,DEC1JNB P3.1,BACK1AJMP SELSUB1INC1: MOV A,R2CJNE A,#63H,ADD1MOV R2,#00HACALL DELAY1AJMP SELSUB1ADD1: INC R2ACALL DELAY1AJMP SELSUB1DEC1: MOV A,R2JZ SETR2 DEC R2ACALL DELAY1AJMP SELSUB1SETR2: MOV R2,#63HACALL DELAY1AJMP SELSUB1BACK1: AJMP START=启用锦囊程序=;=REPEAT:MOV A,38h ;使用锦囊时重新计时MOV R6,ACLR RING ;当倒计时进入最后5秒的时候,启用锦囊能消除蜂鸣=倒计时程序(抢答倒计时和回答倒计时都跳到改程序)=COUNT: MOV R0,#00H ;重置定时器中断次数MOV TH1,#3CHMOV TL1,#0B0H ;重置定时器RECOUNT:MOV A,R6 ;R6保存了倒计时的时间,之前先将抢答时间或回答时间给R6MOV 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 RINGAJMP CHECKFULL: CJNE A,#14H,CHECK ;下面是1s的情况,响并显示号数并清R0,重新计SETB RINGMOV A,R6JZ QUIT ;计时完毕MOV R0,#00HDEC R6 ;一秒标志减1AJMP CHECKLARGER: MOV A,R0CJNE A,#14H,CHECK ;如果1s向下运行,否者跳到查停/显示DEC R6 ;计时一秒R6自动减1MOV R0,#00HCHECK: JNB P3.1,QUIT;如按下停止键退出JNB OK,CHECKK ;只在回答倒计时才有效AJMP NEXTTCHECKK:JNB P3.0,REPEAT ;判断是否使用锦囊NEXTT: ACALL DISPLAYJB OK,ACCOUT;如果是抢答倒计时,如是则查询抢答,否者跳过查询继续倒数(这里起到锁抢答作用)AJMP RECOUNTACCOUT:MOV A,DATA0JNB ACC.0,TRUE1JNB ACC.1,TRUE2JNB ACC.3,TZ8AJMP RECOUNTTZ7: AJMP TRUE3TZ8: AJMP TRUE4AJMP RECOUNTQUIT: CLR OK ;如果按下了停止键执行的程序CLR RINGAJMP START=正常抢答处理程序=TRUE1: ACALL BARKMOV A,R2 MOV R6,A ;抢答时间R2送R6MOV R3,#01H CLR OK ;因为答题的计时不再查询抢答,所以就锁了抢答 AJMP COUNTTRUE2:ACALL BARKMOV A,R2MOV R6,AMOV R3,#02HCLR OKAJMP COUNTTRUE3:ACALL BARKMOV A,R2MOV R6,AMOV R3,#03HCLR OKAJMP COUNTTRUE4:ACALL BARKMOV A,R2 MOV R3,#04HCLR OKAJMP COUNT=犯规抢答程序=ERROR: MOV R0,#00HMOV TH1,#3CHMOV TL1,#0B0HMOV 34H,R3 ;犯规号数暂存与(34H)HERE: MOV A,R0CJNE A,#06H,FLASH ;0.3s向下运行-灭并停响CLR RINGMOV R3,#0AHMOV R4,#0AHMOV R5,#0AH ;三灯全灭AJMP CHECK1FLASH: CJNE A,#0CH,CHECK1 ;下面是0.8s的情况,响并显示号数并清R0,重新计SETB RINGMOV R0,#00HMOV R3,34H ;取回号数MOV R5,#0BHMOV R4,#0BH ;显示FF和号数AJMP CHECK1CHECK1: JNB P3.1,QUIT1ACALL DISPLAYAJMP HEREQUIT1: CLR RINGCLR OKAJMP START=显示程序=DISPLAY:MOV DPTR,#DAT1 ;查表显示程序,利用P0口做段选码口输出/P2低三位做位选码输出, MOV A,R3MOVC A,A+DPTR MOV P2,#0feHMOV P0,AACALL DELAYMOV DPTR,#DAT2MOV A,R5MOVC A,A+DPTRMOV P2,#0fdHMOV P0,AACALL DELAYMOV A,R4MOVC A,A+DPTRMOV P2,#0fbHMOV P0,AACALL DELAY RETDAT1: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第一个为零,其他与上相同,因为十位如果为零显示熄灭=加减时间延时(起到不会按下就加N个数)=DELAY1: MOV 35H,#08HLOOP0: ACALL DISPLAY DJNZ 35H,LOOP0 RET=延时(显示和去抖动用到)=DELAY: MOV 32H,#12HLOOP: MOV 33H,#0AFHLOOP1: DJNZ 33H,LOOP1 DJNZ 32H,LOOP RET=发声程序=BARK: SETB RING ACALL DELAY1 ACALL DELAY1 CLR RING ;按键发声 RET=TO溢出中断(响铃程序)=T0INT: MOV TH0,#0ECH MOV TL0,#0FFH JNB RING,OUT; CPL P3.7 ;RING标志位为1时候P3.7口不断取反使喇叭发出一定频率的声音OUT: RETI=T1溢出中断(计时程序)=T1INT: MOV TH1,#3CH MOV TL1,#0B0H INC R0 RETI=INTT0中断服务程序=INTT0:MOV DATA0,P1 CLR EX0 RETI END 第5章 调试及性能分析 1、具有清零装置和抢答控制,可由主持人操纵,避免有人在主持人说“开始”前提前抢答违反规则。2、具有定时功能,在15秒内无人抢答表示所有参赛选手获参赛队对本题弃权。3、15秒时仍无人抢答其报警电路工作表示抢答时间耗尽并禁止抢答。4、如果想调节抢答时间或答题时间,按抢答时间调节键或答题时间调节 键进入调节状态,此时会显示现在设定的抢答时间或回答时间值,如想加一秒按一下加1s键,如果想减一秒按一下-1s键,时间LED上会显示改变后的时间,调整范围为0s99s, 0s时再减1s会跳到99,99s时再加1s会变到0s。 5、主持人按抢答开始键,会有提示音,并立刻进入抢答倒计时(预设15s抢答时间),如有选手抢答,会有提示音,并会显示其号数并立刻进入回答倒计时(预设45s回答时间),不进行抢答查询,所以只有第一个按抢答的选手有效。倒数时间到小于5s会每秒响一下提示音。 6、如倒计时期间,主持人想停止倒计时可以随时按停止按键,系统会自动进入准备状态,等待主持人按抢答开始进入下次抢答计时。 7、如果主持人未按抢答开始键,而有人按了抢答按键,犯规抢答,LED上不断闪烁FF和犯规号数并响个不停,直到按下停止 键为止。第6章 课程设计小结及心得经过将近两个星期的不停地检测和修改,终于把最终的电路图和成品完成了。经过了这次课程设计,大大地提高了我的动手能力以及分析问题的能力,在老师热心的指导下,解决了很多问题,从中也学到了很多书本上所没有学到的知识。这次课程设计,让我学到了很多有用的知识和能力,这对以后的学习和工作都将是非常有益的。下面是对本设计的思路总结:1. 数字抢答器由主体电路与扩展电路组成。2. 优先编码电路、锁存器、译码电路将参赛队的输入信号在显示器上输出;用控制电路和主持人开关启动报警电路,以上两部分组成主体电路。3. 通过定时电路和译码电路将秒脉冲产生的信号在显示器上输出实现计时功能,构成扩展电路。4. 经过布线、调试等工作后数字抢答器成形。 课程设计诚然是一门专业课,给我很多专业知识以及专业技能上的提升,同时又是一门讲道课,一门辩思课,给了我许多道,给了我很多思,给了我莫大的空间。同时,设计让我感触很深。使我对抽象的理论有了具体的认识。通过这次课程设计,我掌握了常用元件的识别和测试;熟悉了常用仪器、仪表;了解了电路的连线方法;以及如何提高电路的性能等等,掌握了焊接的方法和技术,通过查询资料,也了解了收音机的构造及原理。我认为,在这学期的实验中,不仅培养了独立思考、动手操作的能力,在各种其它能力上也都有了提高。更重要的是
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 砸车安全测试题及答案
- 2025年国家电投黄河公司毕业生招聘考试笔试试题(含答案)
- 2025年甘肃天水师范大学招聘事业编制学生专职辅导员笔试考试试题(含答案)
- 2024年演出经纪人继续教育题库及答案【各地真题】
- 2024年事业单位考试古县A类《职业能力倾向测验》统考试题含解析
- 消防安全知识培训模拟试题及参考答案
- 卫生院过敏性休克、急性心梗的急救与护理培训考试试题(附答案)
- 传染病及突发公共卫生事件试题及答案
- 2024水利安全员考试题题库及答案
- 标准理论基础知识培训课件
- GB/T 14188-2008气相防锈包装材料选用通则
- 钴领域:华友钴业企业组织结构及部门职责
- 血小板聚集功能测定及临床意义课件
- 工程质量通病防治措施专项施工方案
- 设备检修管理流程图
- 最新《心衰指南》课件
- DB4401-T 43-2020 反恐怖防范管理+防冲撞设施-(高清现行)
- 建筑节能工程竣工验收报告3篇(施工单位节能验收报告)
- 堤防工程重点难点
- 卸料平台(落地搭设)验收记录表
- 新媒体研究方法教学ppt课件(完整版)
评论
0/150
提交评论