毕业设计论文基于单片机的智能抢答器设计.doc
郑州科技学院专科毕业设计(论文) 题 目 _八路智能抢答器_学生姓名 专业班级 学 号 所 在 系 指导教师 完成时间 年 月 日 智能数字抢答器摘 要随着科学技术的不断发展,促使人们学科学、学技术、学知识的手段多种多样。抢答器作为一种工具,已广泛应用于各种智力和知识竞赛场合。但抢答器的使用频率较低,且有的要么制作复杂,要么可靠性低,减少兴致。做为一个单位若专购一台抢答器虽然在经济上可以承受,但每年使用的次数极少,往往因长期存放使(电子器件的)抢答器损坏,再购置的麻烦和及时性就会影响活动的开展,因此设计了本抢答器。本设计是以六路抢答为基本理念。考虑到依需设定限时回答的功能,利用AT89C51单片机及外围接口实现的抢答系统,利用单片机的定时器/计数器定时和记数的原理,将软、硬件有机地结合起来,使得系统能够正确地进行计时,同时使数码管能够正确地显示时间。用开关做键盘输出,扬声器发生提示。同时系统能够实现:在抢答中,只有开始后抢答才有效,如果在开始抢答前抢答为无效;抢答限定时间和回答问题的时间可在1-99s设定;可以显示是哪位选手有效抢答和无效抢答,正确按键后有音乐提示;抢答时间和回答问题时间倒记时显示,满时后系统计时自动复位及主控强制复位;按键锁定,在有效状态下,按键无效非法。关键词: AT89S51/LED数码管/声光提示/计时 Responder Smart DesignABSTRACT With the continuous development of science and technology, encourage people to study science and technical studies and varied means of knowledge.Responder as a tool has been widely used in various occasions intelligence and knowledge competitions.Responder frequency of use, but low, and some or production complex, or low reliability and reduce interest.Specifically as a unit if purchased a Responder While economically affordable, but very few number of times each year, often due to long-term storage (electronic devices) Responder damage, then the trouble and time of the acquisition will affect theactivities carried out, so the design of this Responder. The design is based on six-way Responder as the basic concept.Taking into account the need to set the time limit to answer according to the function, using AT89C51 microcontroller and external interface of the answer in the system, using the microcontroller timer / counter timing and counting in principle, the hardware and software together organically, making the system can correctlyto carry out time, while making the digital display the time correctly.The keyboard to do with the switch output, the speaker happened tips.At the same time the system can be achieved: In the Responder, the Responder is valid only after the start, if the answer in before the answer in the beginning to be invalid; answer in a limited time and the time to answer questions set in 1-99s; can show who is calling players and effective answer inInvalid answer in the correct button prompt after the music; answer in time and the time to answer questions countdown show full time after the system automatically reset the time and the master force reduction; key lock, in the effective state, the button is not illegal.KEY WORDS AT89S51,LED digital control ,sound and light tips ,Time目 录 摘要 . ABSTRACT.第一章 前 言。1 1.1抢答器的发展和应用领域。2 1.2 设计思路。31.3 设计要点第二章 各模块的选择和论证32.1抢答器显示模块选择32.2 控制器选择42.3 键盘选择52.4 时钟频率电路的设计72.5 复位电路的设计72.6 报警电路82.7 AT89s51单片机简单概述82.7.1 AT89s51单片机的结构82.7.2 AT89s51单片机管脚说明.9第三章 模块最终方案的设计123.1总体设计思路123.2 功能介绍123.3软件的详细设计123.4.主程序的设计133.5显示子程序的设计33.6定时器T0、T1中断服务程序的设计33.7抢答程序的设计。第四章 系统调试与仿真154.1 软件调试问题分析154.2 通过Keil编译程序.4.2 Proteus 仿真16第五章 系统的焊接与调试175.1 排版焊接175.2 调试17第六章 总结与展望186.1 论文总结186.2 设计展望19致谢20参考文献21 附 录22附 录 一 主程序清单22附 录 二 八路智能抢答器原理图32 附 录 三 实做图片.。附录四 元器件清单33第一章 前 言随着通信技术的高速发展,以及技术不断的更新,社会对通信方面的人才能力要求越来越高,为了更好的适应社会,使自己能搞在未来的竞争中处于优势,我们不仅要有丰富的通信理论知识,一定的动手实践能力使必不可少的。本次综合课程设计,是理论联系实践的一个重要环节,不但巩固了前面所学的基础理论知识,更重要的是把各科知识联系起来,以达到融会贯通,增强自己解决问题、分析问题的能力培养应用所学专业理论知识的能力,进行产品的实际设计与制作的能力,缩小理论与实践的差别,并学习电子产品的整个设计、分析与制作流程。达到巩固基础、注重设计、培养技能、追求创新、走向实用的目的。智力竞赛是一种能锻炼人的头脑开发的IQ的一种大众化游戏,也起到娱乐的作用。现在智力竞赛越来越被多数人喜欢和娱乐,像中央卫视的三星智力快车、金苹果、幸运50等等多档智力竞赛节目都拥有大批的忠实观众,而且国内外各地电视台、工厂、学校等单位也常常举办类似的智力竞赛活动,然而智力竞赛抢答器是必要设备。单片机作为计算机的一个重要分支,其应用范围很广,发展也很快,它已成为在现代电子技术、计算机应用、网络、通信、自动控制与计量测试、数据采集与信号处理等技术中日益普及的一项新兴技术,应用范围十分广泛。对于计算机专业的学生来说,即使暂时没有从事单片机的应用与开发,学习单片机也有很重要的意义。学习它,不仅为将来可能从事该方面的开发打下基础,另一方面,由于单片机作为微型计算机的一个种类,麻雀虽小,五脏俱全,可以把它当作微型计算机的一个简化模型来看待,学习单片机可以加深对微型计算机工作原理的理解,更加清楚计算机的脉络。同时,提供了一个实际应用手段。21世纪,是一个信息技术飞速发展的时代,智力竞赛是一种形式比较活泼的教育方式,是人们休闲娱乐生活的一部分。这些竞赛一方面充实了人们的娱乐生活,另一方面也提高了人们努力汲取相关领域的知识的兴趣。智力竞赛,也就是几个参赛选手之间在规定的时间,规定的地点相互竞争的比赛。抢答是各种竞赛常用的一种形式。在抢答赛中,往往要有主持人宣布抢答的开始,还要确定是哪个选手抢到了答题权,具体答题的时间有时也要设定。这些如果仅凭主持人的主观判断,很容易出现误判的情况。因此,在竞赛中,抢答器就扮演了一个非常重要的角色。1.1八路扫描式抢答器的概述本文介绍的八路数显抢答器具有电路简单、成本较低、操作方便、灵敏可靠等优点,经使用效果良好,具有较高的推广价值。比赛前,将参赛选手从1至8编号,主持人按一下开始键后,抢答开始。此后,其中一个选手最先按下抢答键,数码管即显示该选手的编号并锁定,同时发出清脆的“嘀”声。以后,按下任何一路抢答键均不起反映。只有主持人再次按动启动键后,才能进行下一次抢答该电路由直流稳压电源、抢答器、超时报警与电子计分四部分组成。1.3系统主要功能 每名选手有一个抢答按钮,按钮的编号与选手的编号相对应,抢答器具有第一个抢答信号的鉴别和数据锁存、显示的功能。抢答开始后,若有选手按抢答按钮,声光提示,并在数码管上显示相应编号。同时,电路应具备自锁功能,禁止其他选手再抢答,优先抢答选手的编号一直保持到主持人将系统清0为止。抢答器具有定时抢答的功能。一次抢答的时间由主持人设定,在主持人按下开始抢答按键后,定时器立即进行减计时,并在显示器上显示,同时扬声器发出短暂声响,声响时间持续0.5s左右。选手在设定的时间内进行抢答,抢答有效,减计时停止工作,转向回答减计时,显示器显示选手编号和回答减计时的时间,此后选手可要求使用“锦囊包”,使用“锦囊包”后,回答减计时重新计时;使选手有充裕的时间更正确的回答。第二章 各模块的选择和论证2.1抢答器显示模块选择显示模块主要是显示抢答的时间,组别号码等。考虑有以下两种显示方案。方案一:使用液晶屏显示时间。液晶显示屏(LCD)具有轻薄短小、低耗电量、无辐射危险,平面直角显示以及影像稳定不闪烁等优势,可视面积大,画面效果好,分辨率高,抗干扰能力强的特点。但由于只需要显示时间和转向、相数这样的数字,信息量比较少,且由于液晶是以点阵的模式显示各种符号,需要利用控制芯片创建字符库,编程工作量大,控制器的资源占用较多,其成本也偏高。在使用时,不能有静电干扰,否则易烧坏液晶显示芯片,不易维护。方案二:在使用传统的数码管显示。数码管具有:低能耗、低损耗、低压、寿命长、耐老化、防晒、防潮、防火、防高(低)温,对外界环境要求低,易于维护,同时其精度高,称量快,精确可靠,操作简单。数码显示是采用BCD编码显示数字,程序编译容易,资源占用较少。根据以上的论述,我选择采用方案二。显示功能与硬件关系极大,当硬件固定后,如何在不引起操作者误解的前提下提供尽可能丰富的信息,全靠软件来解决。在这里我们使用的是七段数码管显示,通常在显示上我们采用的方法一般包括两种:一种是静态显示,一种是动态显示。其中静态显示的特点是显示稳定不闪烁,程序编写简单,但占用端口资源多;动态显示的特点是:显示稳定性没静态好,程序编写复杂,但是相对静态显示而言占用端口资源少。在本设计中根据实际情况采用的是动态显示方法。 图 2-1 4位七段数码管上图中数码管采用的是4位一体七段共阴极数码管,其应用简单、可靠性高、成本低,作为显示输出。连接时段选信号接在P0口的P0.0P0.6七个I/O口上,P1口是准双向I/O接口在输出驱动部分具有驱动4个TTL负载的能力,即输出电流不大于400A,所以在接电阻时选择接510限流电阻。而在位选方面采用单片机P2口的P2.0P2.2三个I/O口作为位选信号的输出口。2.2 控制器选择控制器主要用于对显示、抢答、声光、计时等模块进行控制。控制器的选择有以下两钟方案。方案一:采用FPGA(现场可编程门列阵)作为系统的控制器。FPGA可以实现各种复杂的逻辑功能,规模大,密度高,它将所有器件集成在一块芯片上,减小了体积,提高了稳定性,并且可以应用EDA软件仿真、调试,易于进行功能扩展。FPGA采用并行的输入输出方式,提高了系统的处理速度,适合作为大规模实时系统的控制核心。但由于本设计对数据处理的速度要求不高,FPGA的高速处理的优势得不到充分体现,并且由于其集成度高,使其成本偏高,同时由于芯片的引脚较多,实物硬件电路板布线复杂,加重了电路设计和实际焊接的工作。方案二:采用89s51作为系统控制器的CPU方案。单片机算术运算功能强,软件编程灵活、自由度大,可以用软件编程实现各种算法和逻辑控制,并且由于其功耗低、体积小、技术成熟和成本低等优点,使其在各个领域应用广泛。基于以上分析,我选择采用方案二2.3 键盘选择键盘是单片机不可缺少的输入设备,是实现人机对话的纽带。键盘按结构形式可以分为非编码键盘和编码键盘,前者用软件方法产生键码,而后者则用硬件方法来产生键码。在单片机中使用的都是非编码键盘,因为非编码键盘结构简单,成本低廉,非编码键盘的类型很多,常用的有独立式键盘,行列式键盘等。独立式键盘键盘接口中使用多少根I/O线,键盘中就有几个按键,键盘接口使用了8根I/O口线,该键盘就有8个按键,这种类型的键盘,其按键比较少,且键盘中各按键的工作互不干扰。因此可以根据实际需要对键盘中的按键灵活的编码。如图2-2。最简单的编码方式就是根据I/O输入口所直接反映的相应按键,按下的状态进行编码,称按键直接状态码,对于这样编码的独立式键盘,CPU可以通过直接读取I/O口的状态来获取按键的直接状态编码值,根据这个值直接进行按键识别,这样形式的键盘结构简单,按键识别容易。独立式键盘的缺点是需要占用比较多的I/O口线,当单片机应用系统键盘中需要的按键比较少或I/O口线比较富余时,可以采用这样类型的键盘。P112345678 图2-2独立键盘2.4晶振电路的设计 MSC-51单片机的定时控制功能是用时钟电路和振荡器完成的,而根据硬件电路的不同,连接方式分为内部时钟方式和外部时钟方式。本设计中采用内部时钟方式。 单片机内部有一个反相放大器,XTAL1、XTAL2分别为反相放大器的输入端和输出端,外接定时反馈元件组成振荡器(内部时钟方式),产生时钟送至单片机内部各元件。时钟频率越高,单片机控制器的控制节拍就越快,运算速度也就越快。 一般来说单片机内部有一个带反馈的线性反相放大器,外界晶振(或接陶瓷振荡器)和电容就可组成振荡器,如图2-5所示。加电以后延时一段时间(约10ms)振荡器产生时钟,不受软件控制,图中Y1为晶振,震荡产生的时钟频率主要由Y1确定。电容C1,C2的作用有两个:一是帮助振荡器起振,二是对振荡器的频率起微调作用,典型值为30pF。图中时钟频率为12MHz; 图2-5晶振电路2.5复位电路的设计 复位电路如图2-6所示: 图 2-6复位电路原理图该复位电路采用上电自动复位和手动复位两种复位方式,图中网络标号所指9连接到单片机的复位引脚。要实现复位只需在,51系列单片机的RESET引脚上加上5ms的高电平就可以了。上电复位是利用电容的充电来实现的,即上电瞬间RESET端的电位与vcc相同,随着电容上储能增加,电容电压也逐渐增大,充电电流减小,RESET端的电位。这样就会建立一个脉冲电压,调节电容与电阻的大小可对脉冲的持续时间进行调节。通常若采用12MHz的晶振时,复位元件参数为10F的电解电容和10k的电阻。按钮复位电路是通过按下复位按钮时,电源对RESET端维持两个机器周期的高电平实现复位的。2.6报警电路我们知道,声音的频谱范围约在几十到几千赫兹7,若能利用程序来控制单片机某个口线的“高”电平或低电平,则在该口线上就能产生一定频率的矩形波,接上喇叭就能发出一定频率的声音,若再利用延时程序控制“高”“低”电平的持续时间,就能改变输出频率,从而改变音调,使喇叭发出不同的声音。 图2-7发声电路2.7 89s51单片机简单概述 2.7.1 89s51单片机的结构AT89s51是具有MCS-51内核、片内带有4KB的flash ROM的单片机,图2-7.1为AT89s51基本结构示意图 图2-7.1 AT89s51基本结构图从图中可以看出,单片机有一条内部总线,各个功能模块都挂在这条总线上,通过内部总线传送数据信息和控制信息。2.7.2AT89s51管脚说明 图2-7.2AT89s51管脚图AT89s51单片机采用40脚双列直插式的DIP40封装,还提供较小尺寸表面封装形式的PQFP/TQFP44,其引脚排列如图2-7.2所示。为使结构更加紧凑,单片机的许多引脚具有双重功能。 电源: VCC - 芯片电源,接+5V; VSS - 接地端; 时钟:XTAL1、XTAL2 - 晶体振荡电路反相输入端和输出端。 控制线:控制线共有4根, ALE/PROG:地址锁存允许(1/6foc)/片内EPROM编程脉冲 ALE功能:用来锁存P0口送出的低8位地址 PROG功能:片内有EPROM的芯片,在EPROM编程期间,此引脚输入编程脉冲。 PSEN:外ROM读选通信号。 RST/VPD:复位/备用电源。 RST(Reset)功能:复位信号输入端。 VPD功能:在Vcc掉电情况下,接备用电源。 EA/Vpp:内外ROM选择/片内EPROM编程电源。 EA功能:内外ROM选择端。 Vpp功能:片内有EPROM的芯片,在EPROM编程期间,施加编程电源Vpp。 I/O线 89s51共有4个8位并行I/O端口:P0、P1、P2、P3口,共32个引脚。P3口还具有第二功能,用于特殊信号输入输出和控制信号(属控制总线)。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:外RAM写选通信号输出端; P3.7 RD:外RAM读选通信号输出端。P3口也可作为AT89c51的一些特殊功能口,如下表所示表2-7.2 P3口的第二功能表端口引脚(DIP40封装)第二功能P3.010RXD(串行输入口)P3.111TXD(串行输出口)P3.212INT0(外部中断0输入)P3.313INT1(外部中断1输入)P3.414T0(定时/计数器0的外部计数输入)P3.515T1(定时/计数器1的外部计数输入)P3.616WR(外部数据存储器写脉冲输出)P3.717RD(外部数据存储器读脉冲输出)第三章模块最终方案的设计3.1总体设计思路主控制器模块:采用AT89s51单片机控制抢答器显示模块:4位共阴及数码管电源方案的选择:采用5V电源供电抢答器键盘模块:独立式键3.2功能介绍1、如果想调节抢答时间或答题时间,按"抢答时间调节"键或"答题时间调节"键进入调节状态,此时会显示现在设定的抢答时间或回答时间值,如想加一秒按一下"加1s"键,如果想减一秒按一下"-1s"键,时间LED上会显示改变后的时间,调整范围为0s99s, 0s时再减1s会跳到99,99s时再加1s会变到0s。 2、主持人按"抢答开始"键,会有提示音,并立刻进入抢答倒计时(预设30s抢答时间),如有选手抢答,会有提示音,并会显示其号数并立刻进入回答倒计时(预设60s抢答时间),不进行抢答查询,所以只有第一个按抢答的选手有效。倒数时间到小于5s会每秒响一下提示音。 3、如倒计时期间,主持人想停止倒计时可以随时按"停止"按键,系统会自动进入准备状态,等待主持人按"抢答开始"进入下次抢答计时。 4、如果主持人未按"抢答开始"键,而有人按了抢答按键,犯规抢答,LED上不断闪烁FF和犯规号数并响个不停,直到按下"停止" 键为止。 5、P3.0为开始抢答,P3.1为停止,p1.0-p1.7为八路抢答输入 数码管段选P0口,位选P2口低3位,蜂鸣器输出为P3.6口。P3.2抢答时间调整结,P3.3回答时间调整,P3.4为时间加1调整,P3.5为时间减1调整3.3主程序的设计 此程序的及时采用定时器T0和T1中断完成,其余状态循环调用显示子程序。系统主程序流程图如图3-1所示。调用键盘扫描程序主程序开始各控制单元赋初值初始化调用显示程序调用键值处理程序 图3.1主程序流程图3.2 显示子程序的设计由于采用软件动态扫描实现数据显示,显示用十进制BCD码的数据对应段码存放在ROM表中。显示时,先取出70H75H某一地址中的数据,然后查得对应的显示段码从P0口输出。P2口将对应的数码管选中,就能显示该地址单元的数据值。3.3定时器T0、T1中断服务程序的设计倒计时结束否定时器TO用于响铃程序,定时器T1用于计时程序。当答题剩余5秒钟时P3.6口不断取反使蜂鸣器发出一定频率的声音,提示选手。恢复初始值并报警开中断、修改计数单元置计数初值报警设备到1秒否关中断、恢复定时初值定时中断服务程序开始中断返回修改倒计时单元 图3.2中断程序流程图3.7抢答处理程序的设计当有选手第一个按下抢答器按扭时数码管显示选手号码,开始倒计时,并锁定抢答。当在此选手之后再有选手按下按扭时无效,数码管不变。设计的抢答器的程序采用的是汇编程序设计,汇编语言来编写程序,程序的各个部分除了必要的信息交流外彼此之间相互独立。这种结构化方式可使程序层次清晰,便于使用、维护以及调试。汇编语言是以函数形式提供给用户的,这些函数可方便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。虽然汇编语言也是强类型语言,但它的语法比较灵活,允许程序编写者有较大的自由度。本次设计的主程序中包括时钟设计程序,定时器中断子程序,LED显示程序以及按键控制子程序。=正常抢答处理程序=TRUE1: ACALL BARKMOV A,R2MOV R6,A;MOV R3,#01HCLR OK;AJMP COUNTTRUE2:ACALL BARKMOV A,R2MOV R6,AMOV R3,#02HCLR OKAJMP COUNTTRUE3:ACALL BARKMOV A,R2MOV R6,AMOV R3,#03HCLR OKAJMP COUNTTRUE4:ACALL BARKMOV A,R2MOV R6,AMOV R3,#04HCLR OKAJMP COUNTTRUE5:ACALL BARK MOV A,R2MOV R6,AMOV R3,#05HCLR OKAJMP COUNTTRUE6: ACALL BARK MOV A,R2MOV R6,AMOV R3,#06HCLR OKAJMP COUNTTRUE7:ACALL BARK MOV A,R2MOV R6,AMOV R3,#07HCLR OKAJMP COUNTTRUE8:ACALL BARK MOV A,R2MOV R6,AMOV R3,#08HCLR OKAJMP COUNT部分程序附录第四章 系统调试与仿真系统调试包括硬件调试和软件调试,而且两者是密不可分的。我们设计好的硬件电路和软件程序,只有经过联合调试,才能验证其正确性;软硬件的配人情况以及是否达到设计任务的要求,也只有经过调试,才能发现问题并加以解决、完善,最终开发成实用产品。硬件调试分单元电路调试和联机调试,单元电路试验在硬件电路设计时已经进行,这里的调试只是将其制成印刷电路板后试验电路是否正确,并排除一些加工工艺性错误(如错线、开路、短路等)。这种调试可单独模拟进行,也可通过开发装置由软件配合进行,硬件联机调试则必须在系统软件的配合下进行。软件调试一般包括分块调试和联机调试两个阶段。程序的分块调试一般在单片机开发装置上进行,可根据所调程序功能块的入口参量初值编制一个特殊的程序段,并连同被调程序功能块一起在开发装置上运行;也可配合对应硬件电路单独运行某程序功能块,然后检查是否正确,如果执行结果与预想的不一致,可以通过单步运行或设置断点的方法,查出原因并加以改正,直到运行结果正确为止。这时该 程序功能块已调试完毕,可去掉附加程序段。其它程序功能块可按此法进行调试。程序联机调试就是将已调试好的各程序功能块按总体结构联成一个完整程序,在所研制的硬件电路上运行。从而试验程序整体运行的完整性、正确性和与硬件电路的配合情况。在联调中可能会有某些支路上的程序、功能块因受条件制约而得不到相应的输入参数,这时,调试人员应创造条件进行模拟调试。在联调中如发现硬件问题也应及时修正,直到单片机系统的软件、硬件全部调试成功为止。系统调试完成后,还要进行一段时间的试运行,从而检验系统的稳定性和抗干扰能力,验证系统功能是否达到设计要求,是否达到预期的效果。4.1 软件调试问题分析数码管显示问题:本次设计的最终方案是采用数码管显示屏实现显示功能,最初数码管显示不正常,出现闪烁现象。通过调试发现这是由于延时时间选择不当会使人眼产生视觉暂留效果,每一次显示时都必须加入适当的时间延时。由于一开始所选用的延时时间太短因此出现闪烁现象,在增加显示延时之后,数码管显示正常。蜂鸣器异常启动问题:蜂鸣器的启动/关闭是通过单片机输出的控制信号来实现的,当前时间与闹钟设置时间比较吻合时,单片机将对闹铃控制口执行取反命令,从而启动蜂鸣器发声。一开始编写程序时,没有对控制口的最初状态作正确设置,由于系统开机复位后,闹铃控制口处于高电平状态,因此出现一开机蜂鸣器就处于启动状态的情况。通过在主程序最开始加入对闹铃控制口取零命令后,蜂鸣器启动/关闭控制恢复正常。4.2 通过Keil编译程序 单片机开发中除必要的硬件外,同样离不开软件,我们写的汇编语言源程序要变为CPU可以执行的机器码有两种方法,一种是手工汇编,另一种是机器汇编,目前已极少使用手工汇编的方法了。机器汇编是通过汇编软件将源程序变为机器码,用于MCS-51单片机的汇编软件有早期的A51,随着单片机开发技术的不断发展,从普遍使用汇编语言到逐渐使用高级语言开发,单片机的开发软件也在不断发展,Keil软件是目前最流行开发MCS-51系列单片机的软件,这从近年来各仿真机厂商纷纷宣布全面支持Keil即可看出。Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部分组合在一起。试验的程序通过Keil软件编译,产生HEX文件如图4-1所示 4-1生成HEX文件4.3 Proteus 仿真Proteus软件是来自英国Labcenter electronics公司的EDA工具软件,Proteus软件除了其具有和其它EDA工具一样的原理布图,PCB自动或人工布线及电路仿真的功能外, 其革命性的功能是,他的电路仿真是互动的,针对微处理器的应用,还可以直接在基于原理图的虚拟原型上编程,并实现软件源码级的实时调试,如有显示及输出, 还能看到运行后输入输出的效果,配合系统配置的虚拟仪器如示波器,逻辑分析仪等;proteus的ISIS是一款Labcenter出品的电路分析实物仿真系统,可仿真各种电路和IC,并支持单片机,元件库齐全,使用方便,是不可多得的专业的单片机软件仿真系统。该软件的特点:1. 全部满足我们提出的单片机软件仿真系统的标准,并在同类产品中具有明显的优势。2.具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS-232动态仿真、C调试器、SPI调试器、键盘和LCD系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。3. 目前支持的单片机类型有:68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各种外围芯片。4. 支持大量的存储器和外围芯片。总之该软件是一款集单片机和SPICE分析于一身的仿真软件,功能极其强大 ,可仿真51、AVR、PIC。Proteus仿真系列组图如下:(1)复位图:图 上电复位电路显示三个F FF 当前单片机复位后,在4为七段数码管上显示的初始状态为“F FF”字符;(2)抢答倒计时图:图 减计时时间为20秒该图显示通过加一按键操作后在4位七段数码管上显示的计时时间为20秒;(3)选手回答倒计时图:图 4号选手抢答图中显示的是若5号选手抢答成功的时候,4位数码管的第一位显示是“4”号选手抢答成功,最后两位显示选手答题倒计时时间还有60秒;(4)选手违规图 3号选手违规主持人未按下开始键前选手抢答,数码管第一位显示选手号,后两位违规字符FF;通过仿真结果证实,该方案可行。该设计方案同过51系列单片机的P0口作为段选输出,用P2口作为位选输出,动态扫描LED显示管,显示时间。并通过接在P3.0-P3.6口的按键开关控制开始、结束、喇叭提示等功能。P1口接选手按键,控制抢答。第五章焊接与调试一般来说,造成硬件问题的首要问题就是焊接了,也就是说焊接的好与坏直接响产品的正常运行。造成焊接质量不高的常见原因是:(1) 焊锡用量过多,形成焊点的锡堆积;焊锡过少,不足以包裹焊点。(2)冷焊。焊接时烙铁温度过低或加热时间不足,焊锡未完全熔化、浸润、焊锡表面不光亮(不光滑),有细小裂纹。(3)夹松香焊接,焊锡与元器件或印刷板之间夹杂着一层松香,造成电连接不良。若夹杂加热不足的松香,则焊点下有一层黄褐色松香膜;若加热温度太高,则焊点下有一层碳化松香的黑色膜。对于有加热不足的松香膜的情况,可以用烙铁进行补焊。对于已形成黑膜的,则要"吃"净焊锡,清洁被焊元器件或印刷板表面,重新进行焊接才行。(4)焊锡连桥。指焊锡量过多,造成元器件的焊点之间短路。这在对超小元器件及细小印刷电路板进行焊接时要尤为注意。(5)焊剂过量,焊点明围松香残渣很多。当少量松香残留时,可以用电烙铁再轻轻加热一下,让松香挥发掉,也可以用蘸有无水酒精的棉球,擦去多余的松香或焊剂。(6)焊点表面的焊锡形成尖锐的突尖。这多是由于加热温度不足或焊剂过少,以及烙铁离开焊点时角度不当浩成的内。5.1排版与焊接初期选在了制作PCB板,但由于对Protel DXP2004软件操作不是太熟悉,在排版和布线上浪费了大量的