八路竞赛抢答器的设计与制作_第1页
八路竞赛抢答器的设计与制作_第2页
八路竞赛抢答器的设计与制作_第3页
八路竞赛抢答器的设计与制作_第4页
八路竞赛抢答器的设计与制作_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

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

文档简介

1、<<单片机原理及应用>>课程设计报告 题 目: 八路竞赛抢答器的设计与制作 专 业: 通信工程 年 级: 2011 级 学 号: 1110618019 学生姓名: 刘文青 联系电话:指导老师: 王 辉 完成日期:2014年5月25日摘 要 随着科学技术的发展和普及,各种各样的竞赛越来越多,其中抢答器的作用也越来越重要。本设计是以STC89C52单片机为核心的八路抢答器,以抢答为出发点,采用了数字显示器直接指示,自动锁存显示结果,并自动复位的设计思想,它能根据不同的抢答输入信号,经过单片机的控制处理并产生不同的与输入信号相对应的输出信号,最后通过

2、LED数码管显示相应的路数,充分利用了单片机系统结构简单、功能强大、可靠性好、实用性强的特点。 关键词:单片机;抢答器;LED数码管ABSTRACT With the development and popularization of science and technology, all kinds of competition is increasing, the role of the buzzer is becoming more and more important. This design is based on STC89C52 single-chip microcomputer

3、 as the core of eight-way responder, vies to answer first as a starting point, the digital display direct instructions, automatic latch display results, and the idea of the design of the automatic reset it can according to different vies to answer first the input signal, through single chip microcom

4、puter control processing and generate different corresponding to the input signal is output signals, finally through the LED digital tube display the corresponding way, make full use of the single chip microcomputer system structure is simple, powerful functions, the characteristics of good reliabil

5、ity and strong practicability. Key Words: single-chip microcomputer;eight-way responder;LED digital tube 目录摘 要IABSTRACTI1 设计要求及方案选择11.1 设计要求11.2 方案选择12 理论分析与设计32.1 总体电路的分析及设计32.2 STC89C52RC单片机的介绍32.4 复位电路的分析及设计52.5显示电路的分析及设计52.6报警电路的分析及设计62.6时钟电路的分析及设计63电路设计73.1 硬件电路的设计73.2 软件的设计84 系统测试94.1 调试所

6、用的基本仪器清单94.2 调试结果104.3 测试结果分析105 总结10参考文献11附录一 元件清单12附录二 八路抢答器PCB原理图13附录三 八路抢答器C程序14161 设计要求及方案选择1.1 设计要求 (1)抢答器同时供8名选手或8个代表队比赛,分别用8个按钮S0S7表示。(2)设置一个系统清除和抢答控制开关S,该开关由主持人控制。(3)抢答器具有定时抢答功能,且一次抢答的时间由主持人设定(如30秒)。当主持人启动“开始”键后,定时器进行减计时,同时扬声器发出短暂的声响,声响持续的时间0.5秒左右。(4)参赛选手在设定的时间内进行抢答,抢答有效,定时器停止工作,显示器上显示选手的编号

7、和抢答的时间,并保持到主持人将系统清除为止。(5)如果定时时间已到,无人抢答,本次抢答无效,系统报警并禁止抢答,定时显示器上显示00。1.2 方案选择方案一:基于74系列集成芯片的八路数字抢答器设计 主体电路抢答按钮报警电路控制电路主持人控制开关译码电路定时电路秒脉冲产生电路显示电路译码电路译码显示锁存器优先编码电路 扩展电路图1 方案一原理框图 如图1所示,利用74系列集成芯片设计数字抢答器,使其完成以下功能:(1)基本功能: 抢答器同时供8名选手或8个代表队比赛,分别用8个按钮S0 S7表示。 设置一个系统清除和抢答控制开关S,该开关由主持人控制。 抢答器具有锁存与显示功能。即选手按动按钮

8、,锁存相应的编号,扬声器发出声响提示,并在DPY_7-SEG七段数码管上显示选手号码。选手抢答实行优先锁存,优先抢答选手的编号一直保持到主持人将系统清除为止。(2)扩展功能: 抢答器具有定时抢答功能,且一次抢答的时间由主持人设定(如30秒)。当主持人启动"开始"键后,定时器进行减计时。 参赛选手在设定的时间内进行抢答,抢答有效,定时器停止工作,显示器上显示选手的编号和抢答的时间,并保持到主持人将系统清除为止。在这段(3) 如果定时时间已到,无人抢答,本次抢答无效,系统报警并禁止抢答,定时显示器上显示00。方案2:基于单片机的八路竞赛抢答器设计 蜂鸣器报警指示 LED数码显示

9、 单片机 主控电 驱动电路 键盘扫描电路 路 图2 方案二系统原理框图 如图2所示,利用单片机系统来设计抢答器,以STC89C52单片机作为主控核心,与数码管、蜂鸣器等构成八路抢答器,利用了单片机的延时电路、按键复位电路、时钟电路、定时/中断等电路,在抢答器系统中,设有八个抢答组,可任意使用。并且具有倒计时和时间设置报警功能。设计的八路抢答器具有倒计时和实时显示抢答选手的号码的特点,还有复位电路,使其再开始新的一轮的答题和比赛。并且从硬件和软件两方面分别阐述该控制系统的设计方法,并通过运行和调试使该系统达到预期设计要求,具有反应快、功能强和便于调试修改的的优点。通过对比这两种方案,考虑到成本、

10、性能、操作的简易程度等方面问题,最终确定选择方案2进行设计制作。2 理论分析与设计2.1总体电路的分析及设计 抢答器的总体电路原理如图3所示,工作原理为:电源电路为单片机提供标准+5V电源;单片机作为主控制器,根据输入信号对系统进行响应的控制;选手按下响应的按键后,提交输入信号给系统;数码管显示最先按下按键的选手的编号,直到主持人清零;主持人按下清零按键,数码管清零,系统重新开始进行抢答。图3 总体电路原理图2.2 STC89C52RC单片机的介绍 在单片机 STC 89C52RC中,有256KB的片内数据存储器和8KB的片内程序存储器,因此在组建单片机的最小应用系统时,不需要在单片机的外部扩

11、展片外存储器。 单片机 STC 89C52RC中有四个8位的并行I/O接口:P0、P1、P2、P3。这四个接口,既可以作输入,也可以作输出,既可以按8位处理,也可以按位处理。P0口也可以作数据/地址线使用,在本次课程设计中,P0作数据线使用,向锁存器输出8位的字段码。P2口也可以作地址线使用,在本次实验中,P2口作位选码输出端。P1口中选三个端口作按键输入端。 图4 STC 89C52RC封装图 单片机控制线介绍:RST:上电复位端,当单片机振荡工作时,在该引脚上出现两个机器周期的高电平,单片机就可实现复位操作,使单片机回到初始状态。XTAL1、XTAL2:外接晶振引脚。/EA:片外程序存储器

12、选用端,低电平有效。本次实验中不需要扩张存储器,因此,在电路中此端口接高电平。/PSEN:片外程序存储器读选通信号输出端,低电平有效。本次试验中无片外程序存储器,故此功能不需要,此端口接高电平或悬空。ALE:地址锁存信号输出端。本试验中没有用到16位地址线,故此端口悬空处理。VCC:电源端,接+5V电源正端。GND:接地端,接+5V电源地端。2.4 复位电路的分析及设计 复位电路的设计如图5所示,复位操作完成单片机片内电路的初始化,由S1按键控制,使单片机从一种确定的状态开始运行。图5 复位电路2.5显示电路的分析及设计 显示电路用了一个一位一体数码管和一个两位一体的数码管,它们是共阴极的,由

13、高电平点亮。可以直接接收STC89C52单片机传送的信号。我们要使其显示数字,就必须对其接收的信号进行处理。选手按下按键后,先由程序选择数码管将要显示的内容,再将处理后的信号提交给数码管,以完成显示特定信息的功能。图6 显示电路2.6报警电路的分析及设计 采用普通5V成品小蜂鸣器。利用程序来控制单片机某个口线的“高”电平或低电平,则在该口线上就能产生一定频率的矩形波,接上喇叭就能发出一定频率的声音,若再利用延时程序控制“高”“低”电平的持续时间,就能改变输出频率,从而改变音调,使喇叭发出不同的声音。图7 报警电路2.6时钟电路的分析及设计在引脚XTAL1和XTAL2外接晶体振荡器(简称晶振)或

14、陶瓷谐振器,就构成了内部振荡方式。由于单片机内部有一个高增益反相放大器,当外接晶振后,就构成了自激振荡器,并产生振荡时钟脉冲。晶振通常选用6MHz、12MHz或24MHz。内部振荡方式如图8所示。图中电容器C1,C2起稳定振荡频率、快速起振的作用。电容值一般为5-30pF。内部振荡方式所得的时钟信号比较稳定,实用电路中使用较多。图8 时钟电路3电路设计3.1 硬件电路的设计图9 八路竞赛抢答器原理图 如图9所示采用单片机STC89C52作为控制芯片,单片机的P0口外接一个两位一体的共阴数码管,用来显示30s的倒计时显示。并在P3口上并接开关按键,按键另一端接地。在程序编程上采用查询,查询P3口

15、P3.0到P3.7的八个端口呈低电平,即查询是哪个选手先按键,然后将选手号码的字节数据送至串行口并在P1口外接的数码管上显现出来。蜂鸣器是利用三极管处于开关状态是的导通与截止工作,在三极管导通时蜂鸣器工作,三极管截止时蜂鸣器不工作。三极管采用8550 PNP型基极接于P2.4口置其低电平时三极管导通,置其高电平时三极管截止。 数码管采用共阴极七段显示,其内部发光二极管为共阴极接低电平,当对应发光二极管一端为高电平时发光二极管点亮,显示的数字或字符由送入的字节数据控制,电路中有一个一位一体数码管和一个两位一体的数码管,一位数码管用来显示抢答时,抢答的组数,两位一体的数码管用来显示30s倒计时显示

16、。抢答组数由P3口的按键控制,通过是否按下按键来辨别是哪一组抢答,并在抢答时,倒计时停在当前值。30s倒计时显示,则由开始键按下后,开始计时,若在规定时间内无人抢答,最后数码管显示00并且蜂鸣器发出报警声。 3.2软件的设计3.2.1 主程序流程图 START 蜂鸣器0.5s报警 倒计时30s开始计时 是否有人抢答? NO YES 继续计时 停止计时, 显示抢答 计时结束,蜂 鸣器一直报警 复位 返回图10 主程序流程图 整个抢答过程首先由主持人按下start键,蜂鸣器发出0.5s的报警,系统开始30s的倒计时,进入抢答状态,选手开始抢答。如果有选手进行抢答,倒计时停止于当前状态,数码管显示第

17、一个抢答选手的编号,直到主持人按下复位键准备开始进行新一轮的抢答;如果没有人抢答,倒计时30s正常进行,结束后蜂鸣器一直报警,直到主持人按下复位键,蜂鸣器停止报警,系统回到初始状态,然后进行下一轮的抢答,即重复以上过程。3.3.2 中断程序流程图定时器0中断 N1秒时间到? Y秒减1? 数码管显示秒值中断返回图11 中断程序流程图中断是指由于某种随机事件的发生,计算机暂停现行的程序,转去执行另一程序以处理发生的事件,处理完毕后又自动返回原来的程序继续运行。在此设计中,定时器0中断发生时,判断1秒时间是否达到,如果到1秒,倒计时减少1秒,数码管显示减1秒后的秒值;如果1秒时间没有达到,数码管显示

18、当前秒值,然后中断返回,继续执行原来的程序。4 系统测试4.1调试所用的基本仪器清单 数字万用表、5v-12v电源、杜邦线和单片机实验板等。4.2调试结果 在接通电源后,按下开始键,蜂鸣器会发出0.5s时间的报警,倒计时开始计时,起始时间30s,逐秒减一。如果在30s之内有人抢答,则倒计时停在当前位置,单位数码管上面显示首个抢答者编号。若在规定时间内无人抢答,倒计时结束后,时间会停在“00”,并且蜂鸣器开始一直报警,直到主持人按下复位键。在开始前和倒计时结束后,抢答均无效,单位数码管上仍旧显示“0”。4.3测试结果分析存在的问题是在按下开始键后,蜂鸣器报警的响度不够,可能是连接三极管出现了问题

19、,或者三极管的规格达不到以致没有足够的电流驱动报警电路。另外,在按键按下时,数码管显示的数字会出现闪烁现象,这可能是由于所编写的程序有一定的缺陷所造成的。总体来说,经过测试,本次设计基本达到要求。5 总结经过近一个月的努力,在老师和小组同学的讨论和帮助下,我成功地完成了八路抢答器的设计,通过此次课程设计,我重新认识到了对书本上的知识要独立运用的道理。在抢答器设计过程中,发现了很多细节性的问题,也出现了很多错误,其中主要是程序的问题,比如在主持人未按下开始键时,选手就可以抢答,经过和同学们研究、商讨后,确定是因为程序没有完成锁存的问题;再比如蜂鸣器不能报警的问题,起初以为是程序的问题,但经过多次

20、的修改一直没能解决,于是回过头去检查硬件及电路,最后发现实物三极管与电脑软件中的三极管封装不同,管脚的位置是错位的,最后通过扭转管脚终于实现了报警电路的功能。由此看出,在做课程设计时一定要注意每一个细节,不能想当然的自以为是。另外,出现的最严重的问题是,我们小组成员都忽略了抢答器的关键性问题,就是抢答。这个隐藏在课题题目中的问题我们竟然没有发现,只是按照给出的要求完成了相应的功能,经过老师的指导,又进行程序的修改,缩短了延时,最后取得了成功。我在这一次抢答器的设计过程中,很是受益匪浅。经过不断的发现问题,解决问题,不仅提高了自己的能力,也使自己巩固了学过的知识,夯实了基础,培养了我运用所学知识

21、解决实际问题的能力。这为自己今后进一步深化学习,积累了一定宝贵的经验。参考文献 1 边春远.51单片机应用开发实用子程序M.北京:人民邮电出版社,2005 2 李光飞.单片机课程设计指导M.北京:北京航天航空大学出版社,2004 3 李朝青.单片机原理及接口技术M.北京:北京航空航天大学出版社,2002 4 胡伟.单片机C程序设计及应用实例M.北京:人民邮电出版社,2003 5 冯育长.单片机系统设计指导M.西安:西安电子科技大学出版社,2007 6 郭培源.电子电路及电子器件M.北京:高等教育出版社.,2003 附录一 元件清单 元件名称规格数量STC89C52-174LS245-1排阻A1

22、02G1蜂鸣器有源1晶振11.0592MHZ1电解电容10pF1瓷片电容30pF2按键开关-10三极管S85501电阻1K1电阻10K1数码管两位一体1数码管一位一体1附录二 八路抢答器PCB原理图附录三 八路抢答器C程序#include<reg52.h>#include<intrins.h>#define uc unsigned char#define ut unsigned intsbit we1=P20; /数码管显示位sbit we2=P21; /数码管显示位sbit beep=P23;/报警位sbit start=P22; /开始位uc aa,num1,key

23、,num;uc code table1=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;uc code table2=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f;void display(uc );uc keyscan();void init();void delay(uc );void main()/主函数 init();while(1) if(num1=30)num=0; if(start=0) beep=0; delay(500); beep=1; num1=30; num=0; TR0=1; display(num1); P1=table2

温馨提示

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

评论

0/150

提交评论