基于单片机的抢答器的设计.doc_第1页
基于单片机的抢答器的设计.doc_第2页
基于单片机的抢答器的设计.doc_第3页
基于单片机的抢答器的设计.doc_第4页
基于单片机的抢答器的设计.doc_第5页
已阅读5页,还剩56页未读, 继续免费阅读

下载本文档

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

文档简介

基于单片机的抢答器的设计目 录引 言1第1章 绪论21.1 课题研究的相关背景21.2 选题的目的和意义21.3 课题研究内容21.4 国内外研究现状31.5 抢答器目前存在的问题3第2章 抢答器的系统概述42.1 系统的主要功能42.2 系统需求分析52.3 抢答器的工作流程52.4 抢答器的工作过程62.5 单片机相关知识介绍72.5.1 80C51特殊功能寄存器72.5.2 80C51的定时器/计数器82.5.3 80C51的中断系统92.5.4 80C51的指令周期112.5.5 80C51引脚简介142.6 抢答器的优点及组成162.7 本章小结16第3章 抢答器的硬件设计173.1 硬件电路设计173.2 总体硬件原理图173.3 时钟频率电路设计193.4 复位电路的设计193.5 显示电路的设计203.5.1 显示电路概述203.5.2 七段LED数码管的原理203.5.3 74LS164芯片介绍223.5.4 显示电路整体设计233.6 开关键盘设计243.6.1 指拨开关253.6.2 按键开关253.7 发声电路263.8 选手灯电路273.9 系统复位273.10 本章小结28第4章 软件设计294.1 主程序结构图294.2 软件任务分析294.3 程序流程图304.4 主要程序分析314.5 本章小结36结论与展望37致 谢38参考文献39附录A 硬件电路图40附录B 一篇引用的外文文献及其译文41附录C 主要参考文献题录及摘要48附录D 主要源程序49插图清单图2-1 主要功能模块4图2-2 抢答器工作流程6图2-3 80C51引脚图15图3-1 总体原理图18图3-2 外部振荡电路19图3-3 硬件复位电路20图3-4 一位共阴极数码管引脚图21图3-5 74LS164 引脚图22图3-6 显示电路24图3-7 开关电路25图3-8按键抖动电压波形25图3-9 发声电路26图3-10 选手灯电路27图4-1 软件系统结构图29图4-2 程序设计流程图30表格清单表2-1 80C51特殊功能及存器列表8表2-2 80C51中断优先级与中断入口地址10表2-3 数据传送指令12表2-4 算术运算类指令13表2-5 逻辑运算类指令13表2-6 程序转移类指令14表2-7 布尔指令集14表3-1 数码管显示码22表3-2 74LS164真值表2356引 言第1章 绪论1.1 课题研究的相关背景 抢答器是一种应用非常广泛的的设备,在各种竞赛、抢答场合中,它能迅速、客观地分辨出最先获得发言权的选手。早期的抢答器只由几个三极管、可控硅、发光管等组成,能通过发光管的指示辨认出选手的编号,现在大多数抢答器均使用单片机(如MCS-51型)和数字电路,并增加了许多新功能,如选手号码显示、抢按前或抢按后的计时、选手得分显示等功能。本课题利用80C51单片机及外围接口实现的抢答系统,利用单片机的定时器/计数器定时和计数的原理,将软件、硬件有机的结合起来,使得系统能够正确地进行计时,同时使数码管能够正确地显示时间和选手号码。用开关做键盘输出,扬声器发声提示。系统达到要求:在抢答中,只有开始抢答才有效,如果在开始抢答前抢答则无效;回答问题时间可在0-99s可调;可以显示是哪位选手有效抢答,正确抢答后有声音提示;回答问题时间倒计时显示,时间完后系统自动复位。1.2 选题的目的和意义通过这次设计,掌握8051单片的原理,了解简单多功能抢答器组成原理,初步掌握多功能抢答器的调试及测试方法,提高动手能力和排除故障的能力。同时通过本课题实际与调试,巩固已学的理论知识,建立单片机理论和实践结合,了解多功能抢答器个单元电路之间的关系及相互影响,从而能正确设计、计算定时计数的各个单元电路。1.3 课题研究内容本系统采用模块化设计智能抢答器,在抢答比赛中广泛应用,各组分别有一个按钮。主持人有开始和返回、复位键。在后台主持人可以修改选手回答问题的时间,系统默认的答题时间为10s。通过加键和减键修改上述时间。主持人按键开始后,选手开始抢答位有效,数码显示屏显示回答时间倒计时和选手编号,答题时间结束时扬声器发声提示。通过研究并在设计验证后发现,采用单片机技术设计的抢答器与目前常用的抢答器相比,首先,电路连接简单,因为大多数功能单元都通过程序设计在单片机内部,第二,工作性能可靠,抗干扰能力由于目前抢答器。所以本研究是一个实用的工程设计,具有创新性。本论文章节的结构和内容如下:第1章 :绪论。简要介绍了抢答器的发展现状,说明了课题研究的内容。第2章 :抢答器的系统。说明了抢答器的工作过程和主要功能,和设计中需要用的单片机的基础知识,并定下了本课题要达到的设计目标。第3章 :抢答器的硬件电路设计。详细描述了本课题各个组成电路单元的设计。第4章 :抢答器的软件设计,并编程序。第5章 :Proteus仿真,仿真出结果。第6章 :总结。总结本次设计,指出设计中的一些问题,提出改善意见,并展望未来的设计。1.4 国内外研究现状随着我国经济和文化事业的发展,在很多公开竞争场合要求有公正的竞争裁决,诸如证券、股票交易及各种智力竞赛等,因此出现了抢答器。但目前的所使用的抢答器有的电路复杂不便于制作,可靠性低,实现起来很困难;有的则用一些专用的集成块,而专用集成块的购买又很困难。为适应高校等多代表团队单位的活动需要而设计一个多功能抢答器,这种抢答器具有电路简单,元件普通,易于购买等优点,很好地解决了制作者制作困难和难于购买的问题。在国内外已经开始普遍的应用。1.5 抢答器目前存在的问题随着改革开放事业的不断深入,促使人们学科学、学技术的手段多种多样,抢答器作为一种工具,已广泛应用于各种智力和知识竞赛场合。但抢答器的使用频率较低,且要么制作复杂,要么可靠性低,减少兴致。作为一个单位若专购一台抢答器虽然在经济上可以承受,但每年使用次数极少,往往因长期存放使抢答器损坏,再购置的麻烦和及时性就会影响活动的开展。而且目前多数抢答器存在三个不足之处:第一,现场线路连接复杂。因为每个选手位于抢答现场的不同位置,每个选手与控制台之间要有长长的连线。选手越多,连线就越多越乱,这些连线不仅影响了现场的美观,而且降低了抢答器的可靠性,增加了安装的难度,甚至影响了现场人员的走动。第二,电路复杂。因为单片机只完成号码处理、计时、数据运算等功能,其他功能如选手号码的识别、译码、计分显示等仍只能通过数字集成电路完成。采用单片机扫描技术识别选手抢按号码时,电路延时时间较大。第三,选手抢答成功,但没有抢答被记录的问题。 第2章 抢答器的系统概述2.1 系统的主要功能本系统是借用单片机采用模块化设计的八路抢答器,包括八路抢答按钮、计时显示、提示功能、开始与返回控制按钮、时限设定、各种相关显示控制功能等(根据需要也可另设或多设相关功能)。参赛者系统,除享有抢答按钮的权利功能外,还有人性化的提示功能和时间提示功能。系统的主要功能模块方框图如图2-1所示。时钟 确认、加一、减一按键输入发声电路4位七段数码管显示8路抢答按键输入开始、返回按键输入复位电路80C51单片机图2-1 主要功能模块本系统采用模块化设计的八路抢答器,在抢答比赛中广泛应用,各组分别有一个抢答按钮,一共有8个按键输入,分别对应8路选手的抢答按键。主持人有开始和返回键。在后台主持人可以修改选手答题时间,系统默认为10s。通过加键和减键修改上述时间。主持人按键开始后,选手开始抢答位有效,数码显示屏显示回答时间倒计时和选手编号,答题时间结束时扬声器发声提示。单片机是整个抢答器的核心,内部电路设计用汇编语言编写。它完成了时间参数的设定,抢答选手号码的译码、保存、显示、输出及答题倒计时功能等。本设计中,有一个共阴的数码管组,四个数码管,其中两个显示时间,一个空位不显示,一个显示抢答选手编号。主持人按下开始键后开始抢答。若有选手抢答成功,则可以答题。数码管显示答题的倒计时,同时也显示抢答成功选手的编号。若在按开始键前抢答则无效。2.2 系统需求分析1. 在抢答中,只有开始后抢答才有效,如果开始抢答前抢答则为无效。2. 回答问题时间可以在0-99s可调。3. 可以显示是哪位选手抢答成功,并有声音提示。4. 回答问题时间倒计时显示,时间完后系统自动复位。5. 按键锁定,在有效状态下,按键无效。2.3 抢答器的工作流程抢答器的基本工作原理:在抢答竞赛时,有多个信号同时或不同时送入主电路中,抢答器内部的寄存器工作,并识别、记录第一个号码,同时内部定时器开始工作,记录有关时间并产生超时信号。在整个抢答器工作过程中,显示电路、声音电路等还要根据现场的实际情况向外电路输出相应信号。抢答器工作流程如图2-2所示。主持人复位开始前有选手抢答抢答无效开始加载程序运行数码管显示FFF抢答开始无抢答有选手抢答显示选手号码,倒计时时间,声音提示,答题,答题时间倒计时计时完成 图2-2 抢答器工作流程2.4 抢答器的工作过程 1.如果想调节答题时间,闭合“时间调节”开关进入调节状态,此时会显示在设定的答题时间值,如果想加一秒按一下“加1s”键,如果想减一秒按一下“减1s”键,时间LED上会显示改变后的时间,调整范围为0-99s,0s时再减1s会跳到99s,99s时再加1s会变到0s。要退出时间调节状态断开“时间调节”开关即可。2.主持人按“抢答开始”键,会有提示音,并立刻进入抢答状态,如果有选手抢答成功,会有提示音,并会显示其编号并立刻进入回答倒计时(预设为10s),不在进行抢答查询,所以只有第一个抢答的选手有效。倒计时到0s时会有提示音。3.在倒计时完成前或倒计时完成后,如果主持人按下“返回”键系统可以进入下次抢答准备,但此时须等待主持按下“抢答开始”键才可有效抢答。4.如果主持人未按“抢答开始”键,此时抢答是无效的,不会有任何反应。总而言之,本课题利用80C51单片机及外围接口实现的抢答系统设计了抢答器,该抢答器增加了新功能、提高了系统的可靠性、简化了电路结构、节约了成本,是一个实用的工程设计。2.5 单片机相关知识介绍2.5.1 80C51特殊功能寄存器特殊功能寄存器也称专用寄存器,是具有特殊功能的所有寄存器的集合,简称SFR(Special Function Register)。特殊功能寄存器共含有22个不同的寄存器。它们的地址分配在80HFFH中,即在RAM地址中。这些寄存器的名称和地址见表2-1。注:带*号的特殊功能寄存器都是可位寻址的寄存器 符 号地 址注 释*ACC*B*PSWSPDPLDPH*IE*IP*P0*P1*P2*P3PCON*SCONSBUF*TCONTMODTL0TL1TH0TH1E0HF0HD0H81H82H83HA8HB8H80H90HA0HB0H87H98H99H88H89H8AH8BH8CH8DH累加器乘法寄存器程序状态字堆栈指针数据存储器指针低8位数据存储器指针高8位中断允许控制器中断优先控制器端口0端口1端口2端口3电源控制及波特率选择串行口控制器串行数据缓冲器定时器控制定时器方式选择定时器0低8位定时器0高8位定时器1低8位定时器1高8位表2-1 80C51特殊功能及存器列表虽然特殊功能寄存器地址在80HFFH之中,但在80HFFH的地址单元中不是所有的单元都被特殊功能寄存器所占用,未被占用的单元其内容是不确定的,如果对这些单元进行操作,得到的是一些随即数,而写入则无效。所以,用户编程时不应该将该数据写入这些未确定的地址单元,他们是生产者留待将来开发新产品时使用的。2.5.2 80C51的定时器/计数器80C51中有两个16位加计数的定时器/计数器T0、T1,他们由计数器、计数输入、控制逻辑及技术溢出管理组成。1) 计数器。由两个8位加计数器TLi、THi组成,在不同的工作方式下,其组成结构不同。 2) 计数输入。计数器可以选择两种计数输入,由C/T管理。C/T=0时,对振荡频率fosc的12分频脉冲计数,实现定时器功能;C/T=1时,对外部引脚Ti的时间脉冲进行计数,实现计数功能。3) 控制逻辑。控制计数器的计数启动或停止。4) 计数益处管理。计数器计数溢出时,溢出中断请求标志位TFi置位,并请求中断,中断响应后TFi自动清零。 用于定时器/计数器管理的SFR有方式寄存器TMOD和控制寄存器TCON。 1.方式寄存器TMODTMOD用来设置定时器/计数器工作方式及控制模式。TMOD的SFR地址为89H,不可位寻址。其格式如下:GATEC/TM1M0GATEC/TM1M0高低4位相同,分别用于T1和T0。每一位的功能如下所述。M1、M0:方式位,设定定时器的4种工作方式。C/T :计数、定时方式选择位,C/T=1时,计数器对外部脉冲计数;C/T=0时, 对振荡时钟12分频脉冲计数。GATE :控制方式选择位,GATE=0时,计数器由内部TRi位控制启、停;GATE=1时,计数器由TRi和外部引脚INTi控制启、停。2. 控制寄存器TCON TCON只占用SFR 88H中的高4位,用于控制计数器的启、停和计数溢出的标志设置,可位寻址。其格式如下:TF1TR1TF0TR0TRi :计数器内部计数启、停控制位。TFi :计数器溢出标志,表示计数溢出并请求中断。中断响应后自动清0。3.定时器/计数器的操作定时器/计数器的方式设定、启停控制等,都通过对特殊功能寄存器TMOD和TCON的操作来完成。由于TMOD为不可位寻址,故对TMOD进行直接寻址的字节操作来设定。例如,设定T0为方式1的计数方式,并由内部TR0控制启停其控制字为0101B,设定T1为复位状态,故设定控制字为00000101B=05H。使用一下指令完成方式设定。MOV 89,#05H 或 MOV TMOD,#05HTCON可位寻址操作。对T0的启、停控制通过以下位操作指令完成。SETB TR0 或 SETB 8CH ;启动T0计数CLR TR0 或 CLR 8CH ;停止T0计数定时器/计数器按计数器的组成不同,可分为4种工作方式,其功能如下所述。方式0:13位计数方式。相当于有5位预分频的8位计数方式。方式1:16位计数方式。方式2:计数常数可自动重装的8位计数方式。方式3:2个8位计数器与波特率发生器的工作方式。1) 方式0的工作状态 方式0工作状态的计数器机构保留了80C51前身MCS-48单片机32分频8位计数方式,由TLi的低5位和THi的8位组成13位计数器。计数初值设置不直观。2) 方式1的工作状态 方式1位16位计数方式。与方式0的区别在于方式1为16位计数,并且是置位方式,而方式0为复位方式(即单片机复位后为方式0状态)。3) 方式2的工作状态 方式2为可自动重装计数初值的8位计数方式。TLi为8位计数器,THi为8位计数初值寄存器。当8位计数器TLi计数溢出后,会自动启动THi重新向TLi装入计数初值4) 方式3的工作状态方式3是一个较为特殊的工作方式。在方式3下,T1只作波特率发生器。在这样的情况下,T1将TF1、TR1资源出借给T0使用。因此,在方式3下,T0可以构成两个独立的计数器机构。TL0构成一个完整的8位定时器/计数器,而TH0则是一个仅能对fosc/12脉冲计数的8位定时器。T1作波特率发生器时,可以设置成方式0方式2,用在任何不需要中断控制的场合;作波特率发生器时,常设置成方式2的自动重装状态。2.5.3 80C51的中断系统 80C51的中断系统由中断源、中断控制、中断允许及中断优先管理等几个部分组成。1) 中断源。5个中断源,其中INT0、INT1为外部中断源,可选择低电平有效或下降沿有效;内部中断源为T0、T1溢出中断;串行口发送/接收共用一个中断源。2) 中断请求标志。5个中断请求的标志位相应位IE0、IE1、TF0、TF1、TI/TRI。3) 中断允许。两级串联式中断允许,开CPU中断,EA=1;开中断源中断,置每个中断源的中断允许位EX0、ET0、EX1、ET1、ES。4) 中断优先级管理。有两组优先级,即高优先级组和低优先级组。每组中还规定有优先顺序。80C51的两组优先级中,5个中断源相互的优先级关系及相应的入口地址如表2-2所示。中断源优先级中断地址入口INT0中断T0溢出中断INT1中断T1溢出中断串行口发送/接收中断最高最低0003H000BH0013H001BH0023H表2-2 80C51中断优先级与中断入口地址当低优先级组中任何一个中断源被设定为高优先级时,其优先级将比低优先级组中任何一个中断源的优先级高。1. 串行口控制寄存器SCON串行口控制寄存器用于串行口的操作管理,其中最低两位为串行口中断标志RI/TI。SCON为可位寻址SFR,直接地址为98H,与中断系统有关标志如下: D7 D0TIRI TI、RI : 串行口中断源位置标志。串行发送/接收完一帧后自动置位,请求中断。需要再次发送/接收时,应通过指令清0。2. 定时器控制寄存器TCONTCON为可位寻址SFR,直接地址为88H。其中与中断系统有关的功能位标识如下: D7 D0TF1TF0IE1IT1IE0IT0IT0、IT1: 外部中断INT0、INT1引脚电平触发方式选择位。“0”低电平有效,“1”下降沿有效。IE0、IE1: 外部中断INT0、INT1中断请求标志位。置位时,表示有中断请求,中断响应后自动清0。TF0、TF1: 定时器/计数器计数溢出中断请求标志。置位时有中断请求,中断响应后自动清0。3. 中断允许寄存器IEIE为可位寻址SFR,直接地址为A8H,用于中断的开放与禁止。其功能位标识如下: D7 D0EAESET1EX1ET0EX0EA : CPU中断允许控制。EA=1时,开CPU中断。EX0、EX1:EX0、EX1=1时,开放外部INT0、INT1中断。ET0、ET1: ET0、ET1=1时,允许T0、T1计数溢出中断。ES : ES=1时,允许串行口发送/接收中断。4. 中断优先级管理寄存器IPIP为可位寻址SFR,直接地址为B8H,用来设定优先组级别,置位时为高优先级组,清0时为低优先组。其功能位标识标识如下: D7 D0PSPT1PX1PT0PX0PX0、PX1: 外部中断源INT0、INT1优先级组选择位。PT0、PT1: 定时器/计数器计数溢出中断优先级组选择位。PS : 串行口发送/接收中断优先级组选择位。中断响应的自主操作过程中断响应的自主操作是指中断响应过程中,单片机中CPU不依赖指令控制的内部操作行为。了解这些内容有助于中断应用的程序设计。1. CPU的中断查询计算机中断运行是指程序运行的中断操作,而计算机内部,中断则表现为CPU的位查询操作。80C51单片机中,CPU在每个机器周期的S6状态中,查询中断源,并按优先级管理规则处理同时请求的中断源,且在下一个机器周期的S1状态中,响应最高级中断请求。但是有一下情况除外:1) CPU正在处理相同或更高优先级中断;2) 多机器周期指令中,还未执行到最后一个机器周期;3) 正在执行中断系统的SFR操作,如RETI指令及访问IE、IP等操作时要延后一条指令。2. 中断响应中的CPU的自主操作在中断响应中,CPU要完成以下自主操作过程:1) 置位相应的优先级状态触发器,以表明所响应的中断的优先级别;2) 中断源标识清0(TI、RI除外);3) 中断断点地址装入堆栈保护(不保护PSW);4) 中断入口地址装入PC,以便使程序转到中断入口地址处。3. 中断返回时CPU的自主操作CPU在执行到中断返回指令RETI时,产生以下自主操作:1) 优先级状态触发器清0;2) 断点地址送入PC,以便使程序返回到断点处。2.5.4 80C51的指令周期在本次设计中需要用到延时子程序,而延时子程序的延时正是用到了单片机的指令周期,即该执行该指令所需的时间。所以需要了解相关的指令周期。1. 数据传送指令(29条)见表2-3。汇编指令代码长度指令周期(机器周期)MOV A,Ri MOV DPTR,#data16 MOV A,Rn MOVC A,A+DPTR MOV A,direct MOVC A,A+PC MOV A,#data MOVX A,Ri MOV Ri,A MOVX A,DPTR MOV Ri,direct MOVX Ri,A MOV Ri,#data MOVX DPTR,A MOV Rn,A PUSH direct MOV Rn,direct POP direct MOV Rn,#data XCH A,Ri MOV direct,A XCH A,Rn MOV direct,Ri XCH A,direct MOV direct,Rn XCHD A,Ri MOV direct,direct MOV direct,#data SWAP A 1311212111212112222121222133112121212122212122221112121221表2-3 数据传送指令2. 算术运算类指令(24条)见表2-4。汇编指令代码长度指令周期(机器周期)ADD A,Ri ADD A,Rn ADD A,direct ADD A,#data ADDC A,Ri ADDC A,Rn ADDC A,direct ADDC A,#data SUBB A,Ri SUBB A,Rn SUBB A,direct SUBB A,#data INC A INC Ri INC Rn INC DPTR INC direct DEC A DEC Ri DEC Rn DEC direct MUL AB DIV AB DA A 112211221122111121112111111111111111111111111441表2-4 算术运算类指令3. 逻辑运算类指令(24条)见表2-5。汇编指令代码长度指令周期(机器周期)ANL A,Ri XRL A,Ri ANL A,Rn XRL A,Rn ANL A,direct XRL A,direct ANL A,#data XRL A,#data ANL direct,A XRL direct,A ANL direct,#data XRL direct,#data ORL A,Ri CLR A ORL A,Rn CPL A ORL A,direct RL A ORL A,#data RLC A ORL direct,A RR A ORL direct,#data RRC A 111122222233111121212131111111111122111111111121表2-5 逻辑运算类指令4. 程序转移类指令(17条)见表2-6。汇编指令代码长度指令周期(机器周期)NOP JZ rel RET JNZ rel RETI JC rel ACALL addr11 JNC rel AJMP addr11 JB bit,rel LCALL addr16 JNB bit,rel LJMP addr16 JBC bit,rel SJMP rel CJNE A,direct,rel JMP A+DPTR CJNE A,#data,rel DJNZ Rn,rel CJNE Ri,#data,rel DJNZ direct,rel CJNE Rn,#data,rel 12121222233333231323331222222222222222222222表2-6 程序转移类指令5. 布尔指令集(17条)见表2-7。汇编指令代码长度指令周期(机器周期)CLR C ANL C,bit SETB C ANL C,/bit CPL C ORL C,bit CLR bit ORL C,/bit SETB bit MOV C,bit CPL bit MOV bit,C 121212222222121212121112表2-7 布尔指令集2.5.5 80C51引脚简介80C51D的引脚图如图2-3所示 图2-3 80C51引脚图 1.主电源引脚(2根) VCC(Pin40):电源输入,接5V电源 GND(Pin20):接地线 2.外接晶振引脚(2根) XTAL1(Pin19):片内振荡电路的输入端 XTAL2(Pin20):片内振荡电路的输出端 3.控制引脚(4根)RST/VPP(Pin9):复位引脚,引脚上出现2个机器周期的高电平将使单片机复位。 ALE/PROG(Pin30):地址锁存允许信号 PSEN(Pin29):外部存储器读选通信号 EA/VPP(Pin31):程序存储器的内外部选通,接低电平从外部程序存储器读指令,如果接高电平则从内部程序存储器读指令。 4.可编程输入/输出引脚(32根) 80C51单片机有4组8位的可编程I/O口,分别位P0、P1、P2、P3口,每个口有8位(8根引脚),共32根。每一根引脚都可以编程。 P0口(Pin39Pin32):8位双向I/O口线,名称为P0.0P0.7 P1口(Pin1Pin8):8位准双向I/O口线,名称为P1.0P1.7 P2口(Pin21Pin28):8位准双向I/O口线,名称为P2.0P2.7 P3口(Pin10Pin17):8位准双向I/O口线,名称为P3.0P3.72.6 抢答器的优点及组成在知识比赛中,特别是做抢答题目的时候,在抢答过程中,为了知道是哪一组或哪一位选手答题,必须设计一个系统来完成这个任务。如果在抢答中考视觉是很难判断出那组先答题,利用单片机系统来设计抢答器,使以上问题得以解决,即使两组的抢答时间相差几微秒,也可分辨出哪组优先答题。本文主要介绍了单片机抢答器设计及工作原理,以及它的实际用途。本系统采用80C51单片机作为核心。控制系统的四个模块分别为:存储模块、显示模块、声音模块、抢答开关模块。该抢答器系统通过八个按键输入抢答信号;利用存储程序来完成软件设计;利用一个四位七段共阴数码管和一个74LS164芯片来完成显示功能。工作时,用按键通过开关电路输入各路的抢答信号,经单片机处理,输出控制信号,控制四位七段共阴数码管和喇叭工作。在数码管上显示哪一组先答题,从而实现整个抢答过程。2.7 本章小结本章主要讲述了抢答的工作原理和本设计系统的工作流程。在说明工作原理的过程中,突出了电路的组成单元以及这些单元如何实现抢答功能。在说明系统流程时,结合本设计的内容,指出了参数设置的方法和意义。说明了如何进行抢答控制,同时也根据本次设计的要求简单的介绍了80C51的相应功能及参数。第3章 抢答器的硬件设计3.1 硬件电路设计本设计分为硬件设计和软件设计,这两者相互结合,不可分离:从时间上看,硬件设计的绝大部分工作量是在最初阶段,到后期往往还要做一些修改。只要技术准备充分,硬件设计的大量返工时比较少的,软件设计的任务是贯彻始终的,到中后期基本上都是软件设计任务,随着集成电路计数的飞速发展,各种功能很强的芯片不断出现,使硬件电路的集成度越来越高,硬件设计的工作量在整个项目中所占的比重逐渐下降,为使硬件电路设计尽可能合理,应注意一下几个方面:1. 尽可能采用功能强的芯片,以简化电路,功能强的芯片可以代替若干个普通芯片,随着生产工艺的提高,新型芯片的价格在不断下降,并不一定比若干个普通芯片价格总和高。2. 留有设计余地。在设计硬件电路时,要考虑到将来修改扩展的方便。因为很少有一锤定音的电路设计,如果现在不留余地,将来可能要为一点小小的修改或扩展而被迫进行全面返工。3. 程序空间,选用片内程序空间足够大的单片机,本设计采用80C51单片机。4. RAM空间,80C51单片机内部RAM不多,当要增强软件数据处理功能时,往往觉得不足。如果系统配置了外部RAM,则建议多留一些空间。如果选用8155作I/O接口,就可以增强256字节RAM。如果有大批数据需要处理,则应配置足够的RAM,如6264,62256等。随着软件设计水平提高,往往只要改变或者增加软件中的数据处理算法,就可以是系统功能提高很多,而系统的硬件不必做任何更换就使系统升级换代。只要在硬件电路设计初期考虑到这一点,就应该为系统将来升级留有足够的RAM空间,哪怕多设计一个RAM插座,暂时不插芯片也好。5. I/O端口:在样机研制出来后进行现场试用时,往往会发现一些被忽视的问题,而这些问题不是靠单纯的软件措施来解决的。如果有些新的信号需要采集,就必须增加输入检测端:有些物理量需要控制,就必须增加输出端。如果在硬件电路设计就预留出一些I/O端口,虽然当时空着没用,那么要用的时候就能派上用场了。3.2 总体硬件原理图总体原理图如图3-1所示,途中主要部分U1芯片为80C51单片机,U2为芯片74LS30,U3位芯片74LS04,U4为芯片74LS164。按键1-8分别为8路抢答按键,分别接到单片机的P1.0-P1.7中。抢答允许键接到单片机的13脚,单片机的13脚既有外部中断1即INT1的输入功能又有P3.3的I/O端口功能,但此处只用到它的I/O端口功能,不作为外部中断输入。主持人的返回按键接到单片机的P3.0口,即第10管脚。时间调接允许按键、时间加一、时间减一按键分别接到单片机P0.5-P0.7口,即34、33、32管脚。8位抢答按钮经过8路与非门和一个非门后接到单片机的12脚,此处12脚作为外部中断0即INT0输入端使用。4位七段数码管段选信号由单片机38脚P0.1口传输给芯片74LS164,再由74LS164送给数码管。数码管的位选接单片机的P0.2、P0.3、P0.4口。单片机的P2口接到8位选手的指示二极管。蜂鸣器的输出为P3.1口。 图3-1 总体原理图3.3 时钟频率电路设计 单片机必须在时钟的驱动下才能工作,在单片机内部有一个时钟振荡电路,只需要外接一个振荡源就能产生一定周期的时钟信号送到单片机内部的各个单元,决定单片的工作速度,时钟电路如图3-2 所示。图3-2 外部振荡电路 一般选用石英晶体振荡器。此电路大约延迟10ms后振荡器起振,在XTAL2引脚产生幅度为3V左右的正弦波时钟信号,其振荡频率主要有石英晶体的频率确定。电路中两个电容C1、C2的作用有两个:一是帮助振荡器起振;二是对振荡器的频率进行微调。C1、C2的典型值为30pF。单片机工作时,由内部振荡器产生或由外直接输入的送至内部控制逻辑单元的时钟信号的周期称为时钟周期。其大小是时钟信号频率的倒数,常用fosc表示。图中时钟频率为12MHz,即fosc=12MHz,则时钟周期为1/12s。3.4 复位电路的设计 单片机的第9脚RST为硬件复位电路,只要将该端持续4个机器周期的高电平即可实现复位,复位口单片机的各个状态都恢复到初始化状态,其电路图如图3-3所示:图3-3中由按键以及电容C1、电阻R1、R2构成按键及上电复位电路。由于单片机是高电平复位,所以当按键按下的时候,单片机的9脚RST管脚处于高电平,此时单片机处于复位状态。当上点后。由于电容C1开始缓缓充电,则图中电路由5V电源到电容到电阻R1和地之间形成以个通路,由于在R1上产生电压降则单片机的RST脚上为高电平,经过一段时间后电容的电充满此时C3处可视为断路,单片机RST脚处电压逐渐降为0V,即处于稳定的低电平状态,此时单片机完成上电复位,程序重0000H开始执行。值得注意的是,在设计当中使用到了硬件复位电路和软件复位两种功能,由上面所述的硬件复位之后的各状态可知寄存器的值都恢复到了初始值,而前面的功能介绍中提到了倒计时时间的记忆功能,该功能实现的前提条件就是不能对单片机进行硬件复位,所以设定了软件复位功能。软件复位实际上就是当程序执行完毕之后,将程序指针通 图3-3 硬件复位电路过一条跳转指令让它跳转到程序执行的起始地址。3.5 显示电路的设计3.5.1 显示电路概述显示功能与硬件关系极大,在这里我们使用的是七段数码管显示,通常在显示上我们采用的方法一般包括两种:一种是静态显示,一种是动态扫描。其中静态显示的特点是显示稳定不闪烁,程序编写简单,但占用端口资源多;动态扫描的特点是显示稳定程度没有静态显示好,程序编写复杂,但是相对静态显示而言最大的优点是占用端口资源少。由于本设计需要较多的端口用于其它的功能因此采用占用端口少的动态扫描显示的办法。但是由于本设计需要使用大量的单片机端口因此还使用了

温馨提示

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

评论

0/150

提交评论