基于单片机的抢答器设计毕业论文.doc
《基于单片机的抢答器设计毕业论文.doc》由会员分享,可在线阅读,更多相关《基于单片机的抢答器设计毕业论文.doc(44页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 基于单片机的抢答器设计毕业论文目录1绪论11.1选题背景、目的、意义11.2八路抢答器的概述21.3系统主要功能22方案设计42.1主控制电路的选型42.2复位电路的设计52.3外部震荡电路的设计62.4报警电路的设计72.5显示电路的设计72.6键盘电路的设计83硬件电路设计103.1硬件电路的概述103.2主控制电路的选型113.3复位电路123.4外部震荡电路123.5报警电路133.6显示电路133.7键盘电路143.8抢答器电路图154软件设计164.1软件设计原理框图164.2程序流程图164.3抢答器的工作流程图184.4系统初始化模块194.5正确抢答模块204.6非法抢答模
2、块224.7数码管显示235系统软件仿真255.1电源参数与功耗255.2抢答器使用说明255.3程序仿真结果与分析256总结29致谢30参考文献31附录 1 源程序清单3242 / 441绪论1.1选题背景、目的、意义随着计算机技术的发展和在控制系统中的广泛应用,以与设备向小型化、智能化发展,作为高新技术之一的单片机,其体积小、功能强、价格低廉、使用灵活等优势,显示出了很强的生命力。进入21世纪以来,开发推出单片机的公司很多,各种高性能单片机芯片市场也异常活跃,新技术的不断采用,更加使单片机的种类、性能以与应用领域不断扩大和提高。因其功耗低,超高型,低成本,功能完整,在国越来越受到用户的重视
3、和广泛使用。本抢答器通过十分巧妙的设计仅数码管便实现了数显抢答的功能,与其他抢答器电路相比较有分辨时间极短、结构清晰,成本低、制作方便等优点。因此,我们制作了这款简易八路抢答器摒弃了成本高,体积大,而且操作复杂。我们采用了数码管显示直接指示,自动锁存显示结果,并自动复位的设计思想,因而本抢答器具有显示直观,不需要人干预的特点。而且在非常时期会发出嘟嘟声使效果更为生动。工厂、学校和电视台等单位常常举办各种智力竞赛, 抢答器是必要设备。抢答器是一种应用非常广泛的设备,在各种竞赛、抢答场合中,它能迅速、客观地分辨出最先获得发言权的选手。早期抢答器只是由几个三极管、可控硅、发光管等组成,能通过发光管辨
4、认选手。现在大多数抢答器均使用单片机(如MCS-51型)和数字集成电路,并增加了许多新功能,如选手显示、抢答按键前或按键抢答后的计时。抢答器已经作为一种必不可少的工具广泛应用于各种智力和知识竞赛场合,但一般的抢答器可靠性低,使用寿命短,介于这些不方便因素,此次设计提出了用AT89C51单片机为核心控制元件,设计一个简易的八路抢答器。本设计利用AT89C51单片机与外围接口实现的抢答系统,利用单片机的定时器/计数器定时和记数的原理,将软、硬件有机地结合起来,使得系统能够正确地进行计时,同时使数码管能够正确地显示时间和选手。用开关做键盘输出,扬声器发生提示。系统要求是:在抢答中,只有开始后抢答才有
5、效,如果在开始抢答前抢答为无效;抢答限定时间和回答以下问题的时间可以在1-99s之间设定;以显示是哪位选手有效抢答和无效抢答,正确按键后有提示音;抢答时间和回答以下问题时间倒记时显示后,时间完后系统自动复位;按键锁定,在有效状态下,按键无效非法。本次设计的系统实用性强、判断精确、操作简单、扩展功能强。通过这次设计,掌握51单片机的原理,了解简单多功能抢答器组成原理,初步掌握多功能抢答器的调整与测试方法,提高动手能力和排除故障的能力。同时通过本课题设计与调试,提高自己的动手能力,巩固已学的理论知识,建立单片机理论和实践的结合,了解多功能抢答器各单元电路之间的关系与相互影响,从而能正确设计、计算定
6、时计数的各个单元电路。初步掌握多功能抢答器的调整与测试方法。提高动手能力和排除故障的能力。1.2八路抢答器的概述本组设计的八路数码管显示抢答器具有电路简单、操作方便、灵敏可靠等优点。它由8个发射器和1个接收器组成,可用于8组或8组以下的智力竞赛中。比赛前,将参赛组从1至8编号,每组发给对应的一个发射器。将接收器放于各组中央或前方。主持人按一下启动键后,抢答开始。此后,哪一组最先按下发射器上的抢答键,接收器就立即显示该组的组号并锁定,同时发出一声提示音,以后按下任何一路抢答键均不起反映。只有主持人再次按动启动键后,才能进行下一次抢答,该电路由交流电源、抢答按键、单片机、外围电路、报警电路与显示电
7、路组成。1.3系统主要功能此次设计的抢答器具有同步显示的功能,并且有蜂鸣器的辅助,使得整个设计更加完整。在每次竞赛开始前,主持人读完比赛规则,可以对抢答器进行的时间进行预设。时间设定按键组共有4个按键,其中一个键为抢答时间修改键,一个为回答时间修改键,剩下的两个按键为加一修改键和减一修改键。比赛开始,主持人读完题后按下“开始键”,即抢答开始,蜂鸣器提示一次,此时数码管开始显示30s的倒计时;直到有一个选手按下抢答键,对应的会在数码管上显示出该选手的编号和回答剩余的时间,同时蜂鸣器也会发出一次提示音,以示有人抢答此题;如果在规定的30s时间没有人做出抢答,则此题作废,开始新一轮的抢答。在抢答和回
8、答时间的最后5s,蜂鸣器都会给予报警提示。在倒计时过程中,主持人可以随时按“停止键”完毕本次回答或者抢答。在主持未按下开始键,若果有人按下抢答键,则属于犯规抢答,此时,数码管上面会显示出违规的选手编号,同时蜂鸣器会以1s一次的频率发出警告。在每次抢答前后,主持人都可以按下复位键让系统清零,此时数码管上会显示“FFF”。 2方案设计本设计对其主控制电路、时钟频率、复位电路、显示电路、LED显示和键盘电路进行的方案选择,如图2-1硬件设计框图所示。图2-1硬件设计框图时钟频率:连接到XTAL1和XTAL2端口。复位电路:当一轮进行完时,由主持人按下开始按键,下一轮倒计时开始,复位电路接P3口。 键
9、盘电路:用于输入高低电平,连接到P1口,由P1口检测电平的变化。 LED显示电路:有三位数码管组成,前两位显示30s倒计时,由第三位显示成功抢答选手编号。 报警电路:有选手抢答成功,P3口发出脉冲使蜂鸣器发出声音。2.1主控制电路的选型控制器主要用于对显示、抢答、提示音等模块进行控制。控制器的选择有以下两种方案。方案一:采用FPGA(现场可编程门列阵)作为系统的控制器。FPGA可以实现各种复杂的逻辑功能,规模大,密度高,它将所有器件集成在一块芯片上,减小了体积,提高了稳定性,并且可以应用EDA软件仿真、调试,易于进行功能扩展。FPGA采用并行的输入输出方式,提高了系统的处理速度,适合作为大规模
10、实时系统的控制核心。但由于本设计对数据处理的速度要求不高,FPGA的高速处理的优势得不到充分表达,并且由于其集成度高,使其成本偏高,同时由于芯片的引脚较多,实物硬件电路板布线复杂,加重了电路设计和实际焊接的工作。方案二:采用AT89C51作为系统控制器的CPU方案。虽然目前单片机的品种很多,但其中最具代表性的当属Intel公司的MCS-51单片机系列。MCS-51以其典型的结构、完善的总线、SFR的集中管理模式、位操作系统和面向控制功能的丰富的指令系统,为单片机的发展奠定了良好的基础。单片机算术运算功能强、软件编程灵活、自由度大,可以用软件编程实现各种算法和逻辑控制,并且由于其功耗低、体积小、
11、技术成熟和成本低等优点,使其在各个领域应用广泛。在本系统中,通过比较发现用单片机来制作的抢答器,硬件电路比较简单,容易明白,成本相对较低且考虑到系统的功能需求和目前市场上的单片机应用情况以与与学习的8051单片机的兼容情况,选定MCS-51系统的AT89C51;而用FPGA来制作的抢答器,电路相对比较复杂,成本相对较高。综合考滤最终选择方案二。 2.2复位电路的设计典型的51单片机当RST脚的高电平持续两个机器周期以上就将复位,所以适当组合RC的取值就可以保证可靠的复位。一般教科书推荐C取10uf,R取8.2K。当然也有其他取法的,原则就要让RC组合可以在RST脚上产生不少于2个机周期的高电平
12、;复位输入高电平有效,当振荡器工作是,RST引脚出现两个机器周期以上的高电平,使单片机复位。此电路除具有上电复位功能外,若要复位只需按“RST”键,此电源VCC经电阻分压,在RST端产生一个复位高电平。单片机在开机时或在工作中因干扰而使程序失控或工作中程序处于某种死循环状态等情况下都需要复位。复位的作用是使中央处理器(CPU)以与其它功能部件都恢复到一个确定的初始状态、并从这个状态开始工作。所以我们从以下两个方案对复位电路进行论证,通过一系列的比较我选取了两种最实用的方案如下:方案一:手动按钮复位电路此电路是外部中断和部中断并存,单片机硬件复位端,只要持续两个机器周期的高电平即可实现复位,硬件
13、复位后的各状态可知寄存器以与存储器的值都恢复到了初始值,因为本设计中功能中有倒计时时间的记忆功能,所以不能对单片机进行硬件复位,只能用软件复位,软件复位实际上就是当程序执行完之后,将程序通过一条跳转指令让它完成复位。手动按钮复位需要人为在复位输入端RST上加入高电平。一般采用的方法是在RST端和正电源VCC之间接一个按钮。当人为按下按钮时,则VCC的+5V电平就会直接加到RST端。手动按钮复位的电路如所示。由于人的动作再快也会使按钮保持接通达数十毫秒,所以完全能够满足复位的时间要求。方案二:上电复位电路上电复位电路在上电的瞬间,电容充电电流最大,电容相当于短路,RST端为高电平,自动复位;电容
14、两端的电压达到电源电压时,电容充电电流为零,电容相当于开路,RST端为低电平,程序正常运行。在上电或复位过程中,控制CPU的复位状态是在这段时间让CPU保持复位状态,而不是一上电或刚复位完毕就工作,防止CPU发出错误的指令、执行错误操作,也可以提高电磁兼容性能。AT89C51的上电复位电路只要在RST复位输入引脚上接一个电容至VCC端,下接一个电阻到地即可。对于CMOS型单片机,由于在RST端部有一个下拉电阻,故可将外部电阻去掉,而将外接电容减至1uF。上电复位的工作过程是在加电时,复位电路通过电容加给RST端一个短暂的高电平信号,此高电平信号随着VCC对电容的充电过程而逐渐回落,即RST端的
15、高电平持续时间取决于电容的充电时间。为了保证系统能够可靠地复位,RST端的高电平信号必须维持足够长的时间。通过以上分析所以我们采用手动开关复位电路。2.3外部震荡电路的设计单片机各部件之间有条不紊地协调工作,其控制信号时在一种基本节拍的指挥下按一定时间顺序发出的,这些控制信号在时间上的相互关系就是CPU时序。产生这种基本节拍的电路就是振荡器和时钟电路。AT89C51单片机部有一个用于构成振荡器的单级反相放大器,引脚XTAL1为反相器输入端,XTAL2为反相器输出端。它是在放大器两个引脚上外接一个晶体(或陶瓷振荡器)和电容组成的并联谐振电路作为反馈元件时,便构成一个自激振荡器。单片机必须在时钟的
16、驱动下才能工作。在单片机部有一个时钟振荡电路,只需要外接一个振荡源就能产生一定的时钟信号送到单片机部的各个单元,决定单片机的工作速度。一般选用石英晶体振荡器。此电路在加电大约延迟10ms后振荡器起振,在XTAL2引脚产生幅度为3V左右的正弦波时钟信号,其振荡频率主要由石英晶振的频率确定。电路中两个电容C1,C2的作用有两个:一是帮助振荡器起振;二是对振荡器的频率进行微调。单片机在工作时,由部振荡器产生或由外直接输入的送至部控制逻辑单元的时钟信号的周期称为时钟周期。其大小是时钟信号频率的倒数,常用fosc表示。时钟频率为12MHz,即fosc=12MHz,则时钟周期为1/12us。2.4报警电路
17、的设计我们知道,声音的频谱围约在几十到几千赫兹,若能利用程序来控制单片机某个口线的“高”电平或低电平,则在该口线上就能产生一定频率的巨型波,接上喇叭就能发出一定频率的声音,若再利用延时程序控制“高”“低”电平的持续时间,就能改变输出频率,从而改变音调,使喇叭发出不同的声音。报警电路用于报警,当遇到报警信号时,发出警报。抢答开始、抢答时间到时、选手正常抢答、选手非法抢答、答题时间到时都会发出警报。由于缺少蜂鸣器的驱动器,发生器不响,所以,用绿灯替换用来发出报警音。选手在设定的时间抢答时,实现优先判断、编号锁存、编号显示、扬声器提示。当一轮抢答之后,定时器停止、禁止二次抢答、定时器显示剩余时间。如
18、果再次抢答必须由主持人再次按下“停止”和“开始”状态开关。2.5显示电路的设计显示功能与硬件的关系极大,显示电路有两种选择,液晶屏显示和传统数码管显示。液晶屏具有轻薄、无辐射危险、可视面积大、分辨率高和抗干扰能力强的特点,但是由于显示信息少、编程工作量大和成本偏高。而数码管具有低耗能、低损耗、低压、寿命长和精确度高、操作简单的优点。显示模块主要是显示抢答的时间,组别等。经过考虑有以下两种显示方案。方案一:使用液晶屏显示时间。液晶显示屏(LCD)具有轻薄短小、低耗电量、无辐射危险,平面直角显示以与影像稳定不闪烁等优势,可视面积大,画面效果好,分辨率高,抗干扰能力强的特点。但由于只需要显示时间和转
19、向、相数这样的数字,信息量比较少,且由于液晶是以点阵的模式显示各种符号,需要利用控制芯片创建字符库,编程工作量大,控制器的资源占用较多,其成本也偏高。在使用时,不能有静电干扰,否则易烧坏液晶显示芯片,不易维护。方案二:在使用传统的数码管显示。数码管具有:低能耗、低损耗、低压、寿命长、耐老化、防晒、防潮、防火、防高(低)温,对外界环境要求低,易于维护,同时其精度高,称量快,精确可靠,操作简单。数码显示是采用BCD编码显示数字,程序编译容易,资源占用较少。根据以上的论述,我选择采用方案二。2.6键盘电路的设计键盘是单片机不可缺少的输入设备,是实现人机对话的纽带。键盘按结构形式可以分为非编码键盘和编
20、码键盘,前者用软件方法产生键码,而后者则用硬件方法来产生键码。在单片机中使用的都是非编码键盘,因为非编码键盘结构简单,成本低廉,非编码键盘的类型很多,常用的有独立式键盘,行列式键盘等。方案一:独立式键盘键盘接口中使用多少根I/O线,键盘中就有几个按键,如果键盘接口使用了8根I/O口线,该键盘就有8个按键,这种类型的键盘,其按键比较少,且键盘中各按键的工作互不干扰。因此可以根据实际需要对键盘中的按键灵活的编码。最简单的编码方式就是根据I/O输入口所直接反映的相应按键,按下的状态进行编码,称按键直接状态码,对于这样编码的独立式键盘,CPU可以通过直接读取I/O口的状态来获取按键的直接状态编码值,根
21、据这个值直接进行按键识别,这样形式的键盘结构简单,按键识别容易。独立式键盘的缺点是需要占用比较多的I/O口线,当单片机应用系统键盘中需要的按键比较少或I/O口线比较富余时,可以采用这样类型的键盘。方案二:行列式键盘行列式键盘是用N条I/O线作为行线,M条I/O线作为列线组成的键盘,在行线和列线的每个交叉点上。这种形式的键盘结构,能够有效的提高单片机系统中I/O的利用率,CPU对键盘的扫描可以采用取程序控制的随机方式,即只有在CPU空闲是时才去扫描键盘,响应操作人员的键盘输入,即利用单片机部定时器每隔一定时间对键盘扫描一次,这样控制方式,不管键盘上有无键闭合,CPU总是定时的关心键盘状态。在大多
22、数情况下,CPU对键盘可能进行空扫描。为了提高CPU的效率而又能与时响应键盘输入,可以采用中断方式,既CPU平时不必扫描键盘,只要当键盘上有键盘闭合时就产生中断请求,向CPU申请中断后,立即对键盘上有键盘进性扫描,识别闭合键,并做相应。行列式键盘硬件电路比独立式键盘电路复杂,而且程序设计繁琐,但它节省端口,适合于多按键电路。通过以上分析我采用方案一因为我们所需要的按键比较适用此设计电路。 3硬件电路设计本设计分为硬件设计和软件设计,这两者相互结合,不可分离。随着集成电路技术的飞速发展,各种功能很强的芯片不断出现,使硬件电路的集成度越来越高,硬件设计的工作量在整个项目中的所占的比重逐渐下降。为使
23、硬件电路设计尽可能合理,应注意以下几方面:(1) 尽可能采用功能强的芯片,以简化电路,功能强的芯片可以代替若干普通芯片,随着生产工艺的提高,新型芯片的的价格不断下降,并不一定比若干普通芯片价格的总和高。(2) 留有设计余地。在设计硬件电路时,要考虑到将来修改扩展的方便。因为很少有一锤定音的电路设计,如果现在不留余地,将来可能要为一点小小的修改或扩展而被迫进行全面返工。(3) 程序空间,选用片程序空间足够大的单片机,本设计采用AT89C51单片机。3.1硬件电路的概述本抢答器使用的元器件包括:AT89C51芯片、七段码 7SEG-MPX4-CC 显示器、LED数码管的译码。其中单片机AT89C5
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 抢答 设计 毕业论文
限制150内