已阅读5页,还剩31页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于单片机技术的八路抢答器设计及PCB设计摘要当今社会竞争日益激烈,选拔人才,评选优胜,知识竞赛之类的活动愈加频繁,比赛中为了准确、公正、直观的判断出第一抢答者,这就需要一种抢答设备作为裁判员,于是抢答器应运而生。抢答器是一种应用非常广泛的设备,在各种竞赛、抢答场合中,它能迅速、客观地分辨出最先获得发言权的选手,无论是军队还是电视节目中,都可能会举办各种各样的智力竞赛,都会用到抢答器。如果要是让抢答者用举手等方法,主持人很容易误判,会造成抢答的不公平,比赛中为了准确、公正、直观地判断出第一抢答者,所设计的抢答器通常由数码显示、灯光、音响等多种手段指示出第一抢答者。为了使这种不公平不发生,只有靠电子产品的高准确性来保障抢答的公平性。本设计是以八路抢答为基本理念。考虑到依需设定限时回答的功能,利用AT89C51单片机及外围接口实现的抢答系统,利用单片机的定时器/计数器定时和计数的原理,将软硬件有机地结合起来,使得系统能够正确地进行计时,同时使数码管能够正确地显示时间,用开关做键盘输出,扬声器发生提示。同时系统能够实现:在抢答中,只有开始后抢答才有效,如果在开始抢答钱抢答为无效;抢答限定时间和回答问题的时间可在1-99s设定;可以显示是哪位选手有效抢答和无效抢答,正确按键后有音乐提示;抢答时间和回答问题的时间倒计时显示,满时后系统计时自动复位及主控强制复位按键锁定,在有效状态下,按键无效非法。关键字:抢答器;单片机;AT89C51;模块;按键IBased on single chip microcomputer of eight-channel vies to answer first device design and PCB design ABSTRACT Todays increasingly fierce social competition, talent selection, selection of winning, knowledge contests activities more frequent, such as game in order to accurate, fair and straightforward to determine first vies to answer first, it will have a vies to answer first device as a referee, and vies to answer first device application. Responder is a kind of application is very wide range of equipment, in the various competitions, vies to answer first, it can promptly and objectively identify the first won the voice, whether the army or TV shows, may hold a variety of quiz, can use the buzzer. If let vies to answer first the use methods of hand, the host is easy to misjudge, unfair will cause the vies to answer first, match in order to accurate, fair and straightforward to determine first vies to answer first, vies to answer first device design by usually by digital display, lighting, sound and so on many kinds of means to indicate the first vies to answer first. In order to make this kind of unfair is not born, only rely on electronic products of high accuracy to guarantee fairness of vies to answer first.this design is based on no vies to answer first the basic concept. Given in accordance with the need to set the function of the prompt answer, using AT89C51 single-chip microcomputer and peripheral interface implementation of vies to answer first system, the use of single-chip timer/counter timing and counting principle, the software and hardware organically, enables the system to time correctly, make digital tube can correctly display the time at the same time, made the keyboard switch output, prompt loudspeaker. System can be achieved at the same time: in the vies to answer first, only after the start of vies to answer first effectively, if at the beginning of vies to answer first vies to answer first money as invalid; Vies to answer first time limit and answer problem of time can be set at 1-99s; Which is contestant vies to answer first effectively, and can display the invalid vies to answer first, right behind music keys hint; Vies to answer first, according to time countdown time and answer the questions after full timing automatic reset and forced reset button lock control system, the effective state, the key is invalid illegal.Keyword:vies to answer first; microcomputer; AT89C51 ; module; buIII目录1 绪论11.1背景11.2目的与意义11.3抢答器的应用11.4课题研究的内容21.5课题的优点及组成22 系统设计32.1系统的主要功能32.2系统需求分析42.3抢答器的工作流程42.4系统的稳定性62.4.1干扰源62.4.2软件抗干扰62.4.3硬件抗干扰72.5器件的选择72.5.1 AT89C51的功能及简介83硬件设计93.1抢答器电路框图93.2单元电路设计93.2.1抢答器电路93.2.2时序控制电路设计103.2.3复位电路的设计103.2.4时钟振荡电路113.2.5报警电路设计113.2.6显示电路的设计123.2.7键盘扫描电路的设计134软件设计154.1软件任务分析154.2程序流程图155系统的调试175.1硬件调试175.2软件调试175.3系统联调186系统的仿真19结论21致谢22参考文献23附录1:原理图24附录2:主程序25III江西理工大学应用科学学院毕业设计1 绪论1.1背景抢答器是一种应用非常广泛的设备,在各种竞赛、抢答场合中,它能迅速、客观地分辨出最先获得发言权的选手。早期的抢答器只由几个三极管、可控硅、发光管等组成,能通过发光管的指示辩认出选手号码。现在大多数抢答器均使用单片机(如MCS-51型)和数字集成电路,并增加了许多新功能,如选手号码显示、抢按前或抢按后的计时、选手得分显示等功能。本课题利用AT89C51单片机及外围接口实现的抢答系统,利用单片机的定时器/计数器定时和记数的原理,将软、硬件有机地结合起来,使得系统能够正确地进行计时,同时使数码管能够正确地显示时间和选手号码。用开关做键盘输出,扬声器发生提示。系统达到要求:在抢答中,只有开始后抢答才有效,如果在开始抢答前抢答为无效;抢答限定时间和回答问题的时间可是在1-99s设定;可以显示是哪位选手有效抢答和无效抢答,正确按键后有音乐提示;抢答时间和回答问题时间倒记时显示,时间完后系统自动复位;按键锁定,在有效状态下,按键无效非法。1.2目的与意义在知识比赛中,特别是做抢答题目的时候,在抢答过程中,为了知道哪一组或哪一 位选手先答题,必须要设计一个系统来完成这个任务。如果在抢答中,靠视觉是很难判 断出哪组先答题。怎样来设计抢答器,能使以上问题得以解决?即使两组的抢答时间相 差几微秒,也可分辨出哪组优先答题?通过研究并在设计验证后发现,釆用单片机技术 设计的抢答器与传统的抢答器相比,首先,电路连接简单,因为大多数功能单元都通过 程序设计在单片机内部。第二,工作性能可靠,抗干扰能力优于传统抢答器,并能够解 决以上提出的问题。所以本研究是一个实用的工程设计,具有创新性。通过这次设计,掌握51单片机的原理,了解简单多功能抢答器组成原理,初步掌握多功能抢答器的调整及测试方法,提高动手能力和排除故障的能力。同时通过本课题设计与装配、调试,提高自己的动手能力,巩固已学的理论知识,建立单片机理论和实践的结合,了解多功能抢答器各单元电路之间的关系及相互影响,从而能正确设计、计算定时计数的各个单元电路。初步掌握多功能抢答器的调整及测试方法。提高动手能力和排除故障的能力。初步掌握多功能抢答器的调整及测试方法。无论是学校还是电视节目中,都可能会举办各种各样的智力竞赛,都会用到抢答器。如果要是让抢答者用举手等方法,主持人很容易误判,会造成抢答的不公平,比赛中为了准确、公正、直观地判断出第一抢答者,所设计的抢答器通常由数码显示、灯光、音响等多种手段指示出第一抢答者。为了使这种不公平不发生,只有靠电子产品的高准确性来保障抢答的公平性。1.3抢答器的应用随着我国经济和文化事业的发展,在很多公开竞争场合要求有公正的 竞争裁决,诸如证券、股票交易及各种智力竞赛等,因此出现了抢答器。抢答器一般是由很多电路组成的,线路复杂,可靠性不高,功能也比较简单,特别是当抢答路数很多时,实现起来就更为困难。因此我们设计了以单片 机为核心的新型智能的抢答器,在保留了原始抢答器的基本功能的同时又 增加一系列的实用功能并简化其电路结构。抢答器又称为第一信号鉴别器, 其主要应用于各种知识竞赛、文艺活动等场合。传统普通抢答器主要存在 以下缺陷:(1)在一次抢答过程中,当出现超前违规抢答时,只能处理违规抢 答信号,而对没有违规的有效抢答信号不能进行处理,因而使该次抢答过 程变为无效。(2)当有多个违规抢答时,普通抢答器或采用优先编码电路选择其 中一个,或利用抢答电路电子元件的“竞争”选择其中一个。对于后者由 于抢答电路制作完毕后电子元件被固定。各路抢答信号的“竞争”能力也 被固定,因而本质上也有优先权。普通抢答器存在不公平性。(3)当有多个违规抢答时,普通抢答器只能“抓住”其中一个而出 现“漏洞”。1.4课题研究的内容本系统采用模块化设计智能抢答器,在抢答比赛中广泛应用,各组分别有一个抢答按钮。主持人有开始和结束、复位键。在后台主持人可以修改,抢答时间和选手回答问题的时间设置,原始状态下抢答时间为30s,回答问题时间为60s。通过加键和减键修改上述时间,改完后结束键确定。新时间开始有效,主持人按键开始后,选手开始抢答为有效,数码显示屏显示抢答时间倒计时和选手号,在最后五秒扬声器发生提示。如果主持人没有按下开始键而选手就抢答视为犯规,数码显示屏显示犯规者的代号,扬声器持续发生。主持人可按键结束,新一轮抢答开始。通过研究并在设计验证后发现,采用单片机技术设计的抢答器与目前常用的抢答器相比,首先,电路连接简单,因为大多数功能单元都通过程序设计在单片机内部,第二,工作性能可靠,抗干扰能力优于目前抢答器。所以本研究是一个实用的工程设计,具有创新性。1.5课题的优点及组成在知识比赛中,特别是做抢答题目的时候,在抢答过程中,为了知道哪一组或哪一位选手先答题,必须要设计一个系统来完成这个任务。如果在抢答中,靠视觉是很难判断出哪组先答题。利用单片机系统来设计抢答器,使以上问题得以解决,即使两组的抢答时间相差几微秒,也可分辨出哪组优先答题。课题中主要介绍了单片机抢答器设计及工作原理,以及它的实际用途。本系统采用AT89S51单片机作为核心。控制系统的四个模块分别为:存储模块、显示模块、声音模块、抢答开关模块。该抢答器系统通过八个个按键输入抢答信号;利用4个七段共阳数码管来完成显示功能。工作时,用按键通过开关电路输入各路的抢答信号,经单片机的处理,输出控制信号,控制4个七段共阳数码管和喇叭工作。在数码管上显示哪一组先答题,从而实现整个抢答过程。2 系统设计2.1 系统的主要功能本系统是借用单片机采用模块化设计的八路抢答器,包括8路抢答按纽、计时显示、提示功能等(根据需要可另设或多设相关功能)、开始与结束控制按钮、时限设定、各种相关显示调控功能等(根据需要也可另设或多设相关功能)。参赛者系统,除享有抢答按纽的权利功能外,还有人性化的提示功能和时间提示功能,也可设定由主控控制在参赛者终端表现的趣味性功能等;主控系统的控制按钮做开始与结束控制,根据活动参赛者的层次,对提前抡答者的行为设定为非法或阻隔,若设有非法抢答控制功能时,在主控处带有公示性显示的非法抡答者的台位号,对抢答限时及回答问题限时设为倒计时,并有显示提示。系统的主要功能模块方框图如图2-1所示。 AT89C51单片机4位七段数码管显示声音电路=8路抢答按键输入复位电路开始、结束按键输入加一、减一按键输入时钟图2-1 系统主要功能模块本系统采用模块化设计的八路抢答器,在抢答比赛中广泛应用,各组分别有一个抢答按钮。一共有8个按键输入,分别对应8路选手的抢答按键。主持人有开始和结束键。在后台主持人可以修改,抢答时间和选手回答问题的时间设置,原始状态下抢答时间为30s,回答问题时间为60s。通过加键和减键修改上述时间,改完后结束键确定。新时间开始有效,主持人按键开始后,选手开始抢答为有效,数码显示屏显示抢答时间倒计时和选手号,在最后五秒扬声器发生提示。如果主持人没有按下开始键而选手就抢答视为犯规,数码显示屏显示犯规者的代号,扬声器持续发生。主持人可按键结束,新一轮抢答开始。单片机是整个抢答器的核心,内部电路设计用汇编语言编写。它完成了时间参数的设定,抢按号码的译码,保存;显示;输出,抢按及答题倒计时功能等。本设计中,有一个共阴的数码管组,四个数码管。其中两个显示时间,一个空位,一个显示抢答号码。主持人依次按下复位键(RESET),开始键后开始抢答。可以抢按:超时数码管显示“FFF”,当抢按超过规定时间或答题超过规定时间后数码管显示“FFF”。若有选手在规定时间内抢按成功,则可以答题,数码管显示抢答时间的同时也显示选手号码。若在按开始键前抢答表示违规,数码管显示“FF”并显示选手号码。2.2 系统需求分析(1)在抢答中,只有开始后抢答才有效,如果在开始抢答前抢答为无效。(2)抢答限定时间和回答问题的时间可以在199s设定。(3)可以显示是哪位选手有效抢答和无效抢答,正确按键后有音乐提示。(4)抢答时间和回答问题时间倒记时显示,时间完后系统自动复位。(5)抢答限定时间内使用锦囊回答时间将加到60s。(6)按键锁定,在有效状态下,按键无效非法。2.3 抢答器的工作流程抢答器的基本工作原理:在抢答竞赛或呼叫时,有多个信号同时或不同时送入主电路中,抢答器内部的寄存器工作,并识别、记录第一个号码,同时内部的定时器开始工作,记录有关时间并产生超时信号。在整个抢答器工作过程中,显示电路、声音电路等还要根据现场的实际情况向外电路输出相应信号。抢答器的工作流程分为:系统复位、正常流程、违例流程等几部分,如图2-2所示,下面分别予以介绍。加载程序运 行行开始开始数码管显示FFF开始抢按时间倒计时开始前有选手抢按显示违例选手号码并伴有语音报警倒计时结束,超时有选手抢按显示FFF显示选手号码,倒计时时间,语音报警,答题,答题时间倒计时正常流程违规流程若超过答题时间,则数码管显示FFF答题完毕根据选手表现,规则由主持人减分图2-2 抢答器工作流程(1) 如果想调节抢答时间或答题时间,按“加一”键或“减一”键进入调节状态,此时会显示现在设定的抢答时间或回答时间值,如想加一秒按一下加1s键,如果想减一秒按一下“减1s”键,时间LED上会显示改变后的时间,调整范围为099s, 0s时再减1s会跳到99,99s时再加1s会变到0s。(2)主持人按抢答开始键,会有提示音,并立刻进入抢答倒计时(预设30s抢答时间),如有选手抢答,会有提示音,并会显示其号数并立刻进入回答倒计时(预设60s回答时间),不进行抢答查询,所以只有第一个按抢答的选手有效。倒数时间到小于5s会每秒响一下提示音。(3)如倒计时期间,主持人想停止倒计时可以随时按“停止”按键,系统会自动进入准备状态,等待主持人按“抢答开始”进入下次抢答计时。(4)如果主持人未按“抢答开始”键,而有人按了抢答按键,犯规抢答,LED上不断闪烁FF和犯规号数并响个不停,直到按下“停止” 键为止。总而言之,本课题利用AT89C51单片机及外围接口实现的抢答系统设计了抢答器,该抢答器增加了新功能、提高了系统的可靠性、简化了电路结构、节约了成本,是一个实用的工程设计。2.4系统的稳定性2.4.1干扰源干扰就是加在有用信号上的不需要的信号,降低甚至破坏系统的可靠性主要干扰源有:(1)电磁干扰开关的启动、电网电压波动、静电等都可能引起程度不同的尖脉冲电压,造成IC和半导体器件的损坏或误动作另一方面,单片机的控制对象往往是电机等较大功率负载,很多情况下又必须和这些干扰源放在一起这是任何电子系统都会遇到的问题;(2)人为干扰由人为原因直接或间接造成的干扰如负载变化、机械振动、电路虚焊等;(3)其他干扰诸如雷电、温度变化、湿度变化等自然界造成的干扰2.4.2软件抗干扰一个系统由于存在着各种干扰及不稳定因素而出现运行故障可从程序设计方面采取措施解决这一问题如软件滤波技术、软件冗余设计等另外还有软件“看门狗”、程序“跑飞”拦截等等 (1)软件滤波技术所谓软件滤波,就是通过判断干扰信号在有用信号中的比重,提取有用信号,减少干扰信号通常使用的方法有算术平均值法、中值滤波法、防脉冲干扰平均值滤波法、一阶低通滤波法等算术平均值和中值滤波这两种滤波方法不易消除由于脉冲干扰而引起的采样值的偏差,此干扰会计算到结果中对于变化缓慢的数据采集系统,可用一阶低通滤波法 (2)软件“看门狗”通常采用“看门狗”技术使程序脱离“死循环”,目前所使用的5l系列单片机中(如AT89S51S52),有一个定时器T3,称为WDT看门狗监视定时器,这是一个通过软件、硬件结合的重要常用抗干扰技术采用环形中断监视系统用定时器T0监视定时器T1,用定时器Tl监视主程序,主程序监视定时器TO这种环形结构的软件“看门狗”具有良好的抗干扰性能,提高了系统可靠性 (3)设置程序运行标志单片机程序的结构一般都是由一个上电复位初始化程序、一个主程序、几个中断服务程序和若干子程序组成的,5 1系列单片机的RAM区中有一个位寻址区,可以在位寻址区中设立一些标志位,这些标志位分别代表不同的程序模块,一个字节可以对应8个程序模块当某个程序模块正在执行时,对应的标志位置1,不执行时对应的标志位置0,就可以知道当前正在执行的程序是哪一个模块,当标志位的值与正在执行的程序模块不一致时,可以肯定程序出现了“跑飞”,需要尽快进行错误处理,通过进一步的检查还可以知道程序是从哪个模块“飞”过来的2.4.3硬件抗干扰 (1)时钟信号的抗干扰时钟信号是受噪声干扰最敏感的部位,也是CPU对外发射辐射干扰和引起内部干扰的噪声源为了避免时钟信号被干扰,可以采取以下措施:时钟脉冲电路配置时应注意靠近CPU,引线要短而粗;外部时钟源用的芯片VCC与GND之间可接luF左右的去耦电容;在可能的情况下,用地线包围振荡电路,晶体外壳接地;若时钟还做其它芯片的脉冲源,要注意采取隔离和驱动措施 (2)复位电路抗干扰单片机复位端口的干扰主要来自电源和按钮传输线串人的噪声,这有可能导致系统复位,或破坏CPU内的程序状态字的某些位的状态,对控制产生不良影响目前单片机多数采用上电自动复位和按键手动复位结合的复位方法,对一般的干扰具有较好的抑制作用,如果在复位端并联有00l一019F的高频电容,可提高对串入噪声的抑制能力 (3)电源抗干扰电源是整个系统的命脉,电源性能的优劣对系统的可靠运行有着很大的影响电源采用隔离变压器接入电网,可以防止电网的干扰侵入系统;通常可采用直流集成稳压电源 (4) IO端口抗干扰在IO上适当安装上拉电阻可以提高总线信号传输的可靠性,减少外围设备对主机单元的干扰上拉电阻一方面可以提高端口带负载能力,另一方面也可提高端口的抗电磁干扰能力,当端口总线处于高阻状态时是处于悬空状态,比较容易受外界的电磁干扰,干扰信息很容易通过数据总线进入CPU,引入虚假的程序指令同时,加了上拉电阻后,还可以抑制静电干扰2.5器件的选择微控制器选用ATMAL公司生产的AT89C51,该芯片货源充足,并且价格也比较便宜。如表1所示。表1 器件选型方案的详细清单器件名称规格型号数量微处理器AT89C511芯片74LS04174HC301电阻3WTT10K8电容20PF3晶振12MHZ1按钮117段数码管7SEG-MPX4-CA4扬声器12.5.1 AT89C51的功能及简介AT89C51单片机是ATMAL公司89系列单片机的一种8位Flash单片机。它最大特点是片内含有Flash存储器,用途十分广泛,特别是在生产便携式商品,手提式仪器等方面,有着十分广泛的应用6。AT89C51单片机内部主要有以下部件:8031CPU、振荡电路、总线控制部件、中断控制部件、片内Flash存储器、片内RAM、并行I/O接口、定时器和串行I/O接口AT89C51是89系列单片机的标准型,它是与MSC-51系列单片机兼容的。在内部含有4KB或8KB可重复编程的Flash存储器,可进行1000次擦写操作。全静态工作为0-24MHZ,有3级程序锁存器,内部含有128-256字节的RAM,有32条可编程I/O口线,2-3个16位定时/计数器,6-8个中断源,通用的串行接口,低电压空闲及电源下降方式。AT89C51单片机内部由CPU、4KB的FPEROM ,128B的RAM,两个16位的定时/计数器T0和T1,4个8位的I/O端P0、P1、P2、P3等组成。单片微机内部最核心的部分是CPU。CPU主要功能是产生各种控制信号,控制存储器、输入/输出端口的数据传输、数据的算术运算、逻辑运算以及位操作处理等,CPU按其功能可分为运算器和控制器两部分。控制器由程序计数器PC、指令储存器、指令译码器、实时控制与条件转移逻辑电路等组成。它的功能是对来自存储器中的指令进行译码,通过实时控制电路,在规定的时刻发出各种操作所需的内部和外部的控制信号,使各部分协调工作,完成指令所规定的操作。运算器由算术逻辑器部件ALU、累加器ACC、暂存器、程序状态字寄存器PSW,BCD码运算调整电路等组成。 为了提高数据处理和位操作功能,片内增加了一个通用寄存器B和一些专用寄存器,还增加了位处理逻辑电路的功能。AT89C51的主要性能包括:AT89C51与MCS51控制器系列产品兼容,片内有4K可在线重复编程闪速电擦除存储器(Flash Memory),存储器可循环写入/擦除1000次;存储器数据保存时间可达10年;工作电压范围宽:Vcc可由2.7V到6V;全静态工作可由0Hz到16MHz;程序存储器具有3级锁存保护;128*8位内部RAM;32条可编程I/O线;两个16位定时器/计数器;中断结构具有5个中断源和2个中断优先级;可编程全双工串行通信;空闲状态维持低功耗和掉电状态保存存储内容。3硬件设计3.1抢答器电路框图如图3-1所示为电路框图。其工作原理为:接通电源后,主持人将开关拨到“清除”状态,抢答器处于禁止状态,编号显示器灭灯,定时器显示设定时间;主持人将开关置,“开始”状态,宣布“开始”抢答器工作。定时器倒计时,扬声器给出声响提示。选手在定时时间内抢答时,抢答器完成:优先判断、编号锁存、编号显示、扬声器提示。当一轮抢答之后,定时器停止、禁止二次抢答、定时器显示剩余时间。如果再次抢答必须由主持人再次操作开始、停止状态开关抢答按扭优先编码电路锁存器译码电路译码显示主持人控制开关控制电路报警电路秒脉冲产生电路定时电路译码电路显示电路图3-1 电路框图 图3-1电路框图3.2单元电路设计3.2.1抢答器电路参考电路如图3-2所示。该电路完成两个功能:一是分辨出选手按键的先后,并锁存优先抢答者的编号,同时译码显示电路显示编号;二是禁止其他选手按键操作无效。如有再次抢答需由主持人将S开关重新置,“清除”然后再进行下一次抢答。 图3-2抢答电路的接口电路3.2.2时序控制电路设计时序控制电路是抢答器设计的关键,它要完成以下功能:(1)主持人将控制开关拨到开始位置时,扬声器发声,抢答电路和定时电路进人正常抢答工作状态。 (2)当参赛选手按动抢答键时,扬声器发声,抢答电路和定时电路停止工作。3.2.3复位电路的设计外部中断和内部中断并存,单片机硬件复位端,只要持续4个机器周期的高电平即可实现复位,硬件复位后的各状态可知寄存器以及存储器的值都恢复到了初始值,因为本设计中功能中有倒计时时间的记忆功能,所以不能对单片机进行硬件复位,只能用软件复位,软件复位实际上就是当程序执行完之后,将程序通过一条跳转指令让它完成复位。 图3-3复位电路图图3-3中由按键RESET1以及电解电容C3、电阻R1构成按键及上电复位电路。由于单片机是高电平复位,所以当按键RESET1按下时候,单片机的9脚RESET管脚处于高电平,此时单片机处于复位状态。当上电后,由于电容的缓慢充电,单片机的9脚电压逐步由高向低转化,经过一段时间后,单片机的9脚处于稳定的低电平状态,此时单片机上电复位完毕,系统程序从0000H开始执行。值得注意的是,在设计当中使用到了硬件复位和软件复位两种功能,由上面的硬件复位后的各状态可知寄存器及存储器的值都恢复到了初始值,而前面的功能介绍中提到了倒计时时间的记忆功能,该功能的实现的前提条件就是不能对单片机进行硬件复位,所以设定了软复位功能。软复位实际上就是当程序执行完毕之后,将程序指针通过一条跳转指令让它跳转到程序执行的起始地址。3.2.4时钟振荡电路 时钟震荡电路单片机必须在AT89C51的驱动下才能工作,在单片机内部有一个时钟震荡电路,只需要外接一个振荡器就能产生一定的时钟信号送到单片机内部的各个单元,时钟震荡电路如图3-4所示。 图3-4时钟震荡电路图一般选用石英晶体振荡器。此电路在加电大约延迟10ms后振荡器起振,在XTAL2引脚产生幅度为3V左右的正弦波时钟信号,其振荡频率主要由石英晶振的频率确定。电路中两个电容 C1,C2的作用有两个:一是帮助振荡器起振;二是对振荡器的频率进行微调。C1,C2的典型值为20PF。单片机在工作时,由内部振荡器产生或由外直接输入的送至内部控制逻辑单元的时钟信号的周期称为时钟周期。其大小是时钟信号频率的倒数,常用fosc表示。图中时钟频率为12MHz,即fosc=12MHz,则时钟周期为1/12s。3.2.5报警电路设计报警电路用于报警,当遇到报警信号时,发出警报。一般喇叭是一种电感性图3-5报警电路图。8951驱动喇叭的信号为各种频率的脉冲。因此,最简单的喇叭驱动方式就是利用达林顿晶体管,或者以两个常用的小晶体管连接成达林顿架势。在右图中电阻R为限流电阻,在此利用晶体管的高电流增益,以达到电路快速饱和的目的。不过,如果要由P0输出到此电路,还需要连接一个10K的上拉电阻。选手在设定的时间内抢答时,实现:优先判断、编号锁存、编号显示、扬声器提示。当一轮抢答之后,定时器停止、禁止二次抢答、定时器显示剩余时间。如果再次抢答必须由主持人再次作清除和开始状态开关。图3-5报警电路图 3.2.6显示电路的设计显示功能与硬件关系极大,当硬件固定后,如何在不引起操作者误解的前提下提供尽可能丰富的信息,全靠软件来解决。在这里我们使用的是七段数码管显示,通常在显示上我们采用的方法一般包括两种:一种是静态显示,一种是动态显示。其中静态显示的特点是显示稳定不闪烁,程序编写简单,但占用端口资源多;动态显示的特点是显示稳定性没静态好,程序编写复杂,但是相对静态显示而言占用端口资源少。在本设计中根据实际情况采用的是动态显示方法。通过查表法,将其在数码管上显示出来,其中P0口为字型码输入端,P2口低3位为字选段输入端。在这里我们通过查表将字型码送给7段数码管显示的数字,4位七段数码管显示电路如图3-6所示。图3-6共阴极数码管图3-6中数码管采用的是4位七段共阴数码管,其中AH段分别接到单片机的P0口,由单片机输出的P0口数据来决定段码值,位选码COM1、COM3、COM4分别接到单片机的P2.0、P2.1、P2.2,由单片机来决定当前该显示的是哪一位。在图中还有八个1K的电阻,连接在P0口上,用作P0口的上拉电阻,保证P0口没有数据输出时候处于高电平状态。3.2.7键盘扫描电路的设计键盘是人与单片机打交道的主要设备。关于键盘硬件电路的设计方法也可以在文献和书籍中找到,配合各种不同的硬件电路,这些书籍中一般也提供了相应的键盘扫描程序。站在系统监控软件设计的立场上来看,仅仅完成键盘扫描,读取当前时刻的键盘状态是不够的,还有不少问题需要妥善解决,否则,人们在操作键盘就容易引起误操作和操作失控现象。在单片机应用中键盘用得最多的形式是独立键盘及矩阵键盘。它们各有自己的特点,其中独立键盘硬件电路简单,而且在程序设计上也不复杂,一般用在对硬件电路要求不高的简单电路中;矩阵键盘与独立键盘有很大区别,首先在硬件电路上它要比独立键盘复杂得多,而且在程序算法上比它要烦琐,但它在节省端口资源上有优势得多,因此它更适合于多按键电路。其次就是消除在按键过程中产生的“毛刺”现象。这里采用最常用的方法,即延时重复扫描法,延时法的原理为:因为“毛刺”脉冲一般持续时间短,约为几ms,而我们按键的时间一般远远大于这个时间,所以当单片机检测到有按键动静后再延时一段时间(这里我们取10ms)后再判断此电平是否保持原状态,如果是则为有效按键,否则无效。 在本文设计中采用了独立键盘的方式,本设计中有8个抢答按键输入,一个开始按键、一个结束按键,此外还有抢答时间调整键、回答时间调整键,加一按键、减一按键各一个。如图3-7所示。图3-7抢答按键在图3-7中8个抢答按键分别接入单片机的P1.0P1.7端口,单片机通过读取P1.0P1.7的值来判断当前输入的是8个抢答按键中的哪一个。抢答时间调整和回答时间调整接到单片机的P3.3和P3.4接口,加一及减一按键接到单片机的P3.5和P3.6接口。图3-8开始和结束按键在图3-8中,开始及结束按键接到单片机的10、11脚,这里用到了单片机10、11脚复合功能中的IO端口功能,单片机通过读取10、11脚的P3.0、P3.1的IO端口值来判断当前是否处于抢答开始状态或抢答结束状态。按键的触点在闭合和断开时均会产生抖动,这时触点的逻辑电平是不稳定的,如不妥善处理,将会引起按键命令的错误执行或重复执行。现在一般均用软件延时的方法来避开抖动阶段,这一延时过程一般大于5ms,例如取10-20ms。如果监控程序中的读键操作安排在主程序(后台程序)或键盘中断(外部中断)子程序中,则该延时子程序便可直接插入读键过程中。如果读键过程安排在定时中断子程序中,就可省去专门的延时子程序,利用两次定时中断的时间间隔来完成抖动处理。4软件设计4.1 软件任务分析软件任务分析和硬件电路设计结合进行,哪些功能由硬件完成,哪些任务由软件完成,在硬件电路设计基本定型后,也就基本上决定下来了。软件任务分析环节是为软件设计做一个总体规划。从软件的功能来看可分为两大类:一类是执行软件,它能完成各种实质性的功能,如测量,计算,显示,打印,输出控制和通信等,另一类是监控软件,它是专门用来协调各执行模块和操作者的关系,在系统软件中充当组织调度角色的软件。这两类软件的设计方法各有特色,执行软件的设计偏重算法效率,与硬件关系密切,千变万化。软件任务分析时,应将各执行模块一一列出,并为每一个执行模块进行功能定义和接口定义(输入输出定义)。在各执行模块进行定义时,将要牵扯到的数据结构和数据类型问题也一并规划好。各执行模块规划好后,就可以监控程序了。首先根据系统功能和键盘设置选择一种最适合的监控程序结构。相对来讲,执行模块任务明确单纯,比较容易编程,而监控程序较易出问题。这如同当一名操作工人比较容易,而当一个厂长就比较难了。软件任务分析的另一个内容是如何安排监控软件和各执行模块。整个系统软件可分为后台程序(背景程序)和前台程序。后台程序指主程序及其调用的子程序,这类程序对实时性要求不是太高,延误几十ms甚至几百ms也没关系,故通常将监控程序(键盘解释程序),显示程序和打印程序等与操作者打交道的程序放在后台程序中执行;而前台程序安排一些实时性要求较高的内容,如定时系统和外部中断(如掉电中断)。也可以将全部程序均安排在前台,后台程序为“使系统进入睡眠状态”,以利于系统节电和抗干扰。4.2 程序流程图在本设计中包括了以下主要的程序:主程序,查询程序,非法抢答程序,抢答时间调整程序,回答时间调整程序,倒计时程序,正常抢答处理程序,犯规处理程序,显示及发声程序。主流程图如4-1所示:初始化显示FFF开始键加一键减一键去抖动调整抢答时间回答时间非法抢答处理显示犯规正常抢答 显示抢答号并倒计时 Y Y Y图4-1 程序设计流程图5系统的调试系统调试包括硬件调试和软件调试。硬件调试的任务是排除系统的硬件电路故障,包括设计性错误和工艺性故障。软件调试时利用开发工具进行在线仿真调试,除发现和解决程序错误外,也可以发现硬件故障。5.1硬件调试 单片机应用系统的硬件调试和软件调试时分不开的,许多硬件故障是在调试软件时发现的,但通常是先排除系统中明显的硬件故障后,再和软件结合起来调试。(1)常见的硬件故障 逻辑错误。样机硬件的逻辑错误时由于设计错误或加工过程中的工艺性错误所造成的,包括错线,开路和短路等几种,其中短路时最常见的故障。 元器件失效。元器件失效的原因有两个方面:一是器件本身已经损坏或性能不符合要求;二是由于组装错误造成的元器件失效,如点解电容,二极管的极性错误或集成块安装方向错误等。 可靠性差。引起系统不可靠的因素很多,如接地插件接触不良会造成系统时好时坏,内部和外部的干扰,电源纹波系数过大或器件负载过大等造成逻辑电平不稳定,另外走线和布局的不合理等也会引起系统的可靠性差。 电源故障。若样机中存在电源故障,则加电后将造成器件损坏。电源故障包括电压值不符合设计要求,电源引线和插座不对应,电源功率不足和负载能力差等。(2)硬件调试方法 脱机调试。脱机调试是在样机加电之前,先用万用表等工具,根据硬件电气原理图和装配图,子线检查样机线路的正确性,并核对元器件型号,规格和安装是否符合要求。特别注意电源的走线,防止电源之间的短路或极性错误,重点检查系统的总线或其他信号线之间是否存在相互的短路。样机所用的电源,事先必须单独调试后才能加到系统中。在不插芯片的情况下,加电检查各插件上引脚的电位,子线测量个点电位是否正常,尤其应注意单片机插座上的各点电位是否正常。 联机调试。通过脱机调试可排除一些明显的硬件故障,有些硬件故障需要通过联机调试才能发现和排除。通电后,执行读写指令,对用户样机的存储器,I/O端口进行读写和逻辑检查等操作,用示波器等设备观察波形(如输出波形,读/写控制信号,地址数据波形和有关控制电平),通过对哦性的观察分析,发现和排除故障。5.2软件调试 软件调试方法与选用的软件结构和程序设计技术有关,如果采用模块设计技术,则逐个模块调试好以后,再进行系统程序总调试;如果采用实时多任务操作系统,一般是逐个任务进行调试。 对于模块结构程序,要对子程序逐个进行调试。调试子程序时,一定要符合入口条件和出口条件,调试手段可采用单步运行方式和断点运行方式,通过检查用户系统CPU的现场,RAM的内容和I/O口的状态,检测程序执行结果是否符合设计要求。通过检测,可以发现程序中的死循环错误,机器代码错误和转移地址错误,同时也可以发现用户系统中的硬件故障,软件算法和硬件设计错误,在调试过程中不断调整用户系统的软件和硬件,完成每个程序模块的调试。 每个模块通过后,可以联合各功能模块进行整体程序综合调试。在这一阶段如果发生故障,可以分析子程序在运行时是否破坏现场,缓冲单元是否发生冲突,零位的建立和清除在设计上是否失误,堆栈区域是否溢出,或输入设备的状态时否正常等。等用户系统是在开发系统的监控程序选运行,还要考虑用户缓冲单元是否和监控程序的工作单元发生冲突。 单步运行只能验证程序正确与否,而不能确定定时精度,CPU的使用响应等问题,所以单步和断点调试后,还应进行连续调试。除了观察稳定性之外,还要观察用户系统的操作是否符合原始设计要求,以及安排的用户操作是否合理等,必要时还要做适当修正。 实时多任务操作系统的调试方法与上述方法相似,只是实时多任务操作系统的应用程序是有若干个任务程序组成的们一般是逐个任务进行调试。在调试某一个任务时,同时也调试相关的子程序,中断服务程序和一些操作系统的程序。各个任务调试好以后,再使各个任务同时运行。如果操作系统中没有错误,一般情况下系统就能正常运转。5.3系统联调系统联调是指让用户系统的软件在其硬件上实际运行,进行软、硬件联合调试,从中发现硬件故障或软,硬件设计错误。这是对用户系统检验的重要一关。系统联调主要解决一下问题: (1)软,硬件能否按预定要求配合工作,如果不能,那么问题出在哪里?如何解决? (2)系统运行中是否有潜在的设计时难以难以预料的错误,如硬件延时过长造成工作时序不符合要求,布线不合理造成有信号串扰等: (3)系统的动态性能指标(包括精度,速度参数)是否满足设计要求。 系统联调时,首先采用单步,断电,连续运行方式调试与硬件相关的各程序段既可以检验这些用户程序段的正确性,又可以在各功能独立的情况下,检验软、硬件的配合情况。然后,将软、硬件按系统工作要求进行综合运行,采用全速断点、连续运行方式进行总调试,以解决在系统总体运行的情况下软、硬件的协调与提高系统动态性能。在具体操作中用户系统在开发系统环境的下,先借用仿真器的CPU,存储器等资源进行工作。若发现问题,按上述软、硬件调试方法准确定位错误,分析错误原因,找出解决办法。用户系统调试完后,将用户程序固化带用户系统的程序存储器中,再借用仿真器CPU是用户系统运行。若无问题,则用户系统插上单片机即可以正确工作。6系统的仿真本设计通过利用Proteus仿真,将所编写的程序用keil4软件编译,以下是调试过程及功能说明截图。通电后,初始状态如图6-1所示:图6-1 通电后初始状态电路图如果主持人没有按下抢答键而此时有选手抢答表示违规抢答,此时会显示违规抢答选手的号码,如图6-2所示:图6-2 违规抢答的选手主持人按下开始按键之后有30秒的时间来抢答问题,显示的时间为剩余抢答时间,如图6-3所示:图6-3抢答倒计时电路图当主持人按下开始按钮时,各选手可以开始抢答并且每位选手有60秒钟的答题时间,抢答成功会显示抢答选手的号
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 服务礼仪样板课件
- 服务类模板课件
- 房屋开发模板课件
- 服务发展课件
- 法务产品展示课件
- 房屋安全管理课件
- 法庭旁听模板课件
- 飞天凌空模板课件
- 事业单位文秘岗2026面试经典考题题库及答案
- 采购部门联系函商讨产品质量问题(6篇)范文
- 2026年中级注册安全工程师《安全生产管理》真题及答案
- 2026年宠物食品用品批发行业发展趋势及投资前景报告及未来五至十年新兴市场与增量突破
- 2026年6西格玛绿带试题及答案
- 2026师德师风工作自查报告及自查总结(3篇)
- 2026年江苏省南通市海门区东洲国际学校中考数学模拟试卷(A卷)(含答案)
- 肾毒性药物I期肾功能监测方案
- 精益医疗课件
- 外科腹腔镜手术并发症护理要点
- 全国智慧教育知识竞赛试题及答案
- 学校维修资金管理办法
- 加油站防雷安全隐患排查制度
评论
0/150
提交评论