ImageVerifierCode 换一换
格式:DOCX , 页数:31 ,大小:315.15KB ,
资源ID:6861847      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6861847.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于51单片机的四路抢答器设计.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于51单片机的四路抢答器设计.docx

1、基于51单片机的四路抢答器设计山东农业大学 毕 业 论 文基于51单片机的四路抢答器设计院 部:机械与电子工程学院 专业班级:10级自动化1班 届 次:14届 学生姓名: 吴新春学 号:20101209 指导教师:刘平 二一四年五月二十七日Abstract ContentsAbstract Introduction 1 System overview 1.1 The analysis of responderneeds 1.2 Responderwork process 2 MCU features 2.1 STC89C51 2.1.1 Special function register 2.

2、2 The internal structure of STC89c51 3 The design of circuit system 3.1 Thecircuit system 3.2 The design of minimumsystem 3.2.1 The design of power supply 3.2.2 The design of clockcircuit 3.2.3 The design of reset circuit 3.3 The design of display circuit 3.3.1 Digital tubeprofile 3.3.2 The introduc

3、tion of CD4511 3.4 The design of key circuit 3.5 The design of buzzer 3.6 Components and weldingdebugging 4 The design of software 4.1 Delay subroutine 4.2 Display program 4.3 The countdownandkeyboard scanningsubroutine 4.4 Main programand analysis 5 Conclusions References Acknowledgement Appendix 1

4、 Appendix 2 基于51单片机的四路抢答器设计作者:吴新春,指导教师:刘平(山东农业大学 讲师)【摘要】本文设计以STC89C51单片机为核心的四路抢答器。采用了数字显示器直接显示,自动锁存显示结果,并自动复位的设计思想,它能根据不同的抢答输入信号,经过单片机的控制处理产生不同的与输入信号相对应的输出信号,最后通过LED数码管显示相应的路数,分辨出是哪组优先按下的按键,它充分利用了单片机系统的优点,具有结构简单、功能强大、可靠性好、实用性强的特点。本设计是以四路抢答为基本理念。考虑到需限时回答的功能,利用89C51单片机及外围接口实现的抢答系统,利用单片机的定时器/计数器定时和记数的原

5、理,将软、硬件有机地结合起来,使得系统能够正确地进行计时,同时使数码管能够正确地显示时间。同时系统能够实现:在抢答中,只有开始后抢答才有效;满时后系统等待主控强制复位;按键锁定等功能。关键词 :51单片机 四路抢答器 数码管 最小系统The design of Quad Responder based on 51 microcomputer Author: Wu Xinchun, Supervisor: LiuPing( Shandong Agricultural University Lecturer )Abstract This paper design the STC89C51 micr

6、ocontroller as the core of the four road responder. Adopting digital display directly display, automatic latch display results, and the idea of the design of the automatic reset which can according to different vies to answer first the input signal, through MCU control processing in different ways w

7、ith the input signals corresponding to the output signal, finally, LED digital tube display the corresponding, distinguish is which group first press the button, it makes full use of the advantages of the MCU system whih is simple in structure, the characteristics of powerful function, good reliabil

8、ity and strong practicability.This design is based on four road vies to answer first the basic concepts. Considering the function need time to answer, the use of 89C51 MCU and peripheral interface implementation of vies to answer first system, the MCUs timer/counter timing and the number of principl

9、e, software and hardware organically, enables the system to accurately time, at the same time make digital tube can correctly display the time. At the same time, system can realize: in vies to answer first, only after the start of vies to answer first effectively; After full waiting for forced reset

10、 control system; Key lock, and other functions.Key words: 51 single chip microcomputer; four-way buzzer; digital tube minimum system 引言随着科学技术的飞速发展和生活内容的丰富,各种各样的竞赛越来越多,其中抢答器有着无可替代的作用。目前很多抢答器采用小规模数字集成电路设计,使用起来不够理想。因此设计一种更便于使用的抢答器是非常必要的。随着科技的进步单片机已进入各个领域,以其功耗小、智能化而著称,所以利用单片机来设计抢答器,便可以解决上述问题。针对以上情况,本文设计

11、出以STC89C51单片机为核心的四路抢答器。我们采用了数码管显示,自动锁存显示结果,并自动复位的设计思想,它能根据不同的抢答输入信号,经过单片机的控制处理并产生不同的与输入信号相对应的输出信号,最后通过LED数码管显示相应的路数,可分辨出优先按下的按键,它充分利用了单片机系统的优点,具有结构简单、功能强大、可靠性好、实用性强的特点。考虑到需设定限时回答的功能,利用89C51单片机及外围接口实现的抢答系统,利用单片机的定时器/计数器定时和记数的原理,将软、硬件有机地结合起来,使得系统能够正确地进行计时,同时使数码管能够正确地显示时间。用开关做键盘输出。同时系统能够实现:主控操作优先;在抢答中,

12、只有开始后抢答才有效,如果在开始抢答前抢答为无效;满时后系统等待主控强制复位;按键锁定,在有效状态下,按键无效非法。1系统概述1.1抢答器需求分析(1) 在抢答中,只有开始后抢答才有效,如果在开始抢答前抢答为无效。(2) 抢答限定时间20秒和回答问题的时间60秒。(3) 可以显示是哪位选手有效抢答和无效抢答,正确按键后显示按键者号码并锁存直到主持人允许答题。(4) 抢答时间和回答问题时间倒记时显示,时间完后等待主持人按键复位。(5) 按键锁定,在有效状态下,按键无效非法。1.2 抢答器工作过程主持人按“抢答开始”键,立刻进入抢答倒计时(预设20s抢答时间),如有选手抢答,显示其号数并等待主持人

13、允许答题,允许答题(主持人按键)进入答题倒计时(预设60秒答题时间)。不进行抢答查询,所以只有第一个按抢答的选手有效。 如倒计时期间,主持人想停止倒计时可以随时按“停止”按键,系统会自动进入准备状态,等待主持人按“抢答开始”进入下次抢答计时。如果主持人未按“答开始”,而有人按了抢答按键,犯规抢答,LED上不显示任何结果,直到按下“止”键为止。系统方框图如图1-1所示。 图1-1系统方框图2 单片机功能简介MCS-51 单片机是美国INTE 公司于1980 年推出的产品,典型产品有 80 31(内部没有程序存储器,实际使用方面已经被市场淘汰)、8051(芯片采用HMOS,功耗是630mW,是89

14、C51 的5 倍,实际使用方面已经被市场淘汰)和8751 等通用产品,一直到现在, MCS-5 1 内核系列兼容的单片机仍是应用的主流产品(比如目前流行的89S51、已经停产的89C51 等),各高校及专业学校的培训教材仍与MCS-51 单片机作为代表进行理论基础学习。有些文献甚至也将8051 泛指MCS-51 系列单片机,8051 是早期的最典型的代表作,由于MCS-51 单片机影响极深远,许多公司都推出了兼容系列单片机,就是说MCS-51 内核实际上已经成为一个8 位单片机的标准。其他的公司的51 单片机产品都是和MCS-51 内核兼容的产品而以。同样的一段程序,在各个单片机厂家的硬件上运

15、行的结果都是一样的,如ATMEL 的89C51(已经停产)、89S51, PHILIPS(菲利浦),和WINBOND(华邦)等,我们常说的已经停产的89C51 指的是ATMEL公司的 AT 89C51 单片机,同时是在原基础上增强了许多特性,如时钟,更优秀的是由Flash(程序存储器的内容至少可以改写 1000 次)存储器取带了原来的 ROM(一次性写入),AT89C51 的性能相对于8051 已经算是非常优越的了。不过在市场化方面,89C51 受到了PIC 单片机阵营的挑战,89C51 最致命的缺陷在于不支持ISP(在线更新程序)功能,必须加上ISP 功能等新功能才能更好延续MCS-51 的

16、传奇。89S51就是在这样的背景下取代89C51 的,现在,89S51 目前已经成为了实际应用市场上新的宠儿,作为市场占有率第一的Atmel 目前公司已经停产AT89C51,将用AT89S51 代替。89S51 在工艺上进行了改进,89S51 采用 0.35 新工艺,成本降低,而且将功能提升,增加了竞争力。89SXX 可以像下兼容89CXX 等51 系列芯片。市场上见到的89C51 实际都是Atmel 前期生产的巨量库存而以。如果市场需要,Atmel当然也可以再恢复生产AT89C51。 AT89S51/LS51单片机是低功耗的、具有4KB在线课编程Flash存储器的单片机。它与通用80C51系

17、列单片机的指令系统和引脚兼容。片内的Flash可允许在线重新编程,也可使用非易失性存储器编程。他将通用CPU和在线可编程Flash集成在一个芯片上,形成了功能强大、使用灵活和具有较高性能性价比的微控制器。2.1 STC89C51的功能 2.1.1 STC89C51特殊功能寄存器表2-1 STC89C51特殊功能寄存器符号地址注释*ACC*B*PSWSPDPLDPH*IE*IP*P0*P1*P2*P3PCON*SCON*TCONTMODTL0TL1TH0TH1 E0HF0HD0H81H82H83HA8HD8H80H90HA0HB0H87H98H88H89H8AH8BH8CH8DH累加器乘法寄存器

18、程序状态字堆栈指针数据寄存 器指针低8位 数据寄存 器指针高8位中断允许控制器 中断优先控制器端口0端口1端口2 端口3电源控制及波率选择串行口控制器定时器控制定时器方式选择定时器0低8位定时器1低8位定时器0高8位定时器1高8位注:带*号的特殊功能寄存器都是可以位寻址的寄存器特殊功能寄存器是80C51单片机中各功能部件对应的寄存器,用于存放相应功能部件的控制命令,状态或数据。它是80C51单片机中最具有特色的部分,现在几乎所有80C51系列功能的增加和扩展都是通过增加特殊功能寄存器来达到目的的。利用它可以访问51单片机内部的所有特殊功能寄存器。如用sfr P1 = 0x90这一句定义P1为P

19、1端口在片内的寄存器,在后面的语句中我们可以用P1 = 255(对P1端口的所有引脚置高电平)之类的语句来操作特殊功能寄存器。特殊功能寄存器也称专用寄存器,共含有22个不同寄存器。它们的地址分配在80HFFH中,即在RAM地址中。这些寄存器的名称和地址见表2-1。虽然特殊功能寄存器地址在80HFFH之中,但在80HFFH的地址单元中,不是所有的单元都被特殊功能寄存器占用,未被占用的单元,其内容是不确定的,如果对这些单元进行操作,得到的是一些随机数,而写入则无效。所以,用户编程时不应该将数据写入这些未确定的地址单元,它们是公司留待将来开发新产品时使用的。2.2 STC89c51单片机的内部结构S

20、TC89c51内部由一个8位的微处理器CPU、片内程序存储器Flash ROM 、8位并行I/O(输入/输出)接口 P0P3、定时/计数器、全双工UART的串行I/O口、片内振荡器和时钟产生电路和中断源的中断控制系统组成。下面是各部分的介绍。一个8位的微处理器CPU。片内数据存储器(RAM128B/256B):用以存放可以读/写的数据,如运算的中间结果、 最终结果以及欲显示的数据等。片内4kB程序存储器Flash ROM(4KB):用以存放程序、一些原始数据和表格。四个8位并行I/O(输入/输出)接口 P0P3:每个口可以用作输入,也可以用作输出。两个(或三个)定时/计数器:每个定时/计数器都

21、可以设置成计数方式,用以对外部 事件进行计数,也可以设置成定时方式,并可以根据计数或 定时的结果 实现计算机控制。一个全双工UART的串行I/O口:可实现单片机与单片机或其它微机之间串行通信。片内振荡器和时钟产生电路:但需外接晶振和电容。五个中断源的中断控制系统。休闲方式及掉电方式。3 系统硬件电路的设计为使硬件电路设计尽可能合理,应注意以下几方面:(1) 尽可能采用功能强的芯片,以简化电路,功能强的芯片可以代替若干普通芯片,随着生产工艺的提高,新型芯片的的价格不断下降,并不一定比若干普通芯片价格的总和高。(2)留有设计余地。在设计硬件电路时,要考虑到将来修改扩展的方便。因为很少有一锤定音的电

22、路设计,如果现在不留余地,将来可能要为一点小小的修改或扩展而被迫进行全面返工。(3) 程序空间,选用片内程序空间足够大的单片机,本设计采用STC89C51单片机。(4)I/O端口:在样机研制出来后进行现场试用时,往往会发现一些被忽视的问题,而这些问题不是靠单纯的软件措施来解决的。如有些新的信号需要采集,就必须增加输入检测端;有些物理量需要控制,就必须增加输出端。如果在硬件电路设计就预留出一些I/O端口,虽然当时空着没用,那么用的时候就派上用场了。3.1 系统总电路如图图3-1 系统电路图3.2 最小系统的设计 单片机的最小系统是指单片机能正常工作所必需的基本电路,主要由单片机、复位电路、晶振电

23、路构成,如果采用的是不带内部ROM的单片机,还需要有外部ROM扩展电路。3.2.1 电源的设计常用的三端电子稳压元件有输出正点压的78xx系列和输出负电压的79xx系列。顾名思义,三端稳压元件有三个管脚:一个输入端,一个接地端和一个输出端。用78/79系列三端稳压元件来组成稳压电路所需的外围元器件很少,电路内部还有过流、过热及调整管的保护电路,使用起来方便可靠,而且价格便宜。该系列集成稳压IC型号中的78/79后面的两个数字表示输出电压的大小,如7805表示输出正5V电压,7909表示输出负9V电压。本设计采用7805三端稳压电路。在实际应用中应当在三端稳压集成电路上安装散热器,以免温度过高影

24、响稳压电路的稳压效果。当制作中需要一个能输出1.5A以上电流的稳压电源,通常采用几块三端稳压电路并联起来,使其最大输出电流为N个1.5A,但应用时需注意:并联使用的集成稳压电路应采用同一厂家、同一批号的产品,以保证参数的一致。7805电参数如图3-2。 3.2.2 时钟频率电路的设计 时钟电路是计算机的心脏,它控制着计算机的工作节奏。MCS-51单片机允许的时钟频率是因型号而异的。晶振的选择6MHz的晶振,其机器周期是2us。12MHz的晶振,其机器周期是1us, 也就是说在执行同一条指令时用6MHz的晶振所用的时间是12MHz晶振的两倍。为了提高整个系统的性能我选择了12MHz的晶振。振荡方

25、式的选择:内部振荡方式,MCS-51内部都有一个反相放大器XTAL1、XTAL2分别为反相放大器输入和输出端,外接定时反馈元件以后就组成振荡器,产生时钟送至单片机内部的各个部件。这样就构成了内部振荡方式外部振荡方式是把已有的时钟信号引入单片机内。这种方式适合用来使单片机的时钟与外部信号一致。本设计中没有也无需与外部时钟信号一致,所以我选择了内部振荡方式,由于单片机内部有一个高增益反相放大器,当外接晶振后,就构成了自激振荡器并产生振荡时钟脉冲。晶振我选择了12MHz,相对于6MHz的晶振,整个系统图3-2 三端稳压元件7805 电参数的运行速度更快了。电容器C1、C2起稳定振荡频率、快速起振的作

26、用,电容值我选择了30pF。内部振荡方式所得的时钟信号稳定性高。时钟复位电路如图3-3图3-3钟复位电路图3.2.3 复位电路的设计 复位电路的作用:在上电或复位过程中,控制CPU的复位状态:这段时间内让CPU保持复位状态,而不是一上电或刚复位完毕就工作,防止CPU发出错误的指令、执行错误操作,也可以提高电磁兼容性能。无论用户使用哪种类型的单片机,总要涉及到单片机复位电路的设计。而单片机复位电路设计的好坏,直接影响到整个系统工作的可靠性。许多用户在设计完单片机系统,并在实验室调试成功后,在现场却出现了“死机”、“程序走飞”等现象,这主要是单片机的复位电路设计不可靠引起的。 基本的复位方式:单片

27、机在启动时都需要复位,以使CPU及系统各部件处于确定的初始状态,并从初态开始工作。89系列单片机的复位信号是从RST引脚输入到芯片内的施密特触发器中的。当系统处于正常工作状态时,且振荡器稳定后,如果RST引脚上有一个高电平并维持2个机器周期(24个振荡周期)以上,则CPU就可以响应并将系统复位。单片机系统的复位方式有:手动按钮复位和上电复位 。 (1)手动按钮复位 手动按钮复位需要人为在复位输入端RST上加入高电平。一般采用的办法是在RST端和正电源Vcc之间接一个按钮。当人为按下按钮时,则Vcc的+5V电平就会直接加到RST端。手动按钮复位的电路如图3-4所示。由于人的动作再快也会使按钮保持

28、接通达数十毫秒,所以,完全能够满足复位的时间要求。求。 图3-4手动复位电路 图3-5上电复位电路图(2)上电复位 AT89C51的上电复位电路如图3-5示,只要在RST复位输入引脚上接一电容至Vcc端,下接一个电阻到地即可。对于CMOS型单片机,由于在RST端内部有一个下拉电阻,故可将外部电阻去掉,而将外接电容减至1F。上电复位的工作过程是在加电时,复位电路通过电容加给RST端一个短暂的高电平信号,此高电平信号随着Vcc对电容的充电过程而逐渐回落,即RST端的高电平持续时间取决于电容的充电时间。为了保证系统能够可靠地复位,RST端的高电平信号必须维持足够长的时间。上电时,Vcc的上升时间约为

29、10ms,而振荡器的起振时间取决于振荡频率,如晶振频率为10MHz,起振时间为1ms;晶振频率为1MHz,起振时间则为10ms。在图3-4的复位电路中,当Vcc掉电时,必然会使RST端电压迅速下降到0V以下,但是,由于内部电路的限制作用,这个负电压将不会对器件产生损害。另外,在复位期间,端口引脚处于随机状态,复位后,系统将端口置为全“l”态。如果系统在上电时得不到有效的复位,则程序计数器PC将得不到一个合适的初值,因此,CPU可能会从一个未被定义的位置开始执行程序。 当时钟频率选用6 MHz时,C取22uF,Rs取200欧,Rk取1千欧。在实际的应用系统设计中,若有外部扩展的I/O接口电路也需

30、初始复位,如果它们的复位端和MCS-51的复位端相连,复位电路中的R、C参数要受到影响,这时复位电路中的R、C参数要统一考虑,以保证可靠的复位。如果单片机MCS-51与外围I/O接口电路的复位电路和复位时间不完全一致,使单片机初始化程序不能正常进行,外围I/O接口电路的复位也可以不和MCS-51复位端相连,仅采用独立的上电复位电路。若RC上电复位电路接施密特电路输入端,施密特电路输出接MCS-51和外围电路复位端,则能使系统可靠地同步复位,一般来说,单片机的复位速度比外围I/O接口电路快一点,为保证系统可靠复位在初始化程序中应该安排一定的复位延迟时间。本设计采用上电复位电路。 (3)看门狗型复

31、位电路 看门狗型复位电路主要利用CPU正常工作时,定时复位计数器,使得计数器的值不超过某一值;当CPU不能正常工作时,由于计数器不能被复位,因此其计数会超过某一值,从而产生复位脉冲,使得CPU恢复正常工作状态。此复位电路的可靠性主要取决于软件设计,即将定时向复位电路发出脉冲的程序放在何处。一般设计,将此段程序放在定时器中断服务子程序中。然而,有时这种设计仍然会引起程序走飞或工作不正常。原因主要是:当程序“走飞”发生时定时器初始化以及开中断之后的话,这种“走飞”情况就有可能不能由Watchdog复位电路校正回来。因为定时器中断一真在产生,即使程序不正常,Watchdog也能被正常复位。为此提出定时器加预设的设计方法。即在初始化时压入堆栈一个地址,在此地址内执行的是一条关中断和一条死循环语句。在所有不被程序代码占用的地址尽可能地用子程序返回指令RET代替。这样,当程序走飞后,其进入陷阱的可能性将大大增加。而一旦进入陷阱,定时器停止工作并且关闭中断,从而使Watchdog复位电路会产生一个复位脉冲将CPU复位。当然这种技术用于实时性较强的控制或处理软件中有一定的困难。3.3 显示电路的设计显示电路原理图如图3-6示。图3-6示电路原理图3.3.1 数码管简介数码管按段数分为七段数

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1