《基于单片机的智能瓦斯检测仪的设计.doc》由会员分享,可在线阅读,更多相关《基于单片机的智能瓦斯检测仪的设计.doc(54页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、陕西能源职业技术学院毕业论文 毕业设计(论文) 题 目:基于单片机的智能瓦斯检测仪设计 院 系: 陕西能源职业技术学院 专业班级: 电气104班 指导教师: 孟卓 学生姓名: 张健 学 号: 100433415 目录摘 要随着我国经济的快速发展,各行各业对煤炭的需求急剧增加,而各种矿难事故的发生,使得煤炭安全生产面临严峻的挑战。在这些矿难中绝大部分是由于瓦斯爆炸所引起的,而瓦斯要达到爆炸极限的最重要条件是瓦斯浓度超限,所以能实时对瓦斯浓度的监控可以大量减少矿难。但是现有的一些瓦斯传感器不仅价格昂贵而且结构复杂,而且对于井下瓦斯浓度的监测和报警存在一定的局限性,安全系数不高。因此开发智能的瓦斯传
2、感器是现在煤矿行业的迫切需求。瓦斯传感器是用于检测瓦斯浓度的主要仪器,本设计的瓦斯传感器其基于的思想就是要开发精度高、可靠性强、同时易于控制并且要大大降低成本,因此对于矿井的未来发展具有重要意义。该瓦斯传感器硬件部分以AT87C552单片机为核心,包括检测电路、报警电路、显示电路、电源电路和红外遥控电路等,通过对该传感器进行软件编程来实现对瓦斯浓度的检测、报警、显示和控制。安全可靠,经久耐用,适合多种矿井瓦斯的监控,可以大大降低煤矿事故的发生。关键词:瓦斯;AT87C552;变流瓦斯检测 目 录1 绪论11.1引言11.2系统简介22 系统原理介绍32.1 变流瓦斯检测方法的原理32.1.1
3、变流瓦斯检测方法的基本思想32.1.2 变流瓦斯检测方法的原理42.2 变流瓦斯检测电路简介72.2.1 恒温控制信号取样电路72.2.2 锯齿波发生电路82.2.3 电压比较电路92.2.4 脉冲电压稳幅电路103 整体硬件介绍113.1 87c552简介113.1.187c552概述113.1.2 主要特性123.1.3 管脚说明133.1.4 单片机复位153.1.5 振荡器特性163.1.6 芯片擦除173.2 显示电路简介203.2.1LCD显示器工作原理203.2.2LCD显示器概述及特点213.2.4 液晶显示电路223.3 其它部分元件简介303.3.1 数据存储器626431
4、3.3.2 程序存储器2764323.4 其它部分电路简介343.4.1 声光报警电路343.4.2 红外遥控电路353.4.3 电源电路374 软件设计414.1 主流程图414.2 各子流程图43总结47致 谢48参考文献49附录:电气设备常用基本文字符号50陕西能源职业技术学院毕业论文1 绪论1.1引言随着我国国民经济的不断发展,对煤炭需求量也越来越大,这就使得煤矿的安全生产面临着一个十分严峻的问题。煤矿矿难事故屡屡发生,造成的原因有很多,其中不少是因为瓦斯爆炸引起的。为了防止瓦斯爆炸事故的发生,除了加强井下作业人员的管理,改善井下的作业环境外,还需要精确可靠适用范围广的瓦斯传感器。煤矿
5、瓦斯是指矿井中主要由煤层气构成的以甲烷为主的有害气体的总称。有时也单独指甲烷。瓦斯在空气的体积分数达到一定的程度(5%12%)时,在一定条件下可与空气中的氧气发生剧烈的化学反应而形成瓦斯爆炸,对煤矿安全构成严重威胁。我国矿井瓦斯监控技术经历了从简单到复杂、从低水平到高水平的发展过程。从新中国成立初期到20世纪70年代,煤矿下井人员主要使用光学瓦斯检定仪、风表等携带式仪器检测井下环境参数。20世纪60年代初期,我国开始研制载体催化元件,随着敏感元件制造水平的提高和电子技术的发展,特别是大规模集成电路、微型计算机的广泛应用,使监控技术进入了新的发展时期。20世纪70年代瓦斯断电仪问世,装备在采掘工
6、作面、回风港道等井下固定地点,实现了对瓦斯的自动连续检测及超限自动切断被控制设备的电源。随后,陆续研制了便携式瓦斯监控检测报警仪、瓦斯报警矿灯。1983年至1985年,从欧美国家先后引进了数十套监控系统及配套的传感器和便携式仪器装备煤矿矿井,并相应地引进了部分监控系统、传感器和敏感元件制造技,由此推动了我国矿井安全监测监控技术的发展。1983年以后,国内有多种型号矿井监控系统通过了技术鉴定,逐步实现了对煤矿矿井安全、生产多种参数的连续监测、监控、数据存储和数据处理。近几年,随着计算机的发明和应用,特别是网络和信息化建设的不断发展,给瓦斯治理提供了机遇条件,煤矿瓦斯监控网络系统应运而生。这些装备
7、和系统的推广与应用,丰富了我国煤矿安全监控 产品的市场,改善了煤矿安全技术装备的面貌,缩小了我国与国外先进技术水平的差距。虽然现在在采煤方面科学技术和材料设备有了最大改进,但频繁发生诸如瓦斯爆炸、煤与瓦斯突出、矿井突水等重特大事故。针对煤矿安全生产中的共性、关键性和前瞻性的技术问题,以煤矿事故因素瓦斯、粉尘、水灾、等为重点研究对象,加强科技攻关,提高对煤矿主要灾害的识别能力、监测预警能力、防治与控制能力是当前煤矿生产的首要任务。煤矿安全装备是防治煤矿事故的重要手段,在防治灾害事故中发挥了重要作用,但目前仍有许多装备存在适应性不强、可靠性差的问题。由于现在井下常用瓦斯传感器有以下的缺点:1. 触
8、媒有寿命限界。不同的环境劣化程度不一样,寿命也不一定,但可推定其概略值。2. 触媒种类中有因水分引起急速劣化的,各厂商的产品不一样,要根据预定使用场所做一番调查再决定。3. 超过爆发上限(HEL)浓度的瓦斯无法燃烧而使输出减少。使用于此种地反易发生危险要特别注意。给予目前现状考虑开发新型瓦斯传感器不仅有利于提高工作效率节约成本、更加有利于保障了矿井安全。1.2系统简介本设计是基于单片机的瓦斯检测仪的设计,该系统以单片机AT87C552为核心,包含甲烷浓度采样器、把220V的交流电转换成5V的直流电源、红外遥控系统、存储器的扩展、LCD显示器和报警装置等组成。该传感器可以有效的监测井下低浓及高浓
9、瓦斯,试用范围非常广泛。监测到的信息传输到单片机,经单片机处理后发出指令,如果瓦斯超过规定值,传感器可以立即发出声光报警并自动发出执行指令以降低瓦斯浓度。该传感器可有效的降低瓦斯事故发生率,结构灵活,扩展性强,具有较高的性价比,AT87C552的应用实现了电子硬件设计的“软件化”,大大的提高了系统的可靠性和抗干扰能力,非常实用于各种大小煤矿井下瓦斯的监测监控,性能优良,经久耐用,可靠性高。472 系统原理介绍图2-1 原理框图2.1 变流瓦斯检测方法的原理2.1.1 变流瓦斯检测方法的基本思想为了解决上节所提到催化传感器存在的问题,就必须抛开连续电流供电的传统方法,以保证测量元件与参比元件温度
10、永远相等,设计出真正的恒温检测桥路。实现方法是通过一个硬件电路构成的闭环反馈系统,强迫检测元件与参比元件保持在平衡状态,使测量元件工作在恒温状态下。该检测环路使测量元件的温度与参比元件的温度进行比较,当环境中的CH4气体在测量元件表面燃烧时,测量元件的温度将很快上升使电桥失去平衡,硬件电路构成的闭环反馈系统监测到偏移信号后,输出控制脉冲信号,将已经偏移的桥路“矫正”回来,使回路周而复始地工作在偏移/校正的振荡之中。测量元件的温度是以微小的锯齿波形状的轨迹在恒温区波动,如图2-2所示:图2-2 传统的检测桥路与恒温桥路的浓度温度特性曲线这个波动的温差很小,只有零点几度的差别,基本上可以认为参比元
11、件和测量元件的温度是相等的。这种方法保证了在任何CH4浓度下,测量元件的温度不变,彻底有效地杜绝了高浓CH4的燃烧,大大延长了催化元件的使用寿命,也使仪器的零点稳定性、精度稳定性得到了的提高。本研究所研制的脉冲供电检测桥路与传统的测量机理截然不同,检测元件工作于间歇脉冲供电状态,不随CH4温度变化,反馈环路中的脉冲频率与CH4浓度呈正比关系。从微观的角度上看,单片机检测的是测量元件上温度的上升速率,而传统方法则是检测元件上的绝对温度。测量桥路是恒温的,无论检测多高浓度的瓦斯,检测元件的温度都不变,所以它能够抗高浓冲击,能够拥有更长的寿命和极好的稳定性。2.1.2 变流瓦斯检测方法的原理变流检测
12、方法是一种使载体催化传感元件在检测瓦斯气体时保持恒温状态的新型检测方法。它的基本原理是:在瓦斯浓度升高时,通过闭环反馈电路,使工作电流相应减少,以保持催化元件的温度不变,利用电流的减少量和瓦斯含量间的对应关系,实现瓦斯含量的检测。载体催化元件的静态热平衡方程是: (2-1)式中 I载体催化元件的工作电流; r载体催化元件的电阻; 瓦斯氧化反应燃烧热系数; 空气中瓦斯体积分数; 载体催化元件温度;环境温度;热传导系数;B元件面积;A辐射系数;角系数。方程式左边是单位时间内工作电流所产生的热量和瓦斯气体在载体催化传感元件表面发生氧化反应所产生的热量之和,后者与瓦斯体积分数成正比;方程式右边是催化传
13、感元件在单位时间内热传导和热辐射损失的热量之和,其中传导热是催化传感元件通过导线和空气传递的热量之和,由于催化传感元件工作在一个半封闭的气罩内,其同空气的对流散热很小,可忽略不计。方程两边在催化传感元件达到热平衡时是相等的。在变流瓦斯检测中,工作电流随着瓦斯浓度增加而减小,元件处于恒温状态,载体催化元件工作温度和阻值保持不变。故在环境温度一定的情况下,方程式右边为一常数,设 (2-2)对于该种检测方法,因保持不变,即当无瓦斯()时,;当有瓦斯时 (2-3) 式中I、分别为有瓦斯、无瓦斯的工作电流,即 (2-4) 此式表明电流变化与瓦斯体积分数不是线性关系。因此,在设计检测电路时,为使电流大小能
14、反映瓦斯体积分数,不能采用一般的可控直流电源,而需采用宽度可调的脉冲电流源,即脉冲电流的幅值恒定,但其宽度可由反馈信号调节。当瓦斯体积分数增加时,减少脉冲的宽度T以减少通过元件的平均电流。由式(3-3)知,瓦斯体积分数为 (2-5) 与电流平方成线性关系,脉冲电流有效值为 (2-6) 式中T为脉冲电流周期,为脉冲电流幅值。在一定的条件下与占空比的平方根成线性关系,即其平方与占空比成线性关系。又脉冲电流平均值为,与占空比成线性关系,故脉冲电流的平均值可以线性地反映瓦斯体积分数,即瓦斯浓度。2.2 变流瓦斯检测电路简介2.2.1 恒温控制信号取样电路图2-4为恒温控制信号取样电路:这里没有采用传统
15、的惠斯通电桥来获取瓦斯图2-4 恒温控制信号取样电路与催化元件反应时产生的不平衡电压,而是用运放集成块组成运算电路,对电压信号进行处理,这样做的好处是抑制共模信号的能力增强了,同时由于黑元件上催化燃烧产生的电压只有毫伏级,不能直接与锯齿波信号进行比较,在Uo1的后面加入了同相比例运算电路,对前面输出的电压进行放大,以使其能与锯齿波电压进行比较从而输出所需的脉冲电压。当有瓦斯气体时,在黑元件上发生催化燃烧,黑元件温度上升,其阻值也随之上升,它上面的电压升高,不难推出: (2-7)式中、为无瓦斯时的阻值,、为电流流经元件时温度上升产生的阻值,为瓦斯气体在元件上燃烧时温度上升产生的阻值,前面已经提及
16、,所谓的恒温是指温度在一个很小的范围内波动近似看成的,因此、的值都是非常小的,故U也很小,需要经过放大才能与锯齿波进行比较。在图2-4中有 (2-8) 则 (2-9) (2-10)适当选取电阻值,使m=1,n=2,这样便可获得瓦斯在黑元件上燃烧产生的电压。这里在实验室用QJ23单臂直流电桥对铂丝绕制的黑白元件的阻值进行了测定,当环境温度为1619时,测得的黑白元件的阻值分别为8.236和8.227(实际上这时黑白元件的温度已经大于400,达到了工作状态)。在检测瓦斯时需要将催化元件加热到500左右,给黑白元件提供3V的恒定电压,发生催化燃烧时,假设温度上升10,这时候黑元件阻值变为10左右,电
17、流大概是150mA,则黑元件上产生的电压大概为0.265V。在图2-4中有: (2-11)取为14左右,则可将瓦斯催化燃烧产生的电压放大到合适的幅值与锯齿波电压进行比较。2.2.2 锯齿波发生电路定时器是一种应用极为广泛的中规模集成电路。该芯片使用灵活方便,只需外接少量的阻容元件就可以构成单稳、多谐和施密特触发器,因而广泛用于信号的产生、变换、控制与检测。图2-5为NE和R2,R3,C1组成的无稳态多谐振荡器: 图2-5 锯齿波发生电路振荡器的输出频率为: (2-12) 由此可算得输出频率为1kHz,C2起正反馈作用,即在Q1射级跟随器输出锯齿波的同时,正反馈至R2的上端,故在C1充电期间,R
18、2上的压降保持不变,即C1的充电速率不变,因而极大地保证了锯齿波的线性。其非线性可控制在1%以下,且温度稳定性好。图中的电压控制端5脚外接了一个可调的控制电压,用以改变内部比较器的基准电压值,即比较电平,由此可改变锯齿波的振幅,这里通过调节Rp1使输出锯齿波的最大值为4V。图2-6 定时器重要芯片定时器简介:各脚主要功能:地 GND触发输出复位控制电压门限(阈值)放电电源电压Vcc定时器是一种模拟和数字功能相结合的中规模集成器件。一般用双极性工艺制作的称为 用 CMOS 工艺制作的称为除单定时器外,还有对应的双定时器 556/7556。555 定时器的电源电压范围宽,可在 4.5V16V 工作
19、,7555 可在 318V 工作,输出驱动电流约为 200mA,因而其输出可与 TTL、CMOS 或者模拟电路电平兼容。 定时器成本低,性能可靠,只需要外接几个电阻、电容,就可以实现多谐振荡器、单稳态触发器及施密特触发器等脉冲产生与变换电路。它也常作为定时器广泛应用于仪器仪表、家用电器、电子测量及自动控制等方面。定时器它内部包括两个电压比较器,三个等值串联电阻,一个 RS 触发器,一个放电管 T 及功率输出级。它提供两个基准电压VCC /3 和 2VCC /3 。定时器的功能主要由两个比较器决定。两个比较器的输出电压控制 RS 触发器和放电管的状态。在电源与地之间加上电压,当 5 脚悬空时,则
20、电压比较器 C1 的同相输入端的电压为 2VCC /3,C2 的反相输入端的电压为VCC /3。若触发输入端 TR 的电压小于VCC /3,则比较器 C2 的输出为 0,可使 RS 触发器置 1,使输出端 OUT=1。如果阈值输入端 TH 的电压大于 2VCC/3,同时 TR 端的电压大于VCC /3,则 C1 的输出为 0,C2 的输出为 1,可将 RS 触发器置 0,使输出为 0 电平。2.2.3 电压比较电路电压比较器可将模拟信号转换成二值信号,即只有高电平和低电平两种状态的离散信号。因此可用电压比较器来产生脉冲方波电压信号。电路如图2-7所示: 图2-7 电压比较器电路这里选用的电压比
21、较器的型号为AD790,它有同相和反相两个输入端,同相端接锯齿波电压信号,反相端接瓦斯检测电路的输出电压,也就是脉冲电压宽度的控制信号。比较器采用单电源供电,引脚8接逻辑电平,其取值决定于负载所需高电平,这里接+5V,此时比较器输出高电平为4.3V。引脚5为锁存控制端,当它为低电平时,锁存输出信号。图2-7中C4、C5均为去耦电容,用于滤去比较器输出产生变化时电源电压的波动,R8是输出高电平时的上拉电阻。2.2.4 脉冲电压稳幅电路电路中选用TL431芯片对比较器输出的脉冲电压进行稳幅。电路如图2-8所示:图2-8 脉冲稳压电路TL431是一个有良好的热稳定性能的三端可调分流基准源, 它的输出
22、电压用两个电阻就可以任意地设置到从Vref(2.5V)到36V的任何值,工作电流范围为1mA100mA,K、A脚两端输出电压为:改变Rp2的阻值,就可以改变输出基准电压大小,这里通过调节Rp2使输出的脉冲电压的幅值稳定在3V。3 整体硬件介绍3.1 87c552简介本设计瓦斯传感器是以单片机为核心,所以对于单片机的选型决定了硬件的复杂和简单。要想把变流瓦斯检测电路、声光报警电路、红外遥控电路和电源电路都融合到单片机控制中,则要对相应的电路分配相应的单片机端口即I/O口。如果使用51系列单片机则由于此类单片机的I/O口只有三个,所以要满足设计要求则必须对单片机的I/O口进行扩展,使其达到设计所需
23、要的口数,而这样就要用到芯片8155进行扩展这样不仅在硬件上显得繁琐,而且从性价比方面考虑成本也是比较高的,同时51系列单片机内部不包括A/D转换器,那么在硬件中还要加入此转换器才能把外部信号转换成单片机能识别的数字信号。由于87c552单片机有5个外部双向8位输入/输出(I/O)口,这样对于我们的设计就在I/O口数量方面满足了我们的要求,而且它内部还集成了A/D转换装置,同时还满足模数转换的需要,所以综合进行考虑我们首选87c552单片机。3.1.187c552概述87C552单片机系统87C552具有如下特点:68个引脚,8k字节的片内程序存储器,可外部扩展64k字节。256字节的随机存取
24、数据存储器(RAM),5个外部双向8位输入/输出(I/O)口,4个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个 全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。 此外,87C552设计和配置了振荡频率可为0Hz并可通过软件设置省电模式。空闲模式 下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存RAM的数据,停止芯片其它功能直至外中断激活或硬件 复位。同时该芯片还具有PDIP、TQFP和PLCC等三种封装形式,以适应不同产品的需求。图3-1 87C552单片机3.1.2 主要特性与MCS-51 产品指令系统完全兼容4K字节可编
25、程闪烁存储器寿命:1000写/擦循环数据保留时间:10年全静态工作:0Hz-24MHz三级程序存储器锁定1288位内部RAM32可编程I/O线两个16位定时器/计数器5个中断源可编程串行通道低功耗的闲置和掉电模式片内振荡器和时钟电路3.1.3 管脚说明VCC:供电电压GND:接地STADC:启动AD操作PWM0:脉宽调制:输出0(低电平有效)PWM1:脉宽调制:输出1(低电平有效)EW:看门狗使能P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第 一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编
26、程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门 电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验 时,P1口作为第八位地址接收。P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外
27、部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址 数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3 /INT1(外部中断1)P3.
28、4 T0(记时器0外部输入)P3.5 T1(记时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。P4口:8位可编程的I/O口P5口:8位输入出口:ADC0-ADC7可选功能AD的8位输入口路输入通道RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在 FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出
29、的 脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H- FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当
30、/EA端保持高电平时,此间内部程序存储器。在FLASH 编程期间,此引脚也用于施加12V编程电源(VPP)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。AVdd:模拟电源AVss:模拟地AVREF:AD转换参考电阻:高端AVREF-:AD转换参考电阻:低端VSS:数字地3.1.4 单片机复位复位电路:有两种方式可以实现复位:1)将复位脚保持至少两个机械周期高电平;2)通过片内上电检测电路检测到VCC从0伏开始上升。为了保证上电复位的可靠,RST保持高电平的时间至少为振荡器启动时间再加上机械周期。RST还可被看门狗定时器T3所激活的下拉晶体管内部拉
31、低。T3输出的脉冲宽度为三个机械周期。这样的一个短的机械脉冲式必要的,可以尽可能快的使处理器或系统从错误中恢复。需要注意的是,定时器T3输出地脉冲不能对上电复位电容放电。因此看门狗定时器也用于外部器件时,RST脚不能连接此电容。应当使用一个不同的电路来执行上电复位。定时器T3的溢出将对87C552产生一个强制复位。而与RST管脚无关。图3-2上电复位3.1.5 振荡器特性时钟电路:在MCS-51芯片内部有一个高增益反相放大器,其输入端为芯片引脚XTAL1,其输出端为引脚XTAL2。而在芯片的外部,XTAL1和XTAL2之间跨接晶体振荡器和微调电容,从而构成一个稳定的自激振荡器,这就是单片机的时
32、钟电路如下。时钟电路产生的震荡脉冲经过触发器进行二分频之后,才成为单片机的时钟脉冲信号。一般的,电容C1和C2取30uf左右,晶体的振荡频率范围是1.2MHZ-12MHZ。晶体振荡频率高,则系统的时钟频率也高,单片机运行速度也就快。XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。XTAL1接外部晶体的一个引脚。在单片机内部,它是一个反相放大器的输入端,这个放大器构成了片
33、内振荡器。当采用外部振荡器时,对HMOS单片机,此引脚应接地;对CHMOS单片机,此引脚作为驱动端。XTAL2接外晶体的另一端。在单片机内部,接至上述振荡器的反相放大器的输出端。采用外部振荡器时,对HMOS单片机,该引脚接外部振。3.1.6 芯片擦除整个PEROM阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE管脚处于低电平10ms 来完成。在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。串口通讯单片机的结构和特殊寄存器,这是你编写软件的关键。至于串口通信需要用到那些特殊功能寄存器呢,它们是SCON,TCON,TMOD,SCON等,各代表
34、什么含义呢?SBUF 数据缓冲寄存器这是一个可以直接寻址的串行口专用寄存器。有朋友这样问起过“为何在串行口收发中,都只是使用到同一个寄存器SBUF?而不是收发各用一个寄存器”。实际上SBUF包含了两个独立的寄存器,一个是发送寄存,另一个是接收寄存器,但它们都共同使用同一个寻址地址99H。CPU在读SBUF时会指到接收寄存器,在写时会指到发送寄存器,而且接收寄存器是双缓冲寄存器,这样可以避免接收中断没有及时的被响应,数据没有被取走,下一帧数据已到来,而造成的数据重叠问题。发送器则不需要用到双缓冲,一般情况下我们在写发送程序时也不必用到发送中断去外理发送数据。操作SBUF寄存器的方法则很简单,只要
35、把这个99H 地址用关键字sfr定义为一个变量就可以对其进行读写操作了,如sfr SBUF = 0x99;当然你也可以用其它的名称。通常在标准的reg51.h 或at89x51.h 等头文件中已对其做了定义,只要用#include 引用就可以了。SCON 串行口控制寄存器通常在芯片或设备中为了监视或控制接口状态,都会引用到接口控制寄存器。SCON 就是51 芯片的串行口控制寄存器。它的寻址地址是98H,是一个可以位寻址的寄存器,作用就是监视和控制51 芯片串行口的工作状态。51 芯片的串口可以工作在几个不同的工作模式下,其工作模式的设置就是使用SCON 寄存器。它的各个位的具体定义如下:SM0
36、 SM1 SM2 REN TB8 RB8 TI RISM0、SM1 为串行口工作模式设置位,这样两位可以对应进行四种模式的设置。串行口工作模式设置。SM0 SM1 模式 功能 波特率0 0 0 同步移位寄存器 fosc/120 1 1 8位UART 可变1 0 2 9位UART fosc/32 或fosc/641 1 3 9位UART 可变在这里只说明最常用的模式1,其它的模式也就一一略过,有兴趣的朋友可以找相关的硬件资料查看。表中的fosc 代表振荡器的频率,也就是晶振的频率。UART 为(Universal Asynchronous Receiver)的英文缩写。SM2在模式2、模式3中为
37、多处理机通信使能位。在模式0中要求该位为0。REM为允许接收位,REM置1时串口允许接收,置0时禁止接收。REM 是由软件置位或清零。如果在一个电路中接收和发送引脚P3.0,P3.1都和上位机相连,在软件上有串口中断处理程序,当要求在处理某个子程序时不允许串口被上位机来的控制字符产生中断,那么可以在这个子程序的开始处加入REM=0来禁止接收,在子程序结束处加入REM=1 再次打开串口接收。大家也可以用上面的实际源码加入REM=0来进行实验。TB8发送数据位8,在模式2和3是要发送的第9位。该位可以用软件根据需要置位或清除,通常这位在通信协议中做奇偶位,在多处理机通信中这一位则用于表示是地址帧还
38、是数据帧。RB8 接收数据位8,在模式2和3是已接收数据的第9位。该位可能是奇偶位,地址/数据标识位。在模式0中,RB8为保留位没有被使用。在模式1中,当SM2=0,RB8 是已接收数据的停止位。TI发送中断标识位。在模式0,发送完第8位数据时,由硬件置位。其它模式中则是在发送停止位之初,由硬件置位。TI置位后,申请中断,CPU响应中断后,发送下一帧数据。在任何模式下,TI都必须由软件来清除,也就是说在数据写入到SBUF后,硬件发送数据,中断响应(如中断打开),这时TI=1,表明发送已完成,TI不会由硬件清除,所以这时必须用软件对其清零。RI 接收中断标识位。在模式0,接收第8位结束时,由硬件
39、置位。其它模式中则是在接收停止位的半中间,由硬件置位。RI=1,申请中断,要求CPU取走数据。但在模式1中,SM2=1时,当未收到有效的停止位,则不会对RI 置位。同样RI 也必须要靠软件清除。常用的串口模式1 是传输10个位的,1位起始位为0,8位数据位,低位在先,1位停止位为1。它的波特率是可变的,其速率是取决于定时器1 或定时器2 的定时值(溢出速率)。AT89C51和AT89C2051等51系列芯片只有两个定时器,定时器0 和定时器1,而定时器2是89C552系列芯片才有的。波特率在使用串口做通讯时,一个很重要的参数就是波特率,只有上下位机的波特率一样时才可以进行正常通讯。波特率是指串
40、行端口每秒内可以传输的波特位数。有一些初学的朋友认为波特率是指每秒传输的字节数,如标准9600会被误认为每秒种可以传送9600个字节,而实际上它是指每秒可以传送9600个二进位,而一个字节要8个二进位,如用串口模式1 来传输那么加上起始位和停止位,每个数据字节就要占用10个二进位,9600波特率用模式1 传输时,每秒传输的字节数是960010960字节。51芯片的串口工作模式0的波特率是固定的,为fosc/12,以一个12M的晶振来计算,那么它的波特率可以达到1M。模式2的波特率是固定在fosc/64或fosc/32,具体用那一种就取决于PCON 寄存器中的SMOD位,如SMOD为0,波特率为
41、focs/64,SMOD为1,波特率为focs/32。模式1和模式3的波特率是可变的,取决于定时器1或2(52芯片)的溢出速率。那么我们怎么去计算这两个模式的波特率设置时相关的寄存器的值呢?可以用以下的公式去计算:波特率(2SMOD32)定时器1 溢出速率上式中如设置了PCON寄存器中的SMOD位为1时就可以把波特率提升2倍。通常会使用定时器1工作在定时器工作模式2下,这时定时值中的TL1做为计数,TH1做为自动重装值 ,这个定时模式下,定时器溢出后,TH1的值会自动装载到TL1,再次开始计数,这样可以不用软件去干预,使得定时更准确。在这个定时模式2下定时器1溢出速率的计算公式如下:溢出速率(
42、计数速率)/(256TH1)上式中的“计数速率”与所使用的晶体振荡器频率有关,在51芯片中定时器启动后会在每一个机器周期使定时寄存器TH的值增加一,一个机器周期等于十二个振荡周期,所以可以得知51芯片的计数速率为晶体振荡器频率的1/12,一个12M的晶振用在51芯片上,那么51的计数速率就为1M。通常用11.0592M晶体是为了得到标准的无误差的波特率,那么为何呢?计算一下就知道了。如我们要得到9600的波特率,晶振为11.0592M和12M,定时器1 为模式2,SMOD设为1,分别看看那所要求的TH1为何值。代入公式:11.0592M9600(232)(11.0592M/12)/(256-T
43、H1)TH1250 (3-1)12M9600(232)(12M/12)/(256-TH1)TH1249.49 (3-2)上面的计算可以看出使用12M晶体的时候计算出来的TH1不为整数,而TH1 的值只能取整数,这样它就会有一定的误差存在不能产生精确的9600波特率。当然一定的误差是可以在使用中被接受的,就算使用11.0592M的晶体振荡器也会因晶体本身所存在的误差使波特率产生误差,但晶体本身的误差对波特率的影响是十分之小的,可以忽略不计。3.2 显示电路简介随着社会的进步和科技的飞速发展,传统CRT技术的应用已经越来越少,尤其是在近几年可以说这种技术已经被淘汰,而替代它的是安全系数高、显示清晰
44、和节能的液晶显示技术。它就如雨后的春笋可以说是“一夜间”遍及各个行业,如手机屏、电脑屏以及电视屏等等。本设计的瓦斯传感器在显示方面要能直接的被操作人员所观察的,所以从人性方面和现在的趋势以及从显示的性价比方面进行考虑,液晶显示是我们的首选即LCD显示。3.2.1LCD显示器工作原理从液晶显示器的结构来看,无论是笔记本电脑还是桌面系统,采用的LCD显示屏都是由不同部分组成的分层结构。LCD由两块玻璃板构成,厚约1mm,其间由包含有液晶材料的5m均匀间隔隔开。因为液晶材料本身并不发光,所以在显示屏两边都设有作为光源的灯管,而在液晶显示屏背面有一块背光板(或称匀光板)和反光膜,背光板是由荧光物质组成
45、的可以发射光线,其作用主要是提供均匀的背景光源。背光板发出的光线在穿过第一层偏振过滤层之后进入包含成千上万液晶液滴的液晶层。液晶层中的液滴都被包含在细小的单元格结构中,一个或多个单元格构成屏幕上的一个像素。在玻璃板与液晶材料之间是透明的电极,电极分为行和列,在行与列的交叉点上,通过改变电压而改变液晶的旋光状态,液晶材料的作用类似于一个个小的光阀。在液晶材料周边是控制电路部分和驱动电路部分。当LCD中的电极产生电场时,液晶分子就会产生扭曲,从而将穿越其中的光线进行有规则的折射,然后经过第二层过滤层的过滤在屏幕上显示出来。液晶显示技术也存在弱点和技术瓶颈,与CRT显示器相比亮度、画面均匀度、可视角
46、度和反应时间上都存在明显的差距。其中反应时间和可视角度均取决于液晶面板的质量,画面均匀度和辅助光学模块有很大关系。对于液晶显示器来说,亮度往往和他的背板光源有关。背板光源越亮,整个液晶显示器的亮度也会随之提高。而在早期的液晶显示器中,因为只使用2个冷光源灯管,往往会造成亮度不均匀等现象,同时明亮度也不尽人意。一直到后来使用4个冷光源灯管产品的推出,才有很大的改善。信号反应时间也就是液晶显示器的液晶单元响应延迟。实际上就是指的液晶单元从一种分子排列状态转变成另外一种分子排列状态所需要的时间,响应时间愈小愈好,它反应了液晶显示器各像素点对输入信号反应的速度,即屏幕由暗转亮或由亮转暗的速度。响应时间越小则使用者在看运动画面时不会出现尾影拖拽的感觉。有些厂商会通过将液晶体内的导电离子浓度降低来实现信号的快速响应,但其色彩饱和度、亮度、