基于单片机的八路抢答器的设计.doc
《基于单片机的八路抢答器的设计.doc》由会员分享,可在线阅读,更多相关《基于单片机的八路抢答器的设计.doc(32页珍藏版)》请在咨信网上搜索。
摘 要 随着科学技术的发展和普及,各种各样的竞赛越来越多,其中抢答器的作用也越来越重要。本文设计出以AT89C51单片机为核心的八路抢答器,采用了数字显示器直接指示,自动锁存显示结果,并自动复位的设计思想,它能根据不同的抢答输入信号,经过单片机的控制处理并产生与输入信号相对应的输出信号,最后通过LED数码管显示相应的路数,即使两组的抢答时间相差几微秒,也可分辨出是哪组优先按下的按键,充分利用了单片机系统结构简单、功能强大、可靠性好、实用性强的特点。 本设计是以抢答为出发点。考虑到根据需要设定限时回答的功能,利用89C51单片机及外围接口实现的抢答系统,利用单片机的定时器/计数器定时和记数的原理,将软、硬件有机地结合起来,使得系统能够正确地进行计时,同时使数码管能够正确地显示时间。用开关做键盘输入,蜂鸣器发声提示。同时系统能够实现:在抢答中,只有开始后抢答才有效,如果在开始抢答前抢答为无效;满时后系统计时自动复位及主控强制复位;按键锁定,在该状态下,按键是无效的。 关键词:抢答器 单片机 LED 数码显示管 定时器/计数器 ABSTRACT With the development and popularization of science and technology, all kinds of competitions become more and more, so responder is more and more important. This paper designed eight-way Responder based on AT89C51 MCU, with digital display direct instructions, automatic latch showed results, and automatic reset design ideas. It can according to different contest input signal by MCU control, handle and produce different with the input signal corresponding output signal, finally LED digital pipe display by the corresponding points, even if the two groups of vies differs a few microseconds, also time can distinguish which group of priority press buttons, fully utilize the signal-chip microcomputer system structure is simple, powerful, good reliability and practicability strong characteristic. This design is for the starting point. Responders considering the set limit to answer in 89C51 single-chip microcomputer and function, use of peripheral interfaces, scare-answering system of the microcontroller timer/counter timing and numeration principle, software and hardware organically, and makes the system can correctly to the time, at the same time making digital tube can properly show time. With a switch does keyboard output, the speaker happen hint. And the system can realize: in the contest, only after beginning vies to effective, if at the stat of the contest for the invalid; former contest full automatic rest and clock after the system master mandatory rest; key lock, in this effective condition, buttons invalid. Key words: Responder Single chip microcomputer LED digital display tube Timer / counter 目 录 第一章 绪论 1 1.1抢答器发展概况 1 1.2本课题研究的意义 1 1.3系统设计的功能 2 第二章 单片机系统原理 3 2.1单片机的原理 3 2.1.1单片机的简介 3 2.1.2单片机的分类 3 2.2单片机的工作过程 4 2.3单片机的引脚及其作用 5 第三章 八路抢答器的电路设计 7 3.1电路设计原理 7 3.2八路抢答器模块化设计 7 3.3时钟与复位模块 8 3.3.1时钟模块 8 3.3.2复位模块 9 3.4显示模块 9 3.5按键输入模块 11 3.5.1键盘的去抖动 11 3.5.2按键电路图 12 3.6报警模块 12 第四章 软件设计 14 4.1系统程序设计 14 4.2抢答器主程序流程图 15 4.3非法抢答查询子程序 15 4.4抢答时间调整子程序 16 第五章 软件仿真及程序调试 17 5.1Proteus软件仿真 17 5.2Keil软件的使用 17 谢 辞 19 参考文献 20 附 录 21 附录1:电路原理图 21 附录2:程序清单 22 大连交通大学2013届本科毕业生毕业设计 第一章 绪论 1.1抢答器发展概况 当今的社会竞争日益激烈,选拔人才,评选优胜,知识竞赛之类的活动愈加频繁,比赛中为了准确、公正、直观地判断出第一抢答者,这就要有一种抢答设备作为裁判员,于是抢答器应用而生。 早期的抢答器只由几个三极管、可控硅、发光管等组成,能通过发光管的指示辨认出选手号码。现在大多数抢答器均使用单片机(如MCS-51型)和数字集成电路,并增加了许多新功能,如选手号码显示、抢答前或抢答后的计时、选手得分显示等功能。 随着我国抢答器市场的迅猛发展,与之相关的核心生产技术应用与研发必将成为业内企业关注的焦点。技术工艺,是衡量一个企业是否具有先进性,是否具备市场竞争力,是否能不断领先于竞争者的重要指标依据。了解国内外抢答器生产核心技术的研发动向、工艺设备、技术应用及趋势对于企业提升产品技术规格,提高市场竞争力十分关键。目前市场上抢答器种类繁多,功能各异,价格差异也很大。那么选择一款真正适合的抢答器就非常重要。 抢答器一般分为电子抢答器和电脑抢答器。目前电子抢答器的中心构造一般都是由数字电子集成电路组成,其搭配的配件不同又分为,非语音非记分抢答器和语音记分抢答器。非语音记分抢答器构造很简单,就是一个抢答器的主机和一个抢答按钮组成,在抢答过程中选手是没有记分的显示屏。语音记分抢答器是由一个抢答器的主机、主机的显示屏以及选手的记分显示屏等构成,具有记分等功能。电子抢答器多适用于学校和企事业单位举行的简单的抢答活动。电脑抢答器又分为无线电脑抢答器和有线电脑抢答器。无线电脑抢答器是由主机和抢答器专用的软件和无线按钮构成。无线电脑抢答器利用电脑和投影仪,可以把抢答气氛活跃起来,一般多使用于电台等大型的活动。有线电脑抢答器也是由主机和电脑配合起来,电脑再和投影仪配合起来,利用专门研发的配套的抢答器软件,可以十分完美的表现抢答的气氛。 1.2本课题研究的意义 抢答器是一种应用非常广泛的设备,在各种竞赛、抢答场合中,它能迅速、客观地分辨出最先获得发言权的选手,无论是军队还是电视节目中,都可能会举办各种各样的智力竞赛,都会用到抢答器。如果要是让抢答者用举手等方法,主持人很容易误判,会造成抢答的不公平,为了使这种不公平不发生,只有靠电子产品的高准确性来保障抢答的公平性。比赛中为了准确、公正、直观地判断出第一抢答者,所设计的抢答器通常由数码显示、灯光、音响等多种手段指示出第一抢答者。 抢答器作为一种电子产品,早已广泛应用于各种智力和知识竞赛场合,但目前所使用的抢答器有很多的缺点,有的电路较复杂不便于制作,可靠性低,实现起来很困难;有的则用一些专用的集成块 ,而专用集成块的购买又很困难。而我所设计的八路智能抢答器,具有元件普通 ,易于购买等优点,很好地解决了制作困难和难于购买的问题。 在知识比赛中,特别是做抢答题目的时候,在抢答过程中,为了知道哪一组或哪一位选手先答题,必须要设计一个系统来完成这个任务。如果在抢答中,靠视觉是很难判断出哪组先答题。怎样来设计抢答器,能使以上问题得以解决?即使两组的抢答时间相差几微秒,也可分辨出哪组优先答题?通过研究并在设计验证后发现,采用单片机技术设计的抢答器与传统的抢答器相比,首先,电路连接简单,因为大多数功能单元都通过程序设计在单片机内部。第二,工作性能可靠,抗干扰能力优于传统抢答器,并能够解决以上提出的问题。所以本研究是一个实用的工程设计,具有创新性。 1.3系统设计的功能 根据一般比赛对抢答器功能的要求,本文设计出的抢答器系统功能如下: (1)抢答器可以同时供8名选手或8个代表队比赛,分别用8个按钮S1~S8表示。 (2)主持人可以通过智能抢答器的按键设定每道题的抢答时间和回答时间。 (3)具有清零和非法抢答控制功能,设置一个系统清除和抢答控制开关,并由主持人操控,避免选手在主持人说“开始”前提前抢答,违反规则。 (4)当主持人启动“开始抢答按键”后,定时器进行减计时,在20秒内无人抢答表示所有参赛选手或参赛队对本题弃权,抢答时间耗尽后禁止抢答。 (5)倒计时5秒时,如果仍无人抢答,则系统每1s报警一次,用以提示参赛选手。 (6)抢答器具有锁存与显示功能。即选手按下按键,锁存相应选手的参赛编号,并在LED数码管上显示,一直保持到主持人将系统清除为止,同时扬声器发出报警声响提示。选手抢答实行优先锁存,其他按键者将不能响应,以便公平地选择第一个抢答者。 (7)参赛选手在设定的时间内进行抢答,抢答有效,显示器上显示选手的编号,同时进入回答问题的30s倒计时。回答问题时可以选择启用锦囊,即答题时间变为60秒。 (8)倒计时期间,如果主持人想终止倒计时,可以按下“停止”键,系统会自动进入准备状态。 本设计中主要硬件设备:AT89C51单片机、8输入与非门74HC30、共阴极LED数码管、12MHz晶振、74LS04反相器、按键若干、报警喇叭、变压器、整流器、电容、电阻、7805稳压芯片。 第二章 单片机系统原理 2.1单片机的原理 2.1.1单片机的简介 目前,80C51单片机在工业检测领域中得到了广泛的应用,因此我们可以在许多单片机应用领域中,配接各种类型的接口,构成综合应用系统,以增强其功能。89C51是Intel公司生产的一种单片机,在一小块芯片上集成了一个微型计算机的各个组成部分。每一个单片机包括:一个8位的微型处理器CPU;一个128字节的片内数据存储器RAM;4k片内程序存储器ROM;四个8位并行的I/O接口P0-P3,每个接口既可以输入,也可以输出;两个定时器/记数器;五个中断源的中断控制系统;一个全双工UART的串行I/O口;片内振荡器和时钟产生电路,但石英晶体和微调电容需要外接。最高允许振荡频率是12MHZ。以上各个部分通过内部总线相连接。下面简单介绍下其部分功能。 中央处理器CPU是单片微型计算机的指挥、执行中心,由它读人用户程序,并逐条执行指令,它是由8位算术/逻辑运算部件(简称ALU)、定时/控制部件,若干寄存器A、B、B5W、5P以及16位程序计数器(PC)和数据指针寄存器(DM)等主要部件组成。算术逻辑单元的硬件结构与典型微型机相似。它具有对8位信息进行+、-、×、/ 四则运算和逻辑与、或、异或、取反、清“0”等运算,并具有判跳、转移、数据传送等功能,此外还提供存放中间结果及常用数据寄存器。控制器部件是由指令寄存器、程序计数器PC、定时与控制电路等组成的。指令寄存器中存放指令代码。枷执行指令时,从程序存储器中取来经译码器译码后,根据不同指令由定时与控制电路发出相应的控制信号,送到存储器、运算器或I/O接口电路,完成指令功能。程序计数器PC才程序计数器PC用来存放下一条将要执行的指令,共16位.可对以K字节的程序存储器直接寻址C指令执行结束后,PC计数器自动增加,指向下一条要执行的指令地址。 CPU功能,总的来说是以不同的方式,执行各种指令。不同的指令其功自略异。有的指令涉及到枷各寄存器之间的关系;有的指令涉及到单片机核心电路内部各功能部件的关系;有的则与外部器件如外部程序存储器发生联系。事实上,CRJ是通过复杂的时序电路完成不同的指令功能。所谓CRJ的时序是指控制器控照指今功能发出一系列在时间上有一定次序的信号,控制和启动一部分逻辑电路,完成某种操作。 2.1.2单片机的分类 单片机作为计算机发展的一个重要领域,应用一个较科学的分类方法。根据目前发展情况,从不同角度单片机大致可以分为通用型/专用型、总线型/非总线型及工控型/家电型。 (1) 通用型/专用型 这是按单片机适用范围来区分的。例如,80C51是通用型单片机,它不是为某种专用途设计的;专用型单片机是针对一类产品甚至某一个产品设计生产的,例如为了满足电子体温计的要求,在片内集成ADC接口等功能的温度测量控制电路。 (2) 总线型/非总线型 这是按单片机是否提供并行总线来区分的。总线型单片机普遍设置有并行地址总线、 数据总线、控制总线,这些引脚用以扩展并行外围器件都可通过串行口与单片机连接,另外,许多单片机已把所需要的外围器件及外设接口集成一片内,因此在许多情况下可以不要并行扩展总线,大大减省封装成本和芯片体积,这类单片机称为非总线型单片机。 (3) 控制型/家电型 这是按照单片机大致应用的领域进行区分的。一般而言,工控型寻址范围大,运算 能力强;用于家电的单片机多为专用型,通常是小封装、低价格,外围器件和外设接口集成度高。 显然,上述分类并不是惟一的和严格的。例如,80C51类单片机既是通用型又是总线型,还可以作工控用。 2.2单片机的工作过程 单片机自动完成赋予它的任务的过程,也就是单片机执行程序的过程,即一条条执行指令的过程,所谓指令就是把要求单片机执行的各种操作用命令的形式写下来,这是由设计人员赋予它的指令系统所决定的,一条指令对应着一种基本操作;单片机所能执行的全部指令,就是该单片机的指令系统,不同种类的单片机,其指令系统亦不同。为使单片机能自动完成某一特定任务,必须把要解决的问题编成一系列指令(这些指令必须是选定单片机能识别和执行的指令),这一系列指令的集合就成为程序,程序需要预先存放在具有存储功能的部件——存储器中。存储器由许多存储单元(最小的存储单位)组成,就像一幢大楼由许多房间组成一样,指令就存放在这些单元里,单元里的指令取出并执行就像大楼的每个房间的被分配到唯一一个房间号一样,每一个存储单元也必须被分配到唯一的地址号,该地址号称为存储单元的地址,这样只要知道了存储单元的地址,就可以找到这个存储单元,其中存储的指令就可以被取出,然后再被执行。 程序通常是顺序执行的,所以程序中的指令也是一条条顺序存放的,单片机在执行程序时要能把这些指令一条条取出并加以执行,必须有一个部件能追踪指令所在的地址,这一部件就是程序计数器PC(包含在CPU中)。在开始执行程序时,给PC赋以程序中第一条指令所在的地址,然后取得每一条要执行的命令,PC之中的内容就会自动增加,增加量由本条指令长度决定,可能是1、2或3,以指向下一条指令的起始地址,保证指令顺序执行。 2.3单片机的引脚及其作用 89C51单片机的引脚图如下: 图2-1 89C51单片机的引脚图 Vcc(40脚):接+5V电源正端; Vss(20脚):接+5V电源正端。 XTAL1(19脚):接外部石英晶体的一端。在单片机内部,它是一个反相放大器的输入端,这个放大器构成采用外部时钟时,对于HMOS单片机,该引脚接地;对于CHOMS单片机,该引脚作为外部振荡信号的输入端。 XTAL2(18脚):接外部晶体的另一端。在单片机内部,接至片内振荡器的反相放大器的输出端。当采用外部时钟时,对于HMOS单片机,该引脚作为外部振荡信号的输入端。对于CHMOS芯片,该引脚悬空不接。 控制信号或与其它电源复用引脚有RST/VPD、ALE/P、PSEN和EA/VPP等4种形式。 (1)RST/VPD(9脚):RST即为RESET,VPD为备用电源,所以该引脚为单片机的上电复位或掉电保护端。当单片机振荡器工作时,该引脚上出现持续两个机器周期的高电平,就可实现复位操作,使单片机复位到初始状态。当VCC发生故障,降低到低电平规定值或掉电时,该引脚可接上备用电源VPD(+5V)为内部RAM供电,以保证RAM中的数据不丢失。 (2)ALE/ P (30脚):当访问外部存储器时,ALE(允许地址锁存信号)以每机器周期两次的信号输出。 (3)PSEN(29脚):片外程序存储器读选通输出端,低电平有效。当从外部程序存储器读取指令或常数期间,每个机器周期PESN两次有效,以通过数据总线口读回指令或常数。当访问外部数据存储器期间,PESN信号将不出现。 (4)EA/Vpp(31脚):EA为访问外部程序储器控制信号,低电平有效。当EA端保持高电平时,单片机访问片内程序存储器4KB(MS—52子系列为8KB)。若超出该范围时,自动转去执行外部程序存储器的程序。当EA端保持低电平时,无论片内有无程序存储器,均只访问外部程序存储器。对于片内含有EPROM的单片机,在EPROM编程期间,该引脚用于接21V的编程电源Vpp。 输入/输出(I/O)引脚P0口、P1口、P2口及P3口 (1)P0口(39脚~22脚):P0.0~P0.7统称为P0口。当不接外部存储器与不扩展I/O接口时,它可作为准双向8位输入/输出接口。当接有外部程序存储器或扩展I/O口时,P0口为地址/数据分时复用口。它分时提供8位双向数据总线。 对于片内含有EPROM的单片机,当EPROM编程时,从P0口输入指令字节,而当检验程序时,则输出指令字节。 (2)P1口(1脚~8脚):P1.0~P1.7统称为P1口,可作为准双向I/O接口使用。对于MCS—52子系列单片机,P1.0和P1.1还有第2功能:P1.0口用作定时器/计数器2的计数脉冲输入端T2;P1.1用作定时器/计数器2的外部控制端T2EX。对于EPROM编程和进行程序校验时,P0口接收输入的低8位地址。 (3)P2口(21脚~28脚):P2.0~P2.7统称为P2口,一般可作为准双向I/O接口。当接有外部程序存储器或扩展I/O接口且寻址范围超过256个字节时,P2口用于高8位地址总线送出高8位地址。对于EPROM编程和进行程序校验时,P2口接收输入的8位地址。 (4)P3口(10脚~17脚):P3.0~P3.7统称为P3口。它为双功能口,可以作为一般的准双向I/O接口,也可以将每1位用于第2功能,而且P3口的每一条引脚均可独立定义为第1功能的输入输出或第2功能。P3口的第2功能见下表: 表2-1 单片机P3口管脚含义 引脚 第2功能 P3.0 RXD(串行口输入端) P3.1 TXD(串行口输出端) P3.2 INT0(外部中断0请求输入端,低电平有效) P3.3 INT1(外部中断1请求输入端,低电平有效) P3.4 T0(定时器/计数器0计数脉冲端) P3.5 T1(定时器/计数器1计数脉冲端) P3.6 WR(外部数据存储器写选通信号输出端,低电平有效) P3.7 RD(外部数据存储器读选通信号输出端,低电平有效) 综上所述,MCS—51系列单片机的引脚作用可归纳为以下两点: (1)单片机功能多,引脚数少,因而许多引脚具有第2功能; (2)单片机对外呈3总线形式,由P2、P0口组成16位地址总线;由P0口分时复用作为数据总线。 第三章 八路抢答器的电路设计 3.1电路设计原理 为使硬件电路设计尽可能简洁合理,应主要以下几点: (1)工业上尽可能采用功能强的芯片,以简化电路,功能强的芯片可以代替若干普通芯片,随着生产工艺的提高,新型芯片的价格不断下降,并不一定比若干普通芯片价格的总和高。 (2)留有设计余地。在设计硬件电路时,要考虑到将来修改扩展的方便。因为很少有一锤定音的电路设计,如果现在不留余地,将来可能要为一点小小的修改或扩展而被迫进行全面返工。 (3)程序空间,选用片内程序空间足够大的单片机,否则因为程序空间不够使不得不进行空间扩展。 (4)RAM空间,大部分51系列单片机的内部RAM不多,当要增强软件数据处理功能时,往往觉得不足。如果系统配置了外部RAM,则建议多留一些空间。如选用8155作I/O接口,就可以增强256字节RAM。如果有大批数据需要处理,则应配置足够的RAM,如6264,62256等。随着软件设计水平的提高,往往只要改变或增加软件中的数据处理算法,就可以使系统功能提高很多,而系统的硬件不必做任何更换就使系统升级换代。只要在硬件电路设计初期考虑到这一点,就应该为系统将来升级留足够的RAM空间,哪怕多设计一个RAM的插座,暂不插芯片也好。 (5)I/O端口,在样机研制出来后进行现场试用时,往往会发现一些被忽视的问题,而这些问题不是靠单纯的软件措施来解决的。如有些新的信号需要采集,就必须增加输入检测端;有些物理量需要控制,就必须增加输出端。所以一般在设计硬件电路时就预留出一些I/O端口。 图3-1 主要功能模块原理框图 3.2八路抢答器模块化设计 该抢答器系统的硬件设计是以单片机为中心控制模块,采用模块化设计的八路抢答器,具有五个模块,分别为:按键输入模块、显示模块、时钟与复位模块、报警模块、核心控制模块。 系统的主要功能模块原理框图如图3-1所示。 按键输入模块共有14个按键,分为抢答按键和控制按键。抢答按键共有八个,分别为S1―S8,供抢答选手进行抢答使用,P1口为八个按键抢答信号的输入口,低电平有效。控制按键有六个,分别为S9―S14, 其中S9和S10分别为“抢答时间调整键”和“回答时间调整键”, 其对应的I∕O接口分别为P3.3和P3.4;S11和S12分别为时间“加1”和“减1”按键,其对应的I∕O接口分别为P3.5和P3.6;S13和S14分别为“抢答开始按键”和“抢答停止按键”,其对应的I∕O接口分别为P3.0和P3.1。 显示模块本系统采用四个共阴极LED数码管显示,一个数码管用来显示抢答到问题的选手的号码,两个用来显示倒计时时间,一个未使用的数码管作为以后的扩展使用。 时钟与复位模块包括时钟电路和复位电路,单片机的最小系统就是由时钟电路、复位电路及单片机构成。单片机的时钟信号用来提供单片机片内各种操作的时间基准,单片机的时钟信号通常用两种电路形式得到:内部振荡方式和外部振荡方式。复位操作则使单片机的片内电路初始化,使单片机从一种确定的初态开始运行。根据应用的要求,复位操作通常有两种基本形式:上电复位或开关复位。当51系列单片机的复位引脚RST(全称RESET)出现2个机器周期以上的高电平时,单片机就执行复位操作。如果RST持续为高电平,单片机就处于循环复位状态。 报警模块在本系统中为附加模块,它的主要用途就是起到提示并引起人们的注意。它只有在两种情况下才发出报警,一是“开始抢答”按键没有按下时,选手就按下了“抢答键”,报警电路发出报警,提示有选手发生抢答;二是每道题的抢答时间和问题的回答时间在倒计时5秒时,报警电路发出报警,提示选手倒计时的时间即将耗尽。 核心控制模块就是人们所谓的CPU,它是整个系统的总控制部分,本系统的核心控制模块为51系列的单片机,只有我们通过软件程序的编写,并将程序写入单片机,该系统才会正确的工作。 3.3时钟与复位模块 3.3.1时钟模块 图3-2 时钟电路 单片机必须在时钟的驱动下才能工作。AT89C51单片机的时钟产生方法有两种:内部时钟方式和外部时钟方式。无论何种形式,都需要外部附加电路,产生时钟脉冲。 本系统中采用的是内部时钟方式。时钟电路如图3-2所示。 从时钟电路的示意图中可以看到,单片机所跨接的晶体振荡器旁边还有两个电容器C1和C2。C1和C2被称为谐振电容,主要作用有两点:一是可以促使单片机系统快速起振;二是C1、C2具有对频率进行微调作用,有利于单片机系统振荡频率的稳定,维持单片机的正常运行。谐振电容的容值选择,与所用的晶体振荡器的频率值有关。晶体振荡器的振荡频率越高,相应的谐振电容的容值也要提高。二者如果配合的好,可以发挥谐振电容的积极作用。反之,自激振荡器频率的稳定性将受到影响。经过大量的实际应用,晶体振荡器的频率与谐振电容的容值之间形成了一定的固定搭配。例如:当晶体振荡器的频率为12MHz时,谐振电容的容值一般为30pF左右。 理论上单片机的运算速度越快越好,即晶体振荡器的频率越高越好。但是,在有些情况下,单片机的外围设备的速度无法匹配单片机的运行速度。综合考虑,本文中的晶体振荡频率设计为12MHz,其机器周期为1us,谐振电容的容值选定为30pF。 3.3.2复位模块 单片机的第9脚RST为硬件复位端,只要将该端持续2个机器周期的高电平即可实现复位,复位后单片机的各状态都恢复到初始化状态,其电路图如图3-3所示: 图3-3 复位电路 3.4显示模块 数码管发光原理分两种情况:共阴极型a、b、c、d、e、f、g 各引脚输入高电平有效。只要哪个引脚输入为高电平,对应的二极管就会发亮;共阳极型结构数码管的a、b、c、d、e、f、g 各引脚输入低电平有效。只要哪个引脚输入低电平,对应的二极管就会发亮。通过点亮不同的发光段可组成不同的字形。输入到数码管 dp 、g、f、e、d、c、b、a 的二进制码称为字段码(或称字形码),数码管显示的结果为字形。本文显示电路使用七段数码管7SEG-MPX4-CC,它是共阴极的,由高电电平点亮。 在这里我们使用的是七段数码管显示,通常在显示上我们采用的方法一般包括两种:一种是静态显示,一种是动态显示。其中静态显示的特点是显示稳定不闪烁,程序编写简单,但占用端口资源多;动态显示的特点是显示稳定性没静态好,程序编写复杂,但是相对静态显示而言占用端口资源少。在本设计中根据实际情况采用的是动态显示方法。 图3-4 七段数码显示管 并通过查表法,将其在数码管上显示出来,其中P0口为字型码输入端,P2口低3位为字选段输入端。在这里我们通过查表将字型码送给7段数码管,数码管显示原理如下: 表3-1 显示字形字段码对应关系(字体) 显示字型 共阳极段选码 共阴极段选码 0 C0H 3FH 1 F9H 06H 2 A4H 5BH 3 B0H 4FH 4 99H 66H 5 92H 6DH 6 82H 7DH 7 F8H 07H 8 80H 7FH 9 90H 6FH F 8EH 71H “灭” FFH 00H MOV A,R5 MOVC A,@A+DPTR ;查字型 MOV P2,#0FDH ;送位选码 MOV P0,A ;送字型码 ACALL DELAY ;调延时,去闪烁 3.5按键输入模块 3.5.1键盘的去抖动 组成键盘的按键有触点式和非触点式两种,单片机中应用的一般是由机械触点构成的。按键如图3-5所示,当开关S1断开时,单片机接入口输入为高电平,S1闭合时,单片机接入口输入为低电平。 图3-5 按键图 由于按键是机械触点,当机械触点断开、闭合时,会有抖动,P1输入端的波形如图3-6所示。这种抖动对于人来说是感觉不到的,但对单片机来说,则是完全可以感应到的,因为单片机处理的速度是在微秒级,而机械抖动的时间至少是毫秒级,对单片机而言,这已是一段“漫长”的时间了。如果键处理程序采用中断方式的话,在响应按键时就可能会出现问题,也就是说按键有时灵,有时不灵,其实就是这个原因,你只按了一次按键,可是单片机却已执行了多次中断的过程,若执行的次数正好是奇数次,那么结果正如你所料,若执行的次数是偶数次,那就不对了。而如果键处理程序采用查询方式的话也会存在响应按键迟钝的现象,甚至可能会漏掉信号。 图3-6 抖动波形图 为了使CPU能正确地读出按键接入口的状态,对每一次按键只作一次响应,就必须考虑如何去除抖动,也就是消除在按键过程中产生的“毛刺”现象。常用的去抖动的方法有两种:硬件方法和软件方法。单片机设计中常用软件法,因此,对于硬件方法我们在此不做介绍。软件去除抖动其实很简单,这里采用最常用的方法,即延时重复扫描法,延时法的原理为:因为“毛刺”脉冲一般持续时间短,约为几ms,而我们按键的时间一般远远大于这个时间,所以当单片机检测到有按键动静(按键按下或释放)后再延时一段时间(这里我们取10ms)后再判断此电平是否保持原状态,如果是则为有效按键,否则无效。不过一般情况下,我们通常不对按键释放的后沿进行处理,实践证明,也能满足一定的要求。 3.5.2按键电路图 八路智能抢答器设计中由于按键较少,端口资源丰富,因此采用了独立键盘的方式,无双功能和多功能设计,本设计中有8个抢答按键输入,一个开始按键、一个结束按键,此外还有抢答时间调整键、回答时间调整键,加一按键减一按键各一个。按键连接图如图3-7所示。 图3-7 按键电路图 在图3-7中8个抢答按键分别接入单片机的P1.0-P1.7端口,单片机通过读取P1.0-P1.7的值来判断当前输入的是8个抢答按键中的哪一个。抢答时间调整和回答时间调整接到单片机的P3.3和P3.4接口,加一及减一按键接到单片机的P3.5和P3.6接口。开始及结束按键接到单片机的10、11脚,这里用到了单片机10、11脚复合功能中的IO端口功能,单片机通过读取10、11脚的P3.0、P3.1的IO端口值来判断当前是否处于抢答开始状态或抢答结束状态。 3.6报警模块 实现单频音报警的接口电路比较简单,其发音元件通常可采用压电蜂鸣器,当在蜂鸣器两引脚上加3~15V直流工作电压,就能产生3KHz左右的蜂鸣振荡音响。 图3-8 报警电路 压电式蜂鸣器结构简单、耗电少,更适于在单片机系统中应用。压电式蜂鸣器,约需 10mA的驱动电流,可在某端口接上一只三极管和电阻组成的驱动电路来驱动。 在图 3-8中,P 3.7接三极管基极输入端,当 P3.7输出高电平“1”时, 三极管导通,蜂鸣器通电发音,当 P3.7输出低电平“0”时,三极管截止,蜂鸣器停止发音。在本系统中,当抢答时间和答题时间倒计5秒时就调用报警子程序发声报警。 第四章 软件设计 4.1系统程序设计 本系统由于较简单,程序内容相对较少,本着简单易懂的原则,所以采用汇编语言实现其软件的设计。 进行汇编语言程序的编写应遵循以下四个步骤: 构思:其主要工作是分析题意,制作程序流程图。流程图的逻辑必须符合题意要求。 布局:其主要工作是分配单片机资源,包括程序地址分配,片内储存单元分配。如确定每个程序段起始地址,确定某一片内RAM单元作为数组指针等。 编写:根据布局安排,将程序流程图转换为单片机指令。做到在流程图各环节相应指令对应的同时,提高运用指令的技巧性。 修改:对程序进行编译和试运行。如果运行不正确的话,一定要找出其中的差异来。要知道,编写程序就是不断的尝试错误,在调试中不断修改,提高程序的可靠性和程序结构的合理性。 该系统应用程序由主程序和子程序模块组成。系统应用程序采用结构化模块设计,从功能上看,主要包括:主程序、电源检测程序、报警程序、控制程序等。下边对程序流程进行介绍。 图4-1 主程序流程图 4.2抢答器主程序流程图 智能抢答器在正常工作的情况下,首先对控制系统进行初始化,然后进行键盘扫描,判断主持人是否按下了“开始抢答”按键,如果按键没有按下,则执行非法抢答查询子程序,判断是否有选手发生了抢答现象;如果“开始抢答”按键按下则执行倒计时子程序和显示子程序,并调用正常抢答处理子程序。其中倒计时程序包括抢答倒计时和回答倒计时。 任何控制系统开始正常工作前都必须要进行初始化,在其它应用程序确定之后,本部分程序设计在于协调各部分程序之间的关系,以促使各部分程序之间有序运行,达到进一步优化程序设计的目的。该智能抢答器的初始化子程序主要是两个定时器和两个外部中断的初始化。主程序流程图如图4-1所示。 4.3非法抢答查询子程序 在主持人未按下“抢答开始键”时,为防止参赛选手发生抢答,专门设计了非法抢答查询子程序。当有选手发生抢答时,系统会将选手的号码保持下来,并送到LED显示装置进行显示,同时调用非法抢答子程序。 非法抢答查询子程序流程图如图4-2所示。 图4-2 非法抢答查询子程序流程图 4.4抢答时间调整子程序 该智能抢答器的抢答时间是可以根据实际需要进行调整的,如果想调节抢答时间,按下“抢答时间调整键”。此时,LED显示装置会显示当前抢答时间的设定值,如果想加1S,按下“加1”键;如果想减1S,按下“减1”键。LED显示装置会自动显示修改后的抢答时间。抢答时间的设定值范围是0~99S,0S再减1S会变成99S,同理99S再加1S会变成0S。回答时间的调整与此类似。抢答时间调整子程序流程图如图4-3所示。 图4-3 抢答时间调整子程序流程图 第五章 软件仿真及程序调试 随着仿真软件的广泛推广应用,为我们的设计带来了极大的方便。软件仿真及程序调试这一部分是焊接实物前必须要做的一步。本设计采用的是Proteus仿真软件进行八路抢答器的模拟仿真,用Keil软件对程序进行编译和调试。 5.1Proteus软件仿真 进行Proteus软件仿真的步骤如下: (1)打开Proteus软件选择新建设计。如下图: 图5-1 新建Proteus设计 (2)选择默认模板DEFAULT保存设计,接着设定图纸大小:执行菜单“系统”—“设置图纸大小”弹出对话框,在此对话框中选择“A4”,单击“确定”。 (3)添加所需的元器件:单片机AT89C51、30Pf电容CAP、12MHz晶振CRYSTAL、共阴极七段数码管7SEG-MPX4-CC、HITEMP10U50V、八输入与非门74HC30、六反相器74LS04、扬声器SPEAKER、电阻RES、按键BUTTON。添加步骤:在器件选择按钮中单击P,弹出对话框,在关键字框中输入所需元器件的名称就可以找到相关元器件,然后双击元器件名称就可以添加元器件。 (4)将器件放置到绘图区,放置电源、地,然后进行连线,最后设置、修改原件属性。完成以上步骤。 (5)当原理图链接成功后,将Keil软件生成的HEX文件添加到仿真原理图的单片机中,经过调试就可以看到仿真结果。 5.2Keil软件的使用 使用Ke- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 八路 抢答 设计
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【xrp****65】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【xrp****65】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【xrp****65】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【xrp****65】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文