(最新版)酒精浓度传感器(MQ3)毕业论文

摘要

2000年以来,随着中国经济的高速发展,人民生活水平的迅速提高,中国逐渐步入“汽车社会”,酒后驾车行为所造成事故越来越多,对社会的影响也越来越大,酒精正在成为越来越凶残的“马路杀手”。据有关资料统计,全世界每年因车祸丧生的人数就超过60万人,留下永久性伤残者在400万以上,一般受伤者则不计其数。在许多国家,车祸已成为第一位意外死亡原因。

此外,因为交通事故造成的经济损失也相当惊人。据事故调查统计,大约50%—60%的车祸与饮酒有关。中国公安部门在2009年8月,在全国各地加强查处酒后驾驶的力度,以减少由酒后驾驶造成的恶性交通事故。要查处就涉及到检测人体内的酒精含量和使用设备来进行检测的问题。

本文研究设计了一种用于公共场所具有检测及超限报警功能的酒精浓度智能测试仪。其设计方案基于89C51单片机,MQ3酒精浓度传感器。系统将传感器输出的4~20mA的标准信号通过以AD0832为核心的AD转换电路调理后,经由单片机进行数据处理,最后由LCD显示酒精浓度值。文中详细介绍了数据采集子系统、数据处理过程以及数据显示子系统和报警电路的设计方法和过程。系统对于采样地点超出规定的酒精浓度时二极管报警电路提醒监测人员。同时,操作人员对于具体报警点的上限值可以通过单片机编程进行设置。

关键词:酒精浓度传感器(MQ3); STC89C52 MCU; AD转换器

Abstract

Since 2000, with China's rapid economic development and the rapid increase people's living standard, China society is also growing, Alcohol is becoming more and more brutal "killers." According to statistics, the worldwide number of people killed in road accidents every year on more than 60 million people, left with permanent disability of 400 million or more, usually the injured were numerous. In many countries, traffic accidents addition, the economic losses caused by the accident is quite amazing. Accident investigation, according to statistics, about 50% -60% of car accidents and alcohol-related. China’s Ministry of Public Security in August 2009, around the country to strengthen efforts to investigate and deal with drink driving, to reduce the drink driving accident caused by the vicious. To investigate the body involving the detection of alcohol and use of equipment to detect problems.

In this paper, design a public place for the detection and limit alarm functions with an alcohol concentration of intelligent tester. This design,based on STC89C51 microcontroller and MQ3 alcohol concentration sensor. System sensor output 4 ~ 20mA standard signal through AD0832 core A D converter circuit, after conditioning, data processing by the MCU, the final alcohol concentration value from the LCD display. This paper describes the data acquisition subsystem, data processing and data display subsystem and alarm circuit design methods and processes. System requirements for the sampling sites exceeding the alcohol concentration diode reminder alarm circuit monitors. Meanwhile, the operator specific alarm point for the upper limit set by MCU programming.Alcohol tester will bring a driving signal prior to a safe

Key words: Alcohol concentration sensor (MQ3) ; STC85C52 MUC ; A D converter

目录

摘要.................................................................. I ABSTRACT ............................................................... II 引言.. (1)

第一章绪论 (2)

1.1酒精浓度检测仪开发背景 (2)

1.2酒精浓度检测仪的发展 (2)

1.3酒精浓度检测仪设计内容 (2)

第二章方案器件简介 (3)

2.1MCU选择的简介 (3)

2.2数模转换器的简介 (5)

2.3液晶显示器的简介 (7)

第三章总体方案设计 (7)

3.1STC89C52单片机 (8)

3.2ADC0832数模转换 (8)

3.3LCD1602液晶显示 (9)

第四章硬件设计 (10)

4.1最小系统的实现 (10)

4.2数据采集设计 (12)

4.3AD转换设计 (13)

4.4LCD1602液晶显示设计 (13)

4.5报警设计 (15)

第五章软件设计 (16)

5.1编译语言的选择 (16)

5.2主程序模块 (16)

5.3AD转换模块 (17)

5.4按键输入模块 (17)

5.6液晶显示输出模块 (18)

第六章系统调试 (19)

6.1系统硬件调试 (19)

6.1.1元器件的焊接 (19)

6.1.2电路测试 (20)

6.2系统软件调试 (20)

6.3系统整体调试 (20)

第七章结束语 (21)

致谢 (22)

参考文献 (23)

附录 (24)

附录一硬件设计原理图和PCB图 (24)

附录二检测程序 (25)

引言

随着中国经济的高速发展,人民生活水平的迅速提高,中国逐渐步入“汽车社会”,酒后驾驶行为所造成事故越来越多,对社会的影响也越来越大,酒精正在成为越来越凶残的“马路杀手”。越来越多的交通事故在我们的身边发生,让人心痛,经济的发展,每个人都希望人的安全意识也该发展。此外,由交通事故造成的经济损失也相当惊人。据事故调查统计,超过半数的车祸与饮酒有关。在全国各地加强查处酒后驾驶的力度,以减少由酒后驾驶造成的恶性交通事故。要查处就涉及到检测人体内的酒精含量和使用设备来进行检测的问题。

本文研究设计了一种用于公共场所具有检测及超限报警功能的酒精浓度智能测试仪。其设计方案基于89C52单片机,MQ3酒精浓度传感器。系统将传感器输出信号通过AD转换电路调理后,经由单片机进行数据处理,最后由LCD显示酒精浓度值。从而让驾车的人知道自己该在什么情况下可以开车,这是一个在现代生活很实用,很负责的一个设计,给社会带来福音。

第一章绪论

1.1 酒精浓度检测仪开发背景

酒精的重要作用,是逐渐使得脑部及神经系统反应迟钝——这也是许多人喜欢适量饮酒的主要原因。喝一、两杯酒对人有镇定或松弛的作用。即使是少量的酒精,也没有刺激振奋的作用,这跟许多人的想法正好相反。然而,酒精有时会造成抑制力明显减弱,这会导致创造力的出现,或者是有时候会导致实际的侵略攻击性行为。

根据WHO数据,全球2003年的人均纯酒精消费量为6.2L,其中欧洲地区人均达11.9L,美洲地区人均为8.7L。俄罗斯及其周边的东欧国家酒精消费量最高,其次为欧洲其他国家。在人均国民生产总值(GDP)低于7000美元的低收入国家,酒精消费量与人均GDP相关,GDP越高酒精消费量越高。

受到酒精影响的司机通常会有如下特征:对信号灯反应慢;逆向行驶;摇摆不定、突然转向、飘忽不定或在道路中线驾驶;乱踩刹车;转弯幅度大;蛇形;没有原因就停车;开车速度极慢;突然转弯或违法转弯;天黑时不开前灯。据统计,驾驶员酒后开车,其发生交通事故的比率为没有饮酒情况下的16倍。由日常道路交通安全违法行为和交通肇事案例来看,机动车驾驶员酒后驾车约占38.6%;而摩托车交通肇事中,酒后驾驶的比例则高达72.3%。

酒后驾驶让人付出了惨痛的代价,为了避免类似事故的发生,酒精浓度检测仪随之产生。

1.2 酒精浓度检测仪的发展

以对气体中酒精含量进行检测的设备有五种基本类型,即:燃料电池型(电化学)、半导体型、红外线型、气体色谱分析型、比色型。但由于价格和使用方便的原因,目前(截止2009年8月)常用的只有燃料电池型(电化学型)和半导体型两种。

燃料电池是当前全世界都在广泛研究的环保型能源,它可以直接把可燃气体转变成电能,而不产生污染,酒精传感器只是燃料电池的一个分支。燃料电池酒精传感器采用贵金属白金作为电极,在燃烧室内充满特种催化剂,使进入燃烧室内的酒精充分燃烧转变为电能,也就是在两个电极上产生电压,电能消耗在外接负载上,此电压与进入燃烧室内气体的酒精浓度成正比。

与半导体型相比,燃料电池型呼气酒精测试仪具有稳定性好,精度高,抗干扰性好的优点。但是由于燃料电池酒精传感器的结构要求非常精密,制造难度相当大,目前(2009年)只有美国、英国、德国等少数几个国家能够生产,加上材料成本高,因此价格相当昂贵,是半导体酒精传感器的几十倍。

1.3 酒精浓度检测仪设计内容

本论文主要完成酒精浓度检测仪软件设计,设计内容包括:AD转换器程序、控制程序、超标报警、键盘检测、数据显示等。

本系统采用单片机为控制核心,以实现便携式酒精浓度检测仪的基本控制功能。系统主要功能内容包括:数据处理、时间设置、开始测量、超标报警、键盘检测本系统设计采用功能模块化的设计思想,本论文内容分为以下几个章节:设计器件简介和选择;硬件的设计;软件设计和系统调试。

第二章方案器件简介

硬件设计部分主要包括:MCU、AD、时钟芯片、LCD、外围扩展数据RAM等芯片的选择,以下做一些器件的比较。

2.1 MCU选择的简介

本系统采用单片机为控制核心。单片机MCU主要有51基本型和52增强型,而相比之下52型比51型功能更为强大,ROM和RAM存储空间更大,52还兼容51指令系统。基于本系统设计内容的需要,综合考虑后,我们选择单片机STC89C52为控制核心;主要基于考虑STC89C52是无法解密低功耗,超低价高速,高可靠强抗静电,强抗干扰,功能强大的单片机。

STC89C52有40个引脚,32个外部双向输入输出(IO)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,片内振荡器及时钟电路, 89C5X可以按照常规方法进行编程,也可以在线编程。同时STC89C52可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时计数器,串行通信口及中断系统继续工作。掉电方式保存RAM

中的内容,但振荡器停止工作并禁止其他所有部件工作直到下一个硬件复位。其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发本。STC单片机有PDIP、PQFPTQFP及PLCC等三种封装形式,以适应不同产品的需求。

STC89C52单片机单片机引脚功能(如图2.1):

?Vcc:电源电压

?GND:地

图2.1 单片机引脚图

?P0口:P0口是一组8位漏极开路型双向IO口,也即地址数据总线复用口。作为输出口用时,每位能吸收电流的方式驱动8个TTL逻辑门电路,对端口P0写“1”时,可作为高阻抗输入端用。

在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问器件激活内部上拉电阻。

在Flash编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。

?P1口:P1是一个带内部上拉电阻的8位双向IO口,P1的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。

与AT89C51不同之处是,P1.0和P1.1还可分别作为定时计数器2的外部计数输入(P1.0T2)和输入(P1.1T2EX),参见表2-1。

Flash编程和程序校验期间,P1接收低8位地址。表2-1为 P1.0和P1.1的第二功能

表2-1 P1.0和P1.1的第二功能

?P2口:P2是一个带有内部上拉电阻的8位双向IO口,P2的输出缓冲级可驱(吸收或输出电流)4个TTL逻辑门电路。对端口P2写“1”,通过内部的上拉电阻把端口拉到高电平,同时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。

指令)时,P2口输出P2锁存器的内容。

Flash编程或校验时,P2亦接收高位地址和一些控制信号。

?P3口:P3口时一组带有内部上拉电阻的8位双向IO口。P3口输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对P3口写入‘1’时,它们被内部上拉电阻拉高并可作为输入端口。此时,被外部拉低的P3口将用上拉电阻输出电流(IIL)。

P3口作为一般的IO口线外,更重要的用途是它的第二功能,如表2-2所示:

此外,P3口还接收一些用于Flash闪速存储器编程和程序校验的控制信号。

?RST:复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。

?ALE :当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。一般情况下,ALE仍以时钟振荡频率的16输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲。

表2-2 P3口第二功能

端口引脚第二功能

P3.0 RXD(串行输入口)

P3.1 TXD(串行输出口)

P3.2 错误!未找到引用源。(外中断0)

P3.3 错误!未找到引用源。(外中断1)

P3.4 T0(定时计数器0)

P3.5 T1(定时计数器1)

P3.6 错误!未找到引用源。(外部数据存储器写选通)

P3.7 错误!未找到引用源。 (外部数据存储器读选通) 对Flash存储器编程器件,改引脚还用于输入编程脉冲(错误!未找到引用源。)。

如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位复位,可禁止ALE操作。该位置复位后,只有一条MOVX和MOVC指令才能将ALE激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。

?错误!未找到引用源。:程序储存允许(错误!未找到引用源。)输出是外部程序存储器的读选通信号,当89C5X单片机由外部程序存储器取指令(或数据)时,每个

机器周期两次错误!未找到引用源。有效,即输出两个脉冲。在次期间,当访问外部数据存储器,将跳过两次信号。

? VPP:外部访问允许。欲使CPU仅访问外部程序存储器(地址为0000H-FFFH),端必须保持低电平(接地)。需要注意的是:如果加密位LB1被编程,复位时内部会锁存端状态。

如端为高电平(接Vcc端),CPU则执行内部程序存储器中的指令。

Flash存储器编程时,该引脚加上+12V的编程允许电源Vpp,当然这必须是该器件是使用12V编程电压Vpp。

?XTAL1:振荡器反相放大器及内部时钟发生器的输入端。

?XTAL2:振荡器反相放大器的输出端。

2.2 数模转换器的简介

实现AD转换的基本方法很多,有计数法、逐次逼近法、双斜积分法和并行转换法。由于逐次逼近式AD转换具有速度,分辨率高等优点,而且采用这种方法的ADC芯片成本低,所以我们采用逐次逼近式AD转换器。逐次逼近型ADC包括1个比较器、一个模数转换器、1个逐次逼近寄存器(SAR)和1个逻辑控制单元。逐次逼近型是将采样信号和已知电压不断进行比较,一个时钟周期完成1位转换,依次类推,转换完成后,输出二进制数。这类型ADC的分辨率和采样速率是相互牵制的。优点是分辨率低于12位时,价格较低,采样速率也很好。

ADC0832模数转换器具有8位分辨率、双通道AD转换、输入输出电平与TTLCMOS 相兼容、5V电源供电时输入电压在0~5V之间、工作频率为250KHZ 、转换时间为32 微秒、一般功耗仅为15MW等优点,适合本系统的应用,所以我们采用ADC0832为模数转换器件。

ADC0832 具有以下特点:

? 8位分辨率;

?双通道AD转换;

?输入输出电平与TTLCMOS相兼容;

? 5V电源供电时输入电压在0~5V之间;

?工作频率为250KHZ,转换时间为32μS;

?一般功耗仅为15mW;

? 8P、14P—DIP(双列直插)、PICC 多种封装;

?商用级芯片温宽为0度 to +70度,工业级芯片温宽为?40度 to +85度;芯片接口说明:

? CS_ 片选使能,低电平芯片使能。

? CH0 模拟输入通道0,或作为IN+-使用。

? CH1 模拟输入通道1,或作为IN+-使用。

? GND 芯片参考0 电位(地)。

? DI 数据信号输入,选择通道控制。

? DO 数据信号输出,转换数据输出。

? CLK 芯片时钟输入。

? VccREF 电源输入及参考电压输入(复用)。

ADC0809是采样分辨率为8位的、以逐次逼近原理进行模—数转换的器件。其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行AD转换。

主要特点:

DC0809是CMOS单片型逐次逼近式AD转换器,内部结构如图13.22所示,它由8路模拟开关、地址锁存与译码器、比较器、8位开关树型DA转换器、逐次逼近,ADC0809芯片有28条引脚,采用双列直插式封装,下面说明各引脚功能:

IN0~IN7:8路模拟量输入端。

?8位数字量输出端。

?ADDA、ADDB、ADDC:3位地址输入线,用于选通8路模拟输入中的一路

?ALE:地址锁存允许信号,输入,高电平有效。

?START: AD转换启动脉冲输入端,输入一个正脉冲(至少100ns宽)使其启动(脉冲上升沿使0809复位,下降沿启动AD转换)。

?EOC: AD转换结束信号,输出,当AD转换结束时,此端输出一个高电平(转换期间一直为低电平)。

?OE:数据输出允许信号,输入,高电平有效。当AD转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。

?CLK:时钟脉冲输入端。要求时钟频率不高于640KHZ。

?REF(+)、REF(-):基准电压。

?Vcc:电源,单一+5V。

?GND:地。

2.3 液晶显示器的简介

带中文字库的128X64是一种具有4位8位并行、2线或3线串行多种接口方式,内部含有国标一级、二级简体中文字库的点阵图形液晶显示模块;其显示分辨率为128×64, 内置8192个16*16点汉字,和128个16*8点ASCII字符集.利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。可以显示8×4行16×16点阵的汉字. 也可完成图形显示.低电压低功耗是其又一显著特点。由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简洁得多,且该模块的价格也略低于相同点阵的图形液晶模块;基本特性: 低电源电压(VDD:+3.0--+5.5V)(2)、显示分辨率:128×64点

?内置汉字字库,提供8192个16×16点阵汉字(简繁体可选)

?内置 128个16×8点阵字符,2MHZ时钟频率

?显示方式:STN、半透、正显,驱动方式:132DUTY,15BIAS

?视角方向:6点,背光方式:侧部高亮白色LED,功耗仅为普通LED的15—110 ?通讯方式:串行、并口可选,内置DC-DC转换电路,无需外加负压

?无需片选信号,简化软件设计,工作温度: 0度 - +55度 ,存储温度: -20度 - +60度。

LCD1602字符型液晶显示器其用法:

?单5V电源电压,低功耗、长寿命、高可靠性

?内置192种字符(160个5×7点阵字符和32个5×10点阵字符)

?具有64个字节的自定义字符RAM,可自定义8个5×8点阵字符或4个5×11点阵字符

?显示方式:STN、半透、正显

?驱动方式:116并口,15串口

?背光方式:底部LED

?通讯方式:4位或8位并口可选

?标准的接口特征:适配MC51和M6800系统MPU的操作时序

LCD1602液晶显示屏的主要技术参数如下表所示:(表2-3)

表2-3 LCD1602液晶主要参数

显示容量16×2个字符

芯片工作电压 4.5~5.5V

工作电流 2.0mA(5.0V)

模块最佳工作电压 5.0V

字符尺寸 2.95×4.35(mm)

第三章总体方案设计

在这次的整体设计中主要涉及下面几个方面(如图3.1):

图3.1 整体方案结构图

下面介绍各个模块使用的器件:

3.1 STC89C52单片机

STC89C52是的低电压,高性能CMOS 8位单片机,片内含8K bytes的可反复擦写的只读程序存储器(PEROM)和256K bytes的随机存取数据存储器,器件采用高密度,非易失性存储技术生产,与标准MCS-51指令系统及8051产品引脚兼容,片内置通用8位中央处理器和FLASH存储单元,功能强大,STC89C52单片机适合于许多较为复杂控制应用场合。

主要性能参数:

?8K字节可重擦写FLASH闪存存储器

?1000次写擦循环

?时钟频率:0Hz—24MHz

?三级加密存储器

?256字节内部RAM

?32个可编程IO口线

?3个16位定时计数器

?6个中断源

?可编程串行UART通道

?低功耗的空闲和掉电模式

?片内振荡器和时钟电路

3.2 ADC0832数模转换

ADC0832 为8位分辨率AD转换芯片,其最高分辨可达256级,可以适应一般的模拟量转换要求。其内部电源输入与参考电压的复用,使得芯片的模拟电压输入在0~5V 之间。芯片转换时间仅为32μS,据有双数据输出可作为数据校验,以减少数据误差,转换速度快且稳定性能强。独立的芯片使能输入,使多器件挂接和处理器控制变的更加方便。通过DI 数据输入端,可以轻易的实现通道功能的选择。

3.3 LCD1602液晶显示

LCD1602字符型液晶显示模块是一种专门用于显示字母、数字、符号等点阵式LCD,目前常用16×1,16×2,20×2和40×2行等的液晶显示模块,模块组件内部主要由LCD显示屏、控制器、列驱动器和偏压产生电路构成。

LCD1602液晶显示屏外形尺寸

LCD1602液晶显示屏分为带背光和不带背光两种,基控制器大部分为HD44780,带背光的比不带背光的厚,是否带背光在应用中并无差别,两者尺寸差别如图3.2所示:

图3.2 LCD1602尺寸图

1602液晶显示屏采用标准的16脚接口,其中各接口的功能如下表(2-4)所示:

表2-4 LCD1602的16管脚功能

引脚号引脚名电平输入输出引脚说明

1 VSS 电源地

2 VDD 电源正极(+5V)

3 VL 液晶显示偏压信号

4 RS 01 输入数据命令选择端,0:输入指令,1:

输入数据

5 RW 01 输入读写选择端,0:向LCD写入指令或数据,1:从LCD读取信息

6 E 1→0 输入使能信号,1时读取信息,1→0(下降

沿)执行指令

7 D0 01 输入输出数据总线(最低位)

8 D1 01 输入输出数据总线

9 D2 01 输入输出数据总线

10 D3 01 输入输出数据总线

11 D4 01 输入输出数据总线

12 D5 01 输入输出数据总线

13 D6 01 输入输出数据总线

14 D7 01 输入输出数据总线(最高位)

15 BLA +VCC LCD背光电源正极

16 BLK 接地LCD背光电源负极

第1脚:VSS为地电源。

第2脚:VDD接5V正电源。

第3脚:VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会使屏幕显示不清晰,使用时可以通过一个10K的电位器调整对比度。

第4脚:RS为数据命令选择端,高电平时选择数据寄存器、低电平时选择指令寄存器。

第5脚:RW为读写选择端,高电平时进行读操作,低电平时进行写操作。当RS和RW共同为低电平时可以写入指令或者显示地址,当RS为低电平RW为高电平时可以读忙信号,当RS为高电平RW为低电平时可以写入数据。

第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。

第7~14脚:D0~D7为8位双向数据线。

第15脚:背光源正极。

第16脚:背光源负极。

第四章硬件设计

4.1 最小系统的实现

在本次设计中我们采用STC89C51来实现一个单片机系统能运行起来的需求最小的系统,电路图见图4.1

图4.1单片机最小系统图

上图由晶振电路和复位电路,STC89C51芯片组成,构成最小的单片机系统,下面详细介绍其中的两个电路。

晶振电路

单片机工作的过程中各指令的微操作在时间上有严格的次序,这种微操作的时间次序称作时序,单片机的时钟信号用来为单片机芯片内部各种微操作提供时间基准,89c52的时钟产生方式有两种,一种是内部时钟方式,一种是外部时钟方式。内部时钟方式即在单片机的外部接一个晶振电路与单片机里面的振荡器组合作用产生时钟脉冲信号,外部时钟方式是把外部已有的时钟信号引入到单片机内,此方式常用于多片89C52单片机同时工作,以便于各单片机的同步,一般要求外部信号高电平的持续时间大于20ns.且为频率低于12MHz的方波。对于CHMOS工艺的单片机,外部时钟要由XTAL1端引入,而XTAL2端应悬空。

本系统中为了尽量降低功耗的原则,采用了内部时钟方式。

电路图见图4.2:

图4.2晶振电路图

在89C52单片机的内部有一个震荡电路,只要在单片机的XTAL1和XTAL2引脚外接石英晶体(简称晶振)就构成了自激振荡器并在单片机内部产生时钟脉冲信号,图中电容器C1和C2稳定频率和快速起振,电容值在5—30pF,典型值是22pF,晶振CYS选择的是12MHz。

复位电路

单片机开始工作的时候,必须处于一种确定的状态,否则,不知哪是第一条程序和如何开始运行程序。端口线电平和输入输出状态不确定可能使外围设备误动作,导致严重事故的发生;内部一些控制寄存器(专用寄存器)内容不确定可能导致定时器溢出、程序尚未开始就要中断及串口乱传向外设发送数据……..因此,任何单片机在开始工作前,都必须进行一次复位过程,使单片机处于一种确定的状态。

当在89C52单片机的RST引脚引入高电平并保持2个机器周期时,单片机内部就执行复位操作(若该引脚持续保持高电平,单片机就处于循环复位状态)。

实际应用中,复位操作有两种基本形式:一种是上电复位,另一种是上电与按键均有效的复位,上电复位,要求接通电源后,单片机自动实现复位操作。常用的上电复位,上电瞬间RST引脚获得高电平,随着电容C1的充电,RST引脚的高电平将逐渐下降。

本设计中复位电路采用的是开关复位电路,开关S9未按下是上电复位电路,上电复位电路在上电的瞬间,由于电容上的电压不能突变,电容处于充电(导通)状态,故RST脚的电压与VCC相同。随着电容的充电,RST脚上的电压才慢慢下降。选择合理的充电常数,就能保证在开关按下时是RST端有两个机器周期以上的高电平从而使STC89C52内部复位。开关按下时是按键手动复位电路,RST端通过电阻与VCC电源接通,通过电阻的分压就可以实现单片机的复位。电路图见图4.3:

图4.3 复位电路图

RST引脚的高电平只要能保持足够的时间(2个机器周期),单片机就可以进行复位操作。该电路典型的电阻和电容参数为:晶振为12MHz时,C1为10uF:R4为8.2 .

4.2 数据采集设计

(1)从传感器过来的电压信号,必须放大,滤波,采集,转换才能被MCU识别和处

理。由于假若每一路都设置放大、滤波等器件,那么成本会很大,所以信号的采集一般

用多路模拟通路进行选择。然而选择多路模拟开关时必须考虑以下的几个因素:通道数

量、切换速度、开关电阻和器件的封装形式。总之数据采集与硬件的选择有很大的关系。

(2)传感器的选择

酒精浓度传感器由MQ3传感器组成。MQ3传感器MQ3模块详细介绍如下表4-1:

(3)测量电路

测量电路由酒精浓度传感器MQ3,ADC0832组成。

酒精传感MQ3经AD0832与STC89C52单片机相连,在显示器上显示出酒精的浓度值,

当超过国家规定的标准时报警。

表4-1 传感器参数表

名称MQ3传感器

A.标准工作条件

符号参数名称技术条件备注

Vc 回路电压≤15V AC or DC

V

加热电压 5.0V±0.2V AC or DC H

负载电阻可调

R

L

R

加热电阻31Ω±3Ω室温H

加热功耗≤900mW

P

H

B.环境条件

符号参数名称技术条件备注

Tao 使用温度-10℃-50℃

Tas 储存温度-20℃-70℃

RH 相对湿度小于95% RH

最小值大于2%

氧气浓度21%(标准条件)

O

2

氧气浓度会影响灵敏

度特性

C.灵敏特性

符号参数名称技术参数备注

Rs 敏感体电阻 1MΩ- 8 MΩ

(200ppm

alcohol ) 适用范围:Alcohol

α

(200100)alcohol 浓度斜率≤0.6

标准工作条件温度: 20℃±2℃

Vc:5.0V±0.1V

相对湿度:65%±5% Vh:

5.0V±0.1V

预热时间不少于24小时

4.3 AD转换设计

正常情况下ADC0832 与单片机的接口应为4条数据线,分别是CS、CLK、DO、DI。但由于DO端与DI端在通信时并未同时有效并与单片机的接口是双向的,所以电路设计时可以将DO和DI 并联在一根数据线上使用。当ADC0832未工作时其CS输入端应为高电平,此时芯片禁用,CLK 和DODI 的电平可任意。当要进行AD转换时,须先将CS使能端置于低电平并且保持低电平直到转换完全结束。此时芯片开始转换工作,同时由处理器向芯片时钟输入端CLK 输入时钟脉冲,DODI端则使用DI端输入通道功能选择的数据信号。在第1 个时钟脉冲的下沉之前DI端必须是高电平,表示启始信号。在第2、3个脉冲下沉之前DI端应输入2 位数据用于选择通道功能.如图4.4:

图4.4 模数转换电路图

4.4 LCD1602液晶显示设计

LCD1602液晶显示模块与计算机的接口电路有两种方式。它与单片机的接口方法分为直接访问方式和间接控制方式。

直接访问方式是把液晶模块作为存储器或IO设备直接接在单片机的总线上,单片机以访问存储器或IO设备的方式操作液晶显示模块的工作。间接控制方式则不使用单片机的数据系统,而是利用它的I0口来实现与显示模块的联系。即将液晶显示模块的数据线与单片机的P0口连接作为数据总线,另外三根时序控制信号线通常利用单片机的P2口中未被使用的IO口来控制。这种访问方式不占用存储器空间,它的接口电路与时序无关,其时序完全靠软件编程实现。本系统采用间接控制方式:

以下为液晶显示电路接线原理图见图4.8:

图4.8 液晶电路图

在单片机系统中应用液晶显示器作为输出器件有以下几个有点:

显示质量高:由于液晶显示器每一个点在收到信号后就一直保持那种色彩和亮度,恒定发光,而不像阴极射线管显示器(CRT)那样需要不断刷新新亮点。因此,液晶显示器画质高且不会闪烁。

数字式接口:液晶显示器都是数字式的,和单片机系统的接口更加简单可靠,操作更加方便。

体积小、重量轻:液晶显示器通过显示屏上的电极控制液晶分子状态来达到显示的目的,在重量上比相同显示面积的传统显示器要轻的多。

功耗低:相对而言,液晶显示器的功耗主要消耗在其内部的电极和驱动IC上,因而耗电量比其他显示器要少的多。

在主电路图中接在P0口处有一个排阻RP1 ,由于P0口没有内接上拉电阻,为了为P0口外接线路有确定的高电平,所以要接上排阻RP1,使用的是10K的排阻,以确保有P0口有稳定的电平。电路连接图见图4.9:

LCD按其显示方式通常可以分为断式、点字符式、点阵式等。还有黑白、多灰度、彩色显示等。液晶显示原理是利用液晶的物理特性,通过电压对其显示区域进行控制,有电就显示黑色,这样就可以显示出图形。针对于本系统要显示汉字,字母,数字等,以及其在一个界面同时要显示的字数,本系统要以图形的形式显示各运行结果,我们最终选择LCD1602型号的LCD。⑵字符显示:字符显示比较复杂,一个字符由16x8点阵组成,即要找到和显示屏是某几个位置对应的RAM区的字节,再使不同的位置为‘1’其他的为‘0’;为‘1’的点亮,为‘0’的不亮,这样就显示出一个字符。

相关文档
最新文档