单片机原理与应用课程设计-八路抢答器.doc_第1页
单片机原理与应用课程设计-八路抢答器.doc_第2页
单片机原理与应用课程设计-八路抢答器.doc_第3页
单片机原理与应用课程设计-八路抢答器.doc_第4页
单片机原理与应用课程设计-八路抢答器.doc_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

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

文档简介

课程设计报告课程名称:单片机原理及应用课程设计 设计题目: 八路抢答器 系 别: 通信与控制工程系 专 业: 电子信息工程 班 级: 08级电信二班 学生姓名: 学 号: 起止日期: 2010年12月20日 2010年12月31指导教师 教研室主任: 指导教师评语: 指导教师签名: 年 月 日成绩评定项 目权重成绩杨辉贺登高1、设计过程中出勤、学习态度等方面0.22、课程设计质量与答辩0.53、设计报告书写及图纸规范程度0.3总 成 绩 教研室审核意见:教研室主任签字: 年 月 日教学系审核意见: 主任签字: 年 月 日摘 要抢答器是一种应用非常广泛的设备,在各种竞猜、抢答场合中,它能迅速、客观地分辨出最先获得发言权的选手。本文介绍了利用52单片机及外围接口实现的抢答系统,利用单片机的定时器/计数器定时和记数的原理,将软、硬件有机地结合起来,使得系统能够正确地进行计时,同时使数码管能够正确地显示时间。同时系统能够实现:在抢答中,只有开始后抢答才有效,如果在开始抢答前抢答为无效;可以显示是抢答时间和回答问题时间倒记时显示,满时后系统计时主控强制复位。关键字:抢答器 ;52单片机;定时器;计数器;数码管目 录设计要求11 方案论证与对比11.1 方案一:采用数字电路控制11.2 方案二:采用单片机控制21.3 方案对比与选择22 单元电路设计32.2抢答器显示模块的设计42.3控制器模块电路的设计52.4 复位电路的设计52.5 晶振电路设计62.6 按键电路设计73 软件详细设计73.1系统主程序设计73.2显示子程序的设计93.3抢答处理程序的设计104 调试功能说明104.1硬件系统的调试104.2软件调试114.3软硬件系统联合调式124.4焊接的问题及解决125 详细仪器清单136 总结与思考13致谢14参考文献16附录一17附录二18八路抢答器设计要求1、一位主持人与3位抢答者,复位后,甲乙丙的绿、红灯全亮,开始键、复位键的指示灯全暗;主持人按复位键则仅复位指示灯亮,其他都暗,准备开始;主持人按开始键,开始灯亮,允许甲乙丙抢答,此时优先者则相应成功指示灯亮,如允许前抢就犯规相应的犯规红灯亮;抢答成功则相应的绿灯亮,答题开始并进行倒计时,到规定时间不允许答题,并返回复位状态;2、具有抢答控制和倒计时显示功能;3、控制器应有复位控制、开始控制、抢答控制和状态指示等功能,并有答题时间控制和显示功能。1 方案论证与对比在电视和学校中我们会经常看到一些智力抢答的节目,如果要是让抢答者用举手等方法,主持人很容易误判,会造成抢答的不公平,比赛中为了准确、公正、直观地判断出第一抢答者,所设计的抢答器通常由数码显示、灯光、音响等多种手段指示出第一抢答者。为了使这种不公平不发生,只有靠电子产品的高准确性来保障抢答的公平性。1.1 方案一:采用数字电路控制定时抢答器的总体框图如图1所示,它由主体电路和扩展电路两部分组成。主体电路完成基本的抢答功能,即开始抢答后,当选手按动抢答键时,能显示选手的编号,同时能封锁输入电路,禁止其他选手抢答。扩展电路完成定时抢答的功能1。定时抢答器的工作过程是:接通电源时,节目主持人将开关置于“清除”位置,抢答器处于禁止工作状态,编号显示器灭灯,定时显示器显示设定的时间,当节目主持人宣布“抢答开始”,同时将控制开关拨到“开始”位置,其他选手抢答到时间后,抢答器处于工作状态,定时器倒计时。当一轮答题结束后,数码管显示0,即又进入下一轮抢答,原理框图如图1所示:抢答按键优先编码器译码显示器锁存器检测按钮控制图 1方案一系统方框图1.2 方案二:采用单片机控制此电路完成的功能如图2所示,当主持人宣布抢答开始的时候,按下开始按钮,此时电路进入抢答状态,选手的输入采用了扫描式的输入,之后把相应的信息送往单片机,再由单片机输出到显示输出电路中。此时有人第一按下相应的抢答按钮,经过单片机的控制选择,在八段显示器上显示相应的号码,并锁存,同时禁止其他按钮的输入。 图 2 方案二系统方框图1.3 方案对比与选择数字电路的制作方案比较容易实现,并且在原理方面也是较简单,但这种方式制作过程复杂,而且准确性与可靠性不高,成品面积大,安装、维护困难,在具体的应用过程中也容易出问题。利用了单片机的延时电路、按键复位电路、时钟电路、定时/中断等电路,设计的抢答器具有实时显示抢答选手的号码和抢答时间的特点,还有复位电路,使其再开始新的一轮的答题和比赛,同时还可编程功能,使其实现其他一些基本的功能。显然方案二比方案一简单的多,不但从性能上优于方案一,而且在使用上及其功能的实现上都较方案一简洁,并且由于单片机具有优越的高集成电路性,使其工作速度更快、效率更高2。另外89C52单片机采用12MHz的晶振,提高了信号的测量精度,并且使该系统可以通过软件改进来扩张功能。而方案一采用了中小规模集成电路,有其复杂的电路性能,从而可能会使信号的输入输出产生延时及不必要的误差。依此依据选择方案二比较适合。综合考虑采用第二种方案来完成本次八路抢答器课程设计。2 单元电路设计2.1 总体硬件设计思路其工作原理为:接通电源后,主持人将开关拨到“清除”状态,抢答器处于禁止状态,编号显示器灭灯,定时器显示设定时间;主持人将开关置,“开始”状态,宣布“开始”抢答器工作,定时器倒计时。选手在定时时间内抢答时,抢答器完成:优先判断、编号锁存、编号显示。当一轮抢答之后,定时器停止,禁止二次抢答,定时器显示剩余时间。如果再次抢答必须由主持人再次操作“开始、停止”状态开关。总体原理图见附录一。其原理框图如下: 图3抢答器的原理框图2.2抢答器显示模块的设计显示模块主要是显示抢答的时间、组别号码等,使用传统的数码管及发光二极管显示。数码管具有:低能耗、低损耗、低压、寿命长、耐老化、防晒、防潮、防火、防高(低)温,对外界环境要求低,易于维护,同时其具有精度高、称量快、操作简单等特点。数码显示是采用BCD编码显示数字,程序编译容易,资源占用较少3。数码显示管用来作为时间的显示输出,一般用7段数码显示管。本次设计中采用7段共阳数码显示管应用简单、可靠性高、成本低,作为显示输出。连接时段选信号接在8255PB口的PB.0PB.7八个I/O口上。其模块接口电路如图4所示:图 4显示模块接口电路。表1:七段LED字型码显示字符共阳极字符显示字符共阳极字符0C0HA88H1F9Hb83H2A4HCC6H3B0HdA1H499HE86H592HF8EH682HP8CH7F8HH89H880HLC7H990H灭FFH2.3控制器模块电路的设计采用ATMEL公司的STC89C52作为系统控制器的CPU(Central Processing Unit)。芯片引脚如图5所示: 图 5 89C52及8255的引脚图2.4 复位电路的设计该复位电路采用上电自动复位和手动复位两种复位方式,图中网络标号所指9连接到单片机的复位引脚。要实现复位只需在52系列单片机的RESET引脚上加上5ms的高电平就可以了。上电复位是利用电容的充电来实现的,即上电瞬间RESET端的电位与Vcc相同,随着电容上储能增加,电容电压也逐渐增大,充电电流减小,RESET端的电位。这样就会建立一个脉冲电压,调节电容与电阻的大小可对脉冲的持续时间进行调节。通常若采用12MHz的晶振时,复位元件参数为22F的电解电容和1k的电阻。按钮复位电路是通过按下复位按钮时,电源对RESET端维持两个机器周期的高电平实现复位的4。电路如图6示:图 6 复位电路2.5 晶振电路设计MSC-51单片机的定时控制功能是用时钟电路和振荡器完成的,而根据硬件电路的不同,连接方式分为内部时钟方式和外部时钟方式。本设计中采用内部时钟方式。单片机内部有一个反相放大器,XTAL1、XTAL2分别为反相放大器的输入端和输出端,外接定时反馈元件组成振荡器(内部时钟方式),产生时钟送至单片机内部各元件。时钟频率越高,单片机控制器的控制节拍就越快,运算速度也就越快。一般来说单片机内部有一个带反馈的线性反相放大器,外界晶振(或接陶瓷振荡器)和电容就可组成振荡器,如图6所示。加电以后延时一段时间(约10ms)振荡器产生时钟,不受软件控制,图中Y1为晶振,震荡产生的时钟频率主要由Y1确定。电容C1,C2的作用有两个:一是帮助振荡器起振,二是对振荡器的频率起微调作用,典型值为30pF。电路如图7所示:图 7 晶振电路2.6 按键电路设计选手抢答及主持人开始复位按键采用4行4列矩阵式键盘,其特点是键多时占用I/O口线少,硬件资源利用合理。矩阵式键盘电路如图8所示。图8 矩阵式电路接口图3 软件详细设计3.1系统主程序设计为了能够达到抢答的公平、公正、合理,应该在主持人发布抢答命令之前必须先设定抢答的时间,因而在编开始抢答前的程序得先编写设定时间的程序,当时间设好了之后,主持人发布抢答命令按下P1.7按键,程序开始打开定时中断开始倒计时,然后调用键盘扫描子程序,编写键盘扫描程序。主程序流程图如下:主程序系统结构应包括系统初始化模块、按键模块、非法抢答模块、正确抢答模块调整抢答时间、调整回答时间和显示模块,结构图如图9所示,详细程序见附录2。图9 主程序流程图3.2 显示子程序的设计用8255芯片的PA控制数码管的位选,端口PB控制数码管段码显示。数码管显示正在播放歌曲序列号信息。七段LED数码管构成“日”字形,还有一只发光二极管作为小数点。因此,这种七段数码管又可称为八段数码管。通过8个发光段的不同组合,可以显示09个数字,从而可以实现十六进制整数和小数的显示。LED数码管显示器可以分为共阴极和共阳极两种接法。开始调试时,在Protues软件上可以很好模拟动态显示效果,但硬件电路数码管显示效果失真,考虑到延时在动态显示中的重要作用,通过调小延时时间,使数码管稳定、准确地显示。显示子程序的设计流程如图10所示。图 10显示子程序的设计3.3抢答处理程序的设计该部分完成两个功能:一是分辨出选手按键的先后,并锁存优先抢答者的选定项,;二是若其他选手按键操作无效,则不会显示其按键,视为不理会,如有再次抢答需由主持人将S开关重新置,“清除”然后再进下一次抢答。通过STC89C52芯片的控制,从而构成了整个电路5。抢答组数可以在八组以内任意使用,其流程图如下: 图11.抢答处理程序设计4 调试功能说明4.1硬件系统的调试系统调试包括硬件调试和软件调试,而且两者是密不可分的。设计好的硬件电路和软件程序,只有经过联合调试,才能验证其正确性;软硬件的配人情况以及是否达到设计任务的要求,也只有经过调试,才能发现问题并加以解决、完善,最终开发成实用产品。4.1.1 电路板的制作与检查当智能抢答器的硬件和软件程序设计完成后,为了事先验证硬件和软件的相容性以及整体方案设计的可行性,本设计用Proteus软件对智能抢答器进行仿真,如果软件仿真能够达到设计要求的话,证明整体设计方案具有可行性,可以进行实物电路的焊接,进行软硬件的联合调试。Proteus相当于硬件开发,只是虚拟的,可以看到程序代码是怎么样一步一步运行。 考虑到本系统所用元器件较少,大部分功能都是通过软件编程来实现,同时也出于对毕业设计成本的考虑,因此所用到的板子是自己手工制作的PCB板。在电路板的制作中,首先要进行线路的排布。利用PROTEL 软件模拟实际电路板的线路走向,尽量避免线路出现交叉短路,电源线路尽量安排在电路板的最外圈。PCB板刻录完成之后,开始进行焊接工作。焊接完后进行电路板检查,将原线路图与实际焊接的电路板进行对比,由于线路不多,所以用万用表的欧姆档或是短路声响指示功能来做焊点的检测,如此可以避免焊接时漏焊、虚焊和配线错误的问题,同时保证了所制作出来的线路与原设计线路的一致性。4.1.2 电路模块调试本设计硬件部分主要为显示模块按键模块。硬件电路功能检测主要针对这两部分进行测试。对于显示电路,由于使用的是三联数码管显示屏,首先要确定数码管的共阴还是共阳极。因此先用万用表检测是什么极性。然后再先固定下,检查显示电路能否正常显示。最后再焊接上去。 对于按键部分,首先要确定各个按键是否完好,先自己接到一个简易的电路上测试下,确定完好后再焊接。4.2软件调试软件的设计与调试实行分模块实现方法。本设计软件调试中的分模块包括显示功能模块、调正时间功能模块,抢答功能模块。各个独立模块功能调试成功后,将这些模块程序通过主程序合并在一起,最后再对合并后的总程序进行调试。各软件模块首先要通过PC和仿真器进行软件调试,当仿真效果符合要求后,再烧写进单片机看能否在实际电路板上正常工作。编程语言的软件设计采用MCS-51汇编语言编写,所使用的调试软件批Proteus6。软件的调试必须在开发系统的支持下进行。先分别调试通过各个模块程序,然后调试主程序,再将各部分连接进行调试。调试的范围可以由小到大、逐步增加。通常交叉使用单步运行、断点运行、连续运行等多种方式,每次执行完毕后,检查CPU执行现场、RAM的有关内容、I/O口的状态等。发现一个问题,解决一个问题,直至全部通过。4.3软硬件系统联合调式将烧录好的AT89S52芯片固定在电路板底座上。接下来给系统通电,系统正常工作时,可以看到:当主持人没有按下“开始抢答键”时,显示装置显示的是“0”,当主持人按下“开始抢答键”时,如果有选手抢到题,显示装置显示抢答的倒计时时间,如果抢答时间耗尽而没有选手抢答,则显示装置显示“0”;如果抢答倒计时期间有选手抢答,则指示灯没有变换,即按键无效,如果答题时间倒计时10s时答题选手还没有回答完问题,则时间跳完,主持人按复位键进入下一轮。另外,任何时候,主持人可以按下手中的“停止”按键终止一切进程,使显示装置显示“0”。上述情况均是智能抢答器正常工作的情况,如果在软硬件的调试过程中不能做到以上几点,应该努力排错修改,不断完善智能抢答器的功能。4.4焊接的问题及解决一般来说,造成硬件问题的首要问题就是焊接了,也就是说焊接的好与坏直接响产品的正常运行。造成焊接质量不高的常见原因是:(1)焊锡用量过多,形成焊点的锡堆积;焊锡过少,不足以包裹焊点。(2)冷焊。焊接时烙铁温度过低或加热时间不足,焊锡未完全熔化、浸润、焊锡表面不光亮(不光滑),有细小裂纹。(3)夹松香焊接,焊锡与元器件或印刷板之间夹杂着一层松香,造成电连接不良。若夹杂加热不足的松香,则焊点下有一层黄褐色松香膜;若加热温度太高,则焊点下有一层碳化松香的黑色膜。对于有加热不足的松香膜的情况,可以用烙铁进行补焊。对于已形成黑膜的,则要吃净焊锡,清洁被焊元器件或印刷板表面,重新进行焊接才行。(4)焊锡连桥。指焊锡量过多,造成元器件的焊点之间短路。这在对超小元器件及细小印刷电路板进行焊接时要尤为注意。(5)焊剂过量,焊点明围松香残渣很多。当少量松香残留时,可以用电烙铁再轻轻加热一下,让松香挥发掉,也可以用蘸有无水酒精的棉球,擦去多余的松香或焊剂。(6)焊点表面的焊锡形成尖锐的突尖。这多是由于加热温度不足或焊剂过少,以及烙铁离开焊点时角度不当浩成的内。最小系统的电路不工作,首先应该确认电源电压是否正常。用电压表测量接地引脚跟电源引脚之间的电压,看是否符合电源电压,常用的是5V左右。接下来就是检测复位引脚的电压是否正常,EA引脚的电压要正常为5V左右。5 详细仪器清单表2 仪器清单仪器名称数量/个STC89C52182551SW-PB6Y1XTAL1按键式开关5LED8数码管21K电阻7100PF电容31K电阻26 总结与思考课程设计是培养我们综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对我们实际工作能力的具体训练和考察过程。随着科学技术发展的日新日异,单片机已经成为当今计算机应用中空前活跃的领域,在生活中可以说得是无处不在。因此作为二十一世纪的大学生来说掌握单片机的开发技术是十分重要的。回顾这次单片机课程设计,我感慨颇多。从选题到定稿,从理论到实践,在两个星期的日子里,可以说得是苦多于甜,但是可以学到很多很多的的东西,不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合的重要性,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,提高自己的实际动手能力和独立思考的能力。在设计的过程中我遇到了很多问题,从而发现了自己的不足之处,主要是对以前所学过的理论知识掌握得不够透彻,对单片机语言掌握得不好,以及缺少实践经验。这次课程设计使我重新了解自己的水平,从而确定了今后的努力方向。我想这对于自己以后的学习和工作都会有很大的帮助的。在这次设计中遇到了很多实际性的问题。在实际设计中才发现,书本上理论性的东西与在实际运用中的还是有一定的出入的,所以有些问题不但要深入地理解,而且要不断地更正以前的错误思维。对于单片机设计,其硬件电路是比较简单的,主要是解决程序设计中的问题。而程序设计是一个很灵活的东西,它反映了你解决问题的逻辑思维和创新能力。它才是一个设计的灵魂所在。因此在整个设计过程中大部分时间是用在程序上面的。很多子程序是可以借鉴书本上的,但怎样衔接各个子程序才是关键的问题所在,这需要对单片机的结构很熟悉。因此可以说单片机的设计是软件和硬件的结合,二者是密不可分的。这次课程设计更好的加深了我们对电路知识的掌握、理解及运用,提高了我的实际动手能力和学习兴趣。致谢经过自己不断的搜索努力以及指导老师的耐心指导和热情帮助,本设计已经基本完成。在这段时间里,老师严谨的治学态度和热忱的工作作风令我十分钦佩,老师指导使我受益非浅。同时实验室的开放也为我的设计提供了实习场地。在此对指导老师和同学表示深深的感谢。通过这次单片机课程设计,深刻地认识到学好知识的重要性,也理解了理论联系实际的含义,并且检验了大学几年的学习成果。虽然在这次设计中对于知识的运用和衔接还不够熟练。但是我将在以后的工作和学习中继续努力、不断完善。这将近两个星期的设计是对过去所学知识的系统提高和扩充的过程,为今后的发展打下了良好的基础。17参考文献1高卫东,辛友顺,韩彦征,51单片机原理与实践编著M,北京航空航天大学出版社,2008.12刘红玲、邵晓根,微机原理与接口技术M,中国电力出版社,2006年第一版3冯博琴,微型计算机原理及接口技术M,清华大学出版社4艾德才,微型计算机原理与接口技术M,高等教育出版社5沈美明,IBM-PC汇编语言程序设计M,清华大学出版社6薛栋梁,单片机原理及应用M,中国水利水电出版社,2001附录一:八路抢答器原理图 附录二:程序#include #define uchar unsigned char#define uint unsigned intsbit RESET=P32;sbit START=P33; uchar xdata PA _at_ 0xD9FF, PB _at_ 0XDBFF, PC _at_ 0XDDFF,/定义外部变量,强制分配地址EX_PORT_CON _at_ 0XDFFF;uchar code LED_CODE=0XA0,0XBB,0X62,0X2A,0X39,0X2C,0X24,0XBA,/LED段码(09) 0X20,0X28; uchar KEY,SEC=9,COUNT=0;bit GOT_KEY=0,ERROR=0;void Delay(uint A);void Key_Scan();void main()EX_PORT_CON=0X81; /8255初始化(PA,PB,PC_H输出,P

温馨提示

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

评论

0/150

提交评论