1、摘 要本文研究设计了一种用于公共场所具有检测及超限报警功能的酒精浓度智能测试仪。其设计方案基于89C51单片机,MQ3酒精浓度传感器。系统将传感器输出信号通过A/D转换电路调理后,经由单片机进行数据处理,最后由LCD显示酒精浓度值。从而让驾车的人知道自己该在什么情况下可以开车,这是一个在现代生活很实用。经过大量的验证,基于单片机的酒精浓度监测仪检测仪比传统的机械检测仪或酒精计灵敏,监测精度高,准确方便,可靠性好,扩展简单,控制功能强大。对超出阀值进行声光报警,直观准确。所以基于单片机的酒精浓度监测仪的研究具有一定的价值。关键词:酒精浓度传感器 单片机 数模转换 硬件设计 数码管显示Abstra
2、ctThis paper studies has been designed for public inspection and overrun alarm function with the alcohol concentration intelligent tester. Its design scheme based on 89C51, MQ3 alcohol concentration sensor. System will sensor output signal through the A/D circuit recuperation, data processing by MCU
3、, finally by LCD display alcohol chroma value. So let the people know what oneself should drive in what circumstances can drive, this is a very practical in modern life.After a great deal of verification, based on SCM alcohol concentration monitor detector than traditional mechanical detector or alc
4、ohol plans, monitoring high precision, sensitivity, good dependability, precise convenient extended simple, control powerful functions. Beyond the value of acousto-optic alarm, intuitive accurate. So based on SCM alcohol concentration monitor research has certain value. Keywords: Alcohol concentrati
5、on sensor microcontroller digital-to-analog Hardware design Digital pipe display毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得 及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。作 者 签 名: 日 期: 指导教师签名: 日期: 使用授权说明
6、本人完全了解 大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。作者签名: 日 期: 学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后
7、果由本人承担。作者签名: 日期: 年 月 日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权 大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。涉密论文按学校规定处理。作者签名:日期: 年 月 日导师签名: 日期: 年 月 日目 录第一章绪论1一酒精浓度检测仪的背景1二酒精浓度检测仪现状及发展趋势2三本课题实现目标2四本章小结2第二章 设计方案和元器件选择3一设计方案3二元器件选择31.单片机的选择32.传感器
8、53.数模转换器64.AT24C02存储器75LCD显示8三本章小结9第三章 硬件设计10一硬件设计原理10二硬件设计的外围电路111.晶振电路112.复位电路123.报警设计134.电源电路145.信号调制电路156.A/D转换设计157.外围扩充存储器电路17三本章小结17第四章 系统软件的设计19一主程序19二A/D转换模块程序流程图20三按键程序流程图21四液晶显示程序流程图22五本章小结23第五章 本设计总结与展望24参考文献25致 谢27附 录281主程序282液晶显示程序333存储程序374AD转换程序41第一章绪论检测仪向更迅速更快捷发展,方便携带等要求发展。传统的机械检测仪或
9、酒精计一般灵敏度和准确度也比较低或者检测方法难,同时单片机既有通用计算机的基本部件,又不同于计算机。有体积小,实时快速的对外部事件做出响应,迅速采集大量数据,做出逻辑判断与推理后实现被控对象的参数调整与控制,且能满足检测仪的设计要求,所以基于单片机的酒精浓度检测仪的开发有很大意义。一酒精浓度检测仪的背景以对气体中酒精含量进行检测的设备有五种基本类型,即:燃料电池型(电化学)、半导体型、红外线型、气体色谱分析型、比色型。但由于价格和使用方便的原因,常用的只有燃料电池型(电化学型)和半导体型两种。燃料电池可以直接把可燃气体转变成电能,而不产生污染,酒精传感器只是燃料电池的一个分支。燃料电池酒精传感
10、器采用贵金属白金作为电极,在燃烧室内充满特种催化剂,使进入燃烧室内的酒精充分燃烧转变为电能,也就是在两个电极上产生电压,电能消耗在外接负载上,此电压与进入燃烧室内气体的酒精浓度成正比。与半导体型相比,燃料电池型呼气酒精测试仪具有稳定性好,精度高,抗干扰性好的优点。但是由于燃料电池酒精传感器的结构要求非常精密,制造难度相当大。从传感器技术发展的角度看,根据使用传感器原理的不同,常见的气体检测仪器仪表各自有适用气体及应用领域,新技术新产品正在成为未来气体检测仪器仪表的主流,现在的酒精浓度检测仪都是采用可替代吹管,酒精仪从传统的机械检测或酒精计到现在的利用传感器和单片机位核心技术的酒精浓度检测仪式在
11、技术上是一大突破,大大提高了检测酒精的精确度。二酒精浓度检测仪现状及发展趋势根据使用传感器原理的不同,常见的气体检测仪器仪表各自有适用气体及应用领域,新技术新产品正在成为未来气体检测仪器仪表的主流,如今的酒精浓度检测仪都是采用可替代吹管,酒精仪从传统的机械检测或酒精计到现在的利用传感器和单片机位核心技术的酒精浓度检测仪式在技术上是一大突破,大大提高了检测酒精的精确度,更能满足市场的需求。但是当前大部分一般的酒精浓度检测仪价格较低的灵敏度并不是很强,准确度高的一般售价也比较昂贵,并且大多只是对结果进行预警、低报、高报三限报警点设置,所以在LED显示酒精浓度数值上应实现普及,得到准确的浓度数值。同
12、时很多其他气体会可能会对其影响,从而影响准确度。所以在传感器的腐蚀性以及排除其他干扰的能力值得提升。现在大多都是检测气体浓度或液体浓度的检测,最好是能解决一个检测仪同时检测气体和液体两种不同状态的酒精浓度。三本课题实现目标本论文主要完成酒精浓度检测仪软件设计,设计内容包括:A/D转换器程序、控制程序、超标报警、键盘检测、数据显示等。系统采用单片机为控制核心,以实现便携式酒精浓度检测仪的基本控制功能。系统主要功能内容包括:数据处理、超标报警。本系统设计采用功能模块化的设计思想,设计器件简介和选择;电路的设计和调试。硬件设计部分主要包括:MCU、A/D、LCD、外围扩展数据RAM等芯片的选择。 四
13、本章小结如今各个地方对安全意识增强,对检测的精度高,准确度高,携带方便要求。再加上气体传感器的发展,单片机具有受集成限制,片内储存量较小,可靠性好,扩展简单,控制功能强等特点,基于单片机的酒精浓度检测仪的研究和开发生产具有十分广泛的现实市场和潜在的市场需求。本章主要从单片机和传感器以及基于单片机的酒精浓度监测仪的研究背景,国内外现状及其发展趋势,本设计所要实现的目标三个方面作出的阐述。其中最重要的是本设计所要实现的目标,其次是基于单片机的酒精浓度检测仪的发展趋势。第二章 设计方案和元器件选择通过对单片机和传感器的了解,在智能仪表上的优势有很多,耗能小、准确度高、超强集成化、以及稳定性能等等,注
14、定了单片机在各个领域的应用。所以在酒精浓度检测的设计中也选择了单片机作为控制核心。同时需要的部件包扩酒精浓度传感器、数模转换器、LED显示器、键盘以及声音报警。无需其他计算机,用户就可以进行交互工作,完成数据的采集、储存、计算、分析等过程。该仪器电路简单,软件功能完善,灵敏度高,工作性能好,并且具有尺寸小、方便携带、低功耗、低成本等优点。一设计方案由酒精浓度测试仪对待测气体(液体)进行检测,气体传感器是将一种气体体积分时转化成对应电信号的转换器。探测头通过气体传感器的对气体样品进行处理,通常包括滤除杂质和干燥气体、干燥或制冷处理,样品抽吸,甚至对样品进行化学处理,以便化学传感器进行更快的测量。
15、转换成输出电压信号。然后以单片机为核心的控制:定时进行各个功能模块的自诊断,并对外界的异常情况做出快速处理。对无法解决的问题,应及时切换到后背装置或报警。具有完善的输入输出通道和实时控制能力:对生产过程进行检测和控制,有多种信号需要传送,因此要求系统配备完善的模拟量和数字量输入输出通道和完善的中断系统和处理功能。信号采集处理、声光报警电路以及显示、键盘、PC接口电路。测试仪进行气体检测的基本步骤是单片机采集酒精传感器的响应信号,并且进行转换,模数转换就是用于快速,高精度的对输入信号采样编码,然后转化成数字量储存在数据储存器中,然后单片机通过特定的算法进行气体浓度的识别,同时和所设值进行对比,超
16、出则报警同时显示浓度数值,没超出只显示浓度数。并且将结果输出到LCD显示屏幕上。二元器件选择1.单片机的选择本系统采用单片机为控制核心。我们选择单片机STC89C51为控制核心;主要基于考虑STC89C51是无法解密低功耗,超低价高速,高可靠强抗静电,强抗干扰,功能强大的单片机。STC89C51有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,片内振荡器及时钟电路, 89C5X可以按照常规方法进行编程,也可以在线编程。同时STC89C51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方
17、式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式保存RAM中的内容,但振荡器停止工作并禁止其他所有部件工作直到下一个硬件复位。其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发本。STC单片机有PDIP、PQFP/TQFP及PLCC等三种封装形式,以适应不同产品的需求。1STC89C51单片机单片机引脚功能(如图2.1): Vcc:电源电压GND:地 图2.1 单片机引脚图STC89C51是的低电压,高性能CMOS 8位单片机,片内含8K bytes的可反复擦写的只读程序存储器(PEROM)和256K byt
18、es的随机存取数据存储器,器件采用高密度,非易失性存储技术生产,与标准MCS-51指令系统及8051产品引脚兼容,片内置通用8位中央处理器和FLASH存储单元,功能强大,STC89C51单片机适合于许多较为复杂控制应用场合3。主要性能参数:8K字节可重擦写FLASH闪存存储器1000次写/擦循环时钟频率:0Hz24MHz三级加密存储器256字节内部RAM32个可编程I/O口线 3个16位定时/计数器 6个中断源可编程串行UART通道低功耗的空闲和掉电模式片内振荡器和时钟电路2.传感器气体传感器是气体检测系统的核心,通常安装在探测头内。从本质上讲,气体传感器是一种将某种气体体积分数转化成对应电信
19、号的转换器。探测头通过气体传感器对气体样品进行调理,通常包括滤除杂质和干扰气体、干燥或制冷处理、样品抽吸,甚至对样品进行化学处理,以便化学传感器进行更快速地测量2。在选择传感器的时候,一定要考虑到稳定性、灵敏度、选择性和抗腐蚀性,本系统选择MQ3 型酒精传感器。MQ3 酒精传感器是气敏传感器,其具有很高的灵敏度、良好的选择性、长期的使用寿命和可靠的稳定性4。MQ3 型气敏传感器由微型Al2O3、陶瓷管和SnO2 敏感层、测量电极和加热器构成的敏感元件固定在塑料或者不锈钢的腔体内,加热器为气敏元件的工作提供了必要的工作条件。传感器的标准回路有两部分组成:其一为加热回路;其二为信号输出回路,它可以
20、准确反映传感器表面电阻的变化。传感器表面电阻RS 的变化,是通过与其串联的负载电阻RL 上的有效电压信号VRL 输出面获得的6。二者之间的关系表述为:RS/RL=(VCVRL)/VRL,其中VC 为回路电压,10V。负载电阻RL 可调为0.5200K,加热电压Uh 为5V。上述这些参数使得传感器输出电压为05V。MQ3 型气敏传感器的结构和外形如图所示,标准回路如图所示。为了使测量的精度达到最高,误差最小,需要找到合适的温度,一般在测量前需要将传感器预热20s。图2.2 MQ3 的结构和外形图2.3 MQ3 标准回路3.数模转换器实现A/D转换的基本方法很多,有计数法、逐次逼近法、双斜积分法和
21、并行转换法。由于逐次逼近式A/D转换具有速度,分辨率高等优点,而且采用这种方法的ADC芯片成本低,所以我们采用逐次逼近式A/D转换器。逐次逼近型ADC包括1个比较器、一个模数转换器、1个逐次逼近寄存器(SAR)和1个逻辑控制单元5。逐次逼近型是将采样信号和已知电压不断进行比较,一个时钟周期完成1位转换,依次类推,转换完成后,输出二进制数。这类型ADC的分辨率和采样速率是相互牵制的。优点是分辨率低于12位时,价格较低,采样速率也很好。ADC0832模数转换器具有8位分辨率、双通道A/D转换、输入输出电平与TTL/CMOS相兼容、5V电源供电时输入电压在05V之间、工作频率为250KHZ 、转换时
22、间为32 微秒、一般功耗仅为15MW等优点,适合本系统的应用,所以我们采用ADC0832为模数转换器件。ADC0832 具有以下特点: 8位分辨率; 双通道A/D转换; 输入输出电平与TTL/CMOS相兼容; 5V电源供电时输入电压在05V之间; 工作频率为250KHZ,转换时间为32S; 一般功耗仅为15mW; 8P、14PDIP(双列直插)、PICC 多种封装; 商用级芯片温宽为0度 to +70度,工业级芯片温宽为40度 to +85度;芯片接口说明: CS_ 片选使能,低电平芯片使能。 CH0 模拟输入通道0,或作为IN+/-使用。 CH1 模拟输入通道1,或作为IN+/-使用。 GN
23、D 芯片参考0 电位(地)。 DI 数据信号输入,选择通道控制。 DO 数据信号输出,转换数据输出。 CLK 芯片时钟输入。 Vcc/REF 电源输入及参考电压输入(复用)。4.AT24C02存储器在本设计中使用的是24C02存储芯片,是电可擦除的PROM,8个引脚功能及两线串行接口。电压允许范围1.8V5V。串行E2PROM是基于I2C-BUS 的存储器件,遵循二线制协议,由于其具有接口方便,体积小,数据掉电不丢失等特点,在仪器仪表及工业自动化控制中得到大量的应用。在一般单片机系统中,24C02 数据受到干扰的情况是很少的,基本的读写功能外,还对地址功能以及WP引脚保护功能进行了全面的检测,
24、发现一种ATMEL(激光印字)以及XICOR牌号的24C02具有全面的符合I2C总线协议的功能,而有些牌号24C02要么没有WP引脚保护功能,要么没有器件地址功能(即2 片24C02不能共用一个I2C总线),有些甚至两种功能均无。所以说一些同样功能型号的电子器件在兼容性上往往会带来意想不到的问题,值得引起注意。5LCD显示液晶显示模块与计算机的接口电路有两种方式。它与单片机的接口方法分为直接访问方式和间接控制方式。直接访问方式是把液晶模块作为存储器或I/O设备直接接在单片机的总线上,单片机以访问存储器或I/O设备的方式操作液晶显示模块的工作。间接控制方式则不使用单片机的数据系统,而是利用它的I
25、0口来实现与显示模块的联系。即将液晶显示模块的数据线与单片机的P0口连接作为数据总线,另外三根时序控制信号线通常利用单片机的P2口中未被使用的IO口来控制。这种访问方式不占用存储器空间,它的接口电路与时序无关,其时序完全靠软件编程实现7。LCD1602字符型液晶显示模块是一种专门用于显示字母、数字、符号等点阵式LCD,目前常用161,162,202和402行等的液晶显示模块,模块组件内部主要由LCD显示屏、控制器、列驱动器和偏压产生电路构成。1602液晶显示屏采用标准的16脚接口,其中各接口的功能如下表(2-1)所示:引脚号引脚名电平输入/输出引脚说明1VSS电源地2VDD电源正极(+5V)3
26、VL液晶显示偏压信号4RS0/1输入数据/命令选择端,0:输入指令,1:输入数据5R/W0/1输入读/写选择端,0:向LCD写入指令或数据,1:从LCD读取信息6E10输入使能信号,1时读取信息,10(下降沿)执行指令7D00/1输入/输出数据总线(最低位)8D10/1输入/输出数据总线9D20/1输入/输出数据总线10D30/1输入/输出数据总线11D40/1输入/输出数据总线12D50/1输入/输出数据总线13D60/1输入/输出数据总线14D70/1输入/输出数据总线(最高位)15BLA+VCCLCD背光电源正极16BLK接地LCD背光电源负极表2-1 LCD1602的16管脚功能三本章
27、小结本章对本文设计的主要部件进行介绍,了解了相关部件的组成以及基本结构基本工作原理,让我们对每个模块清楚其工作方式,工作步骤,以及工作原理。各个元器件的作用功能后对本设计的分析,需要哪些元器件,具体到什么型号,下面是对各个元器件的选择,在元器件选择生起到指导作用,以及更好的发挥各个部件的功能作用。根据对元器件的选择基本了解到本设计以单片机为核心,由酒精浓度测试仪对待测气体(液体)进行检测,转换成输出电压信号,以单片机STC89C51为核心的控制、信号采集处理、声光报警电路以及显示、键盘、PC接口电路。测试仪进行气体检测的基本步骤是单片机采集酒精传感器的响应信号,并且进行转换,储存在数据储存器中
28、,然后单片机通过特定的算法进行气体浓度的识别,并且将结果输出到LCD显示屏幕上。第三章 硬件设计基于单片机酒精浓度检测仪的硬件设计部分。首先,我们必须了解它的硬件设计原理。其次,需要弄清楚它的总体构成及具体的外围电路。最后,根据其原理框图和具体的外围电路得到完整的硬件总电路图。一硬件设计原理由酒精传感器对待测气体(液体)进行检测,转换成输出电压信号,仪单片机为核心的控制、信号采集处理、声光报警电路以及显示、键盘、PC接口电路。测试仪进行气体检测的基本步骤是单片机采集酒精传感器的响应信号,并且进行转换,储存在数据储存器中,然后单片机通过特定的算法进行气体浓度的识别,同时将分析的值与设定值进行对比
29、,对超出设定值进行报警,并且将结果输出到LED显示屏幕上。本系统由酒精传感器,数模转换器,单片机,键盘,声音报警以及LCD显示等部分组成,在这次的整体设计中详细涉及下面几个方面,其原理框图如:图3.1:传感器信号调制A/D 单片机外部存储器液晶显示器按 键图3.1 单片机与LCD、键盘及声音报警电路的电路连接图 二硬件设计的外围电路1.晶振电路单片机工作的过程中各指令的微操作在时间上有严格的次序,这种微操作的时间次序称作时序,单片机的时钟信号用来为单片机芯片内部各种微操作提供时间基准,89c51的时钟产生方式有两种,一种是内部时钟方式,一种是外部时钟方式。内部时钟方式即在单片机的外部接一个晶振
30、电路与单片机里面的振荡器组合作用产生时钟脉冲信号,外部时钟方式是把外部已有的时钟信号引入到单片机内,此方式常用于多片89C51单片机同时工作,以便于各单片机的同步,一般要求外部信号高电平的持续时间大于20ns.且为频率低于12MHz的方波。对于CHMOS工艺的单片机,外部时钟要由XTAL1端引入,而XTAL2端应悬空8。本系统中为了尽量降低功耗的原则,采用了内部时钟方式。图3.2晶振电路图在89C51单片机的内部有一个震荡电路,只要在单片机的XTAL1和XTAL2引脚外接石英晶体(简称晶振)就构成了自激振荡器并在单片机内部产生时钟脉冲信号,图中电容器C1和C2稳定频率和快速起振,电容值在530
31、pF,典型值是22pF,晶振CYS选择的是12MHz。2.复位电路单片机开始工作的时候,必须处于一种确定的状态,否则,不知哪是第一条程序和如何开始运行程序。端口线电平和输入输出状态不确定可能使外围设备误动作,导致严重事故的发生;内部一些控制寄存器(专用寄存器)内容不确定可能导致定时器溢出、程序尚未开始就要中断及串口乱传向外设发送数据。因此,任何单片机在开始工作前,都必须进行一次复位过程,使单片机处于一种确定的状态9。当在89C51单片机的RST引脚引入高电平并保持2个机器周期时,单片机内部就执行复位操作(若该引脚持续保持高电平,单片机就处于循环复位状态)。实际应用中,复位操作有两种基本形式:一
32、种是上电复位,另一种是上电与按键均有效的复位,上电复位,要求接通电源后,单片机自动实现复位操作。常用的上电复位,上电瞬间RST引脚获得高电平,随着电容C1的充电,RST引脚的高电平将逐渐下降。本设计中复位电路采用的是开关复位电路,开关S9未按下是上电复位电路,上电复位电路在上电的瞬间,由于电容上的电压不能突变,电容处于充电(导通)状态,故RST脚的电压与VCC相同。随着电容的充电,RST脚上的电压才慢慢下降。选择合理的充电常数,就能保证在开关按下时是RST端有两个机器周期以上的高电平从而使STC89C51内部复位。开关按下时是按键手动复位电路,RST端通过电阻与VCC电源接通,通过电阻的分压就
33、可以实现单片机的复位。 图3.3复位电路图RST引脚的高电平只要能保持足够的时间(2个机器周期),单片机就可以进行复位操作。该电路典型的电阻和电容参数为:晶振为12MHz时,C1为10uF:R4为8.23.报警设计在单片机应用系统中,一般的工作状态可以通过指示灯或数码显示来指示,供操作人员参考,了解系统的工作状况。但对于某些紧急状态,比如系统检测到的错误状态等,为了使操作人员不至于忽视,及时采取措施,往往还需要有某种更能引人注意,提起警觉的报警信号。这种报警信号通常有三种类型:一是闪光报警,因为闪动的指示灯更能提醒人们注意;二是鸣音报警,发出特定的音响,作用于人的听觉器官,易于引起和加强警觉;
34、三是语音报警,不仅能起到报警作用,还能直接给出警报种类的信息。其中,前两种报警装置因硬件结构简单,软件编程方便,常常在单片机应用系统中使用;而语音报警虽然警报信息较直接,但硬件成本高,结构较复杂,软件量也增加。闪光报警实现单频音报警的接口电路比较简单,只要当值高于警报值的时候给一个低电频就能驱动二极管发光,简单易懂。以下为报警电路接线图见图3.4 图3.4报警电路图这一章比较具体的说明了系统硬件设计的内容,通过模块化的设计思想,把一个复杂的单片机系统按照功能划分成一个个单独的电路模型,分别进行设计,最后在集成到一起。这种方法对于设计复杂的单片机系统很有效。大大提高系统设计的效率与质量11。4.
35、电源电路在本次设计中,需要一个比较大的电压源和一个5V的单片机供电源,为了实现便携式,设用一个9V的电压源,一般6节电池和一个9V的电池都可以提供,因而需要一个电压转换吧9V转换成5V。工作原理如图4.11低压层直流稳压电源电路原理图。该电路是由基准电压、电压放大和电流放大等3个环节组成。其中,基准电压产生,按图中电路连接,当通过R0的电流在0510 mA时可获得稳定的25 V基准输出。图3.5低压层电路原理图输出电压的具体数值由运算放大器UA确定,采用同相放大器的优越性在于其输入阻抗极大,可很好地将TL431输出的25 V电压与后级电路隔离,使其不受负载变化的影响;运放与电阻R3和R2组成比
36、例放大环节,可对基准电压按要求进行比例放大输出,但输出电压最大不能超过运放的电源电压。5.信号调制电路图3.6信号调制放大电路图3.6是酒精传感器电极信号调理电路 采集到的信号都会很弱,首先将信号经过二阶有源滤波电路以后,经过3级放大电路,同相和反相放大电路构成一级和二级,互相抵消了零度漂移和失调,后面的差动放大电路构成第三极,将差分出入转换为单端输出。6.A/D转换设计正常情况下ADC0832 与单片机的接口应为4条数据线,分别是CS、CLK、DO、DI。但由于DO端与DI端在通信时并未同时有效并与单片机的接口是双向的,所以电路设计时可以将DO和DI 并联在一根数据线上使用。当ADC0832
37、未工作时其CS输入端应为高电平,此时芯片禁用,CLK 和DO/DI 的电平可任意。当要进行A/D转换时,须先将CS使能端置于低电平并且保持低电平直到转换完全结束12。此时芯片开始转换工作,同时由处理器向芯片时钟输入端CLK 输入时钟脉冲,DO/DI端则使用DI端输入通道功能选择的数据信号。在第1 个时钟脉冲的下沉之前DI端必须是高电平,表示启始信号。在第2、3个脉冲下沉之前DI端应输入2 位数据用于选择通道功能.如图3.73.7模数转换电路图 本系统应用有人机对话功能,该功能即能随时发出各种控制命令和数据输入以及和LCD连接显示运行状态和运行结果。键盘分为:独立式和矩阵式两类,每一类按其编码方
38、法又可以分为编码和非编码两种。由于本系统只有+、- 、设置、确认4个控制命令,所需按键较少,所以本系统选择独立式按键。电路图见图3.83.8按键电路图独立式按键是直接用I/O口线构成的单个按键电路。每个独立式按键占有一根I/O口线。各根I/O口线之间不会相互影响键盘抖动的消除:抖动的消除大致可以分为硬件削抖和软件削抖14。硬件削抖是采用硬件电路的方法对键盘的按下抖动及释放抖动进行削抖,经过削抖电路后使按键的电平信号只有两种稳定状态。软件削抖的基本原理是当检测出键盘闭合时,先执行一个延时子程序产生数毫秒的延时,待接通时的前沿抖动消失后再判别是否有健按下。当按键释放时,也要经过数毫秒延时,待后沿抖
39、动消失后再判别键是否释放。由于应用硬件削抖还需要外加器件,成本相对较高,所以本系统选择软件延时削抖的方法。7.外围扩充存储器电路基于STC85C51单片机具有4KB的程序存储器(ROM),256B的数据存储器(RAM),由于考虑到本系统的数据处理与存储所需的容量,现在需要扩充存储器的容量。在应用中要保存一些参数和状态,据了解基于EEPROM的存储芯片是一种很好的选择15。我们选定了AT24C02存储器。电路图见图3.9:图3.9外围扩充存储电路图三本章小结本章主要介绍了硬件设计的原理及具体外围电路。二者紧密联系,不可分割。我们只有了解了基于单片机的酒精浓度检测仪原理之后,我们才可能联想设计出它
40、的原理框图,从而确定它是由主控芯片、电源输入部分、键盘输入部分、复位部分、晶振部分、显示部分、报警部分等组成大的。然后,设计各个具体部分的电路以实现其对应的功能16。最后,将具体的外围电路和STC89C51单片机的对应引脚连接起来,以完成本设计3.10硬件设计部分第四章 系统软件的设计对于单片机的开发应用中,逐渐引入了高级语言,C语言就是其中的一种。汇编语言的可控性较高级语言来说更具优越性。程序编写语言比较常见的有C语言、汇编语言。汇编语言的机器代码生成效率高,控制性好,但就是移植性不高。C语言编写的程序比用汇编编写的程序更符合人们的思考习惯。还有很多处理器都支持C编译器,这样意味着处理器也能
41、很快上手。且具有良好的模块化、容易阅读、维护等优点,且编写的模块程序易于移植。基于C语言和汇编语言的优缺点,本系统采用C语言编写方法17。软件编写的主体思路是将系统按功能模块化划分,然后根据模块要实现的功能写各个子程序。整个软件程序的编写采用查询式方式编写的。程序编写包括主程序,液晶显示程序,存储程序,AD转换程序和时钟程序。详情见附录一主程序主程序实现的功能:与硬件相结合实现便携式酒精浓度检测仪的各个功能。主要是检测与显示,数据存储。功能子函数的调用。见图4.1首先开启启动按钮,启动单片机和显示器,同时对单片机内部进行初始化,紧接着初始化显示屏,初始化完毕后显示开机画面显示主菜单,然后对键盘
42、的读入。开始初始化CPU初始LCD屏显示开机画面显示主菜单读键结束图4.1 主程序流程图二A/D转换模块程序流程图模数转换模块的主要功能就是将经放大器放大的模拟电压信号转化为MCU能够处理的数字信号,并传送给MCU。A/D芯片的数据CS口,连接51单片机的P3.1口,CLK接P3.2,D1和D0接P3.3口。工作时序如下所示: ADC0832有8只引脚,CH0和CH1为模拟输入端,CS为片选引脚,只有CS置低才能对ADC0832进行配置和启动转换。CLK为ADC0832的时钟输入端。CS在整个转换过程中都必须为低,当CS为低时,在数据输入端DI(数据输入端)加一个高电平,接着在CLK上加一个时
43、钟,DI上的逻辑1就会使ADC0832的DI脱离高阻态,然后通道配置数据伴随着时钟通过DI端移入多路器,当最后一位数据移入多路器时,DI变为高阻态,在这以前DO(数据输出端)都为高阻态。在经过一个时钟,DO脱离高阻态,从而启动转换。接着从处理器接收时钟信号,每经过一个时钟,转换后的数据就会从高位到低位依次从DO移出,经过8个时钟后,数据又以从低位到高位的形式从DO移出(也是每个时钟移一位)。当最后一位数据移出时转换完成。当CS从低变为高时,ADC0832内部所有寄存器清零。如想要进行下一次转换,CS必须做一个从高到低的跳变,后跟着地此配置数据重复上面的过程。ADC0832转换的流程图见下图4.
44、2开始使能芯片输入通道控制字读取2字节数据字节数据校正送入指定寄存器结束图 4.2数转换流程图三按键程序流程图按键时显现人机对话的一个控制按钮,通过按键的操作,对系统进行发送操作指令,后经与MCU串行通信,然后在液晶上显示。按键查询式的流程图见下图(图4.3): 按键的四个键分别接P1.0,P1.1,P1.2,P1.3,由于P1口具有上拉电阻,所以不在需要加上拉电阻进行电压的放大。开始 结束图 4.3按键查询式的流程图四液晶显示程序流程图LCD模块在本系统中主要起着开界面汉字显示,以及各控制效果的显示。采用直接访问方式。液晶显示的操作流程图见下图4.4:开始结束图 4.4液晶显示的操作流程图在 LCD1602 液晶上显示相应的读写数据。在液晶上显示的格式如下:C02ADDRESS:0X01WR:010READ: