下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第一章研究内容TGS822对酒精浓度的变化,其阻值产生相应的变化,然后通过取样电阻分压的变化表现出来;人体血液酒精浓度的不同,其呼出的气体中酒精浓度也不同。通过 TGS822对 呼出气体中酒精浓度的反应以取样电压的形式送入到 ADC0809,进行A/D转换后并将转 换的数据送入单片机进行分析处理,并判断是否醉酒驾车,再通过液晶板显示出来。DS18B20其自身的温度传感器所产生的温度数字数据存入其自身的存储器,单片机对其控制读出温度数据,然后经过计算处理,将当前环境温度由液晶板输出。第2章总体设计2.1 本课题的设计任务及要求2.1.1 设计任务设计并制作酒精测试仪,具组成如图2.1所示。TGS
2、822对酒精浓度的变化,其阻俏产 生相应的变化,然后通过取样电阻分压的变化表现出来;人体血液酒精浓度的不同,其呼 出的气体中酒精浓度也不同。通过 TGS822对呼出气体中酒精浓度的反应以取样电压的形式送入到ADC0809,进行A/D转换后并将转换的数据送入单片机进行分析处理,并判断 是否醉酒驾车,再通过液晶板显示出来。DS18B20其自身的温度传感器所产生的温度数字数据存入其自身的存储器,单片机对2.控制输出其控制读出温度数据,然后经过计算处理,将当前环境温度由液晶板输出LCD显示输出(2)模数转换芯片ADC0809采样电压范围为0-5V,分辨率为8位,采样精度为5/256V, 达到256个量
3、化级的数字电压,其工作频率为 1MHz;(3)单片机 AT89C52工作频率为6 MHz;(4) LCD显示器用50K的可调电阻调节使其清晰显示,消除“鬼影”。2.2 系统整机原理图分析如图2.2系统整机原理图,本系统工作原理如下:单片机的晶振为6MHz,可以直接通过ALE 口输出1 MHz为ADC0809作为工作时钟而不需要进行分频,然后通过单片机的 P2.0、P3.7分另I控制ADC0809的ALE和START端口进行模数转换;通过P2.2、P2.3、P2.5 分另I控制ADDB、ADDC、ADDA端口进行选择模拟数据输入口 ; 通过P0 口进行ADC0809 数据输出。TGS822的采样
4、电压由ADC0809的IN0 口输入,通过转换后由其 D0-D7输出 到单片机的P0 口,然后通过传感器的特性公式计算由 P1 口将数据通过LCD的DB0-DB7 输出。第3章系统硬件设计3.1 系统硬件设计原理图分析本硬件由五部分组成:单片机模块,模数转换模块,酒精传感器模块,温度传感模块。 其系统硬件设计原理图如图3.2所示,其整机工作原理如下,本系统由单片机AT89C2控制,其直接控制三个模块:数转换模块将酒精传感器采集到模拟电压信号转换成输送到单 片机控制处理,温度传感器DS18B20可以将采集到的温度信号直接以数字信号的形式传到 单片机,LCD显示模块可以将经过单片机处理过的酒精气体
5、浓度和温度的具体量化值显 示。图3.1系统硬件设计原理图3.2 单片机模块单片机的选择AT89S52是低功耗、高性能、采用CMOS工艺的8位单片机,具片内具有8KB的可在线 编程的Flash存储器。该单片机采用了 ATMEL公司的高密度、非易失性存储器技术,与工 业标准型80C51单片机的指令系统和引脚完全兼容;片内的 Flash储器可在线重新编程, 或者使用通用的非易失性存储器编程;通用的 8位CPU与在线可编程Flashft成在一块芯片 上,从而使AT89S52功能更加完善,应用更加灵活;具有较高的性能价格比,使其在嵌入 式控制系统中有着广泛的应用前景。MCS单片机都采用40引脚的双列直插
6、封装方式。下图为引脚排列图,40条引脚说明如下:1 .主电源引脚Vss和Vcc(1) Vss接地(2) Vcc正常操作时为+5伏电源2 .外接晶振引脚XTAL1和XTAL2(1) XTAL1内部振荡电路反相放大器的输入端,是外接晶体的一个引脚。当采用外 部振荡器时,此引脚接地。(2) XTAL2内部振荡电路反相放大器的输出端。是外接晶体的另一端。当采用外部 振荡器时,此引脚接外部振荡源。3 .控制或与其它电源复用引脚 RST/VPD , ALE/和/Vpp(1) RST/VPD当振荡器运行时,在此引脚上出现两个机器周期的高电平(由低到高 跳变),将使单片机复位在Vcc掉电期间,此引脚可接下图8
7、051引脚排列图上备用电源, 由VPD向内部提供备用电源,以保持内部 RAM中的数据。(2) ALE/正常操作时为ALE功能(允许地址锁存)提供把地址的低字节锁存到外部锁存器,ALE引脚以不变的频率(振荡器频率的)周期性地发出正脉冲信号。因此,它 可用作对外输出的时钟,或用于定时目的。但要注意,每当访问外部数据存储器时,将跳过一个ALE脉冲,ALE端可以驱动(吸收或输出电流)八个 LSTTL电路。对于EPROM型单片机,在EPROM编程期间,此引脚接收编程脉冲(功能)。(3)外部程序存储器读选通信号输出端,在从外部程序存储取指令(或数据)期间,在每个机器周期内两次有效,同样可以驱动八LSTTL
8、输入。(4) /Vpp、/Vpp为内部程序存储器和外部程序存储器选择端。当/Vpp为高电平时,访问内部程序存储器,当/Vpp为低电平时,则访问外部程序存储器。对于EPROM型单片机,在EPROM编程期间,此引脚上加 21伏EPROM编程电源(Vpp)。4、输入/输出引脚 P0.0 - P0.7, P1.0 - P1.7, P2.0 - P2.7, P3.0 - P3.7。(1) P0 口(P0.0 - P0.7)是一个8位漏极开路型双向I/O 口,在访问外部存储器时,它是分时传送的低字节地址和数据总线,P0 口能以吸收电流的方式驱动八个 LSTTL负载。(2) P1 口(P1.0 - P1Q是
9、一个带有内部提升电阻的8位准双向I/O 口。能驱动(吸收 或输出电流)四个LSTTL负载。(3) P2 口(P2.0 - P2.7)是一个带有内部提升电阻的 8位准双向I/O 口,在访问外部存储器时,它输出高8位地址。P2 口可以驱动(吸收或输出电流)四个LSTTL负载。(4) P3 口(P3.0 - P3Q是一个带有内部提升电阻的8位准双向I/O 口。能驱动(吸收 或输出电流)四个LSTTL负载。3.3 模数转换器模块ADC0809性能的介绍模数转换电路的功能是将连续变化的模拟量转换为离散的数字量,是架起模拟系统跟 数字系统之间连接的桥梁。对于本系统而言,就是用于快速、高精度地对输入的酒精浓
10、度 信号进行采样编码,将其转换成单片机所能够处理的数字量。模数转换电路是本系统的关 键部分,其性能的好坏直接影响整个系统的质量。 根据A/D转换器的工作原理可将A/D转 换器分成两大类:一类是直接型A/D转换器;另一类是间接型A/D转换器。在直接型A/D转 换器中,输入的模拟电压被直接转换成数字代码,不经任何中间变量。在间接型A/D转换器中,首先把输入的模拟电压转换成某种中间变量(时间、频率、脉冲宽度等等),然后再把这个中间变量转换为数字代码输出。1 .主要特性(1) 8路8位A/D转换器,即分辨率8位。(2)具有转换起停控制端。(3)转换时间为100产。(4)单个+5V电源供电。(5)模拟输
11、入电压范围0+5V,不需零点和满刻度校准。(6)工作温度范围为-40+85摄氏度。(7)低功耗,约15mW。2 .内部结构ADC0809由4部分逻辑结构构成,如图3.3所示。ADC0809是CMOS单片型逐次逼近式A/D转换器,它由8路模拟开关、地址锁存与 译码器、比较器、8位开关树型D/A转换器、逐次逼近寄存器、三态输出锁存器等其它一 些电路组成。因此,ADC0809可处理8路模拟量输入,且有三态输出能力,既可与各种微 处理器相连,也可单独工作。输入输出与 TTL兼容。3 .外部特性(引脚功能)ADC0809芯片有28条引脚,采用双列直插式封装,如图 3.3所示。下面说明各引脚 功能。IN0
12、IN7 : 8路模拟量输入端。2-12-8: 8位数字量输出端。ADDA、ADDB、ADDC : 3位地址输入线,用于选通8路模拟输入中的一路。ALE:地址锁存允许信号,输入,高电平有效。START: A/D转换启动信号,输入,高电平有效。EOC: A/D转换结束信号,输出,当 A/D转换结束时,此端输出一个高电平(转换 期间一直为低电平)。OE:数据输出允许信号,输入,高电平有效。当 A/D转换结束时,此端输入一个高 电平,才能打开输出三态门,输出数字量。CLK:时钟脉冲输入端。要求时钟频率不高于 640KHZ。REF ( + )、REF (-):基准电压。Vcc:电源,单 + 5V。GND
13、:地。4 . ADC0809的工作原理ADC0809的工作过程是:首先输入 3位地址,并使ALE=1 ,将地址存入地址锁存器 中。此地址经译码选通8路模拟输入之一到比较器。START上升沿将逐次逼近寄存器复位。 下降沿启动A/D转换,之后EOC输出信号变低,指示转换正在进行。直到 A/D转换 完成,EOC变为高电平,指示A/D转换结束,结果数据已存入锁存器,这个信号可用作 中断申请。当OE输入高电平 时,输出三态门打开,转换结果的数字量输出到数据总线上。图3.3 ADC0809系统内部结构框图和外部引脚图3.4 酒精传感器模块性能分析TGS822气体传感器的敏感材料是金属氧化物,最具代表性的是
14、SnO2。金属氧化物晶体 如SnO2在空气中被加热到一定高的温度时,氧被吸附在的带一个负电荷的晶体表面。然 后,晶体表面的供与电子被转移到吸附的氧上,结果在一个空间电荷层留下正电荷。 这样,表面势能形成一个势垒,从而阻碍电子流动。在传感器的内部,电流流过SnO2微晶的结合部位(晶粒边界)。在晶粒边界,吸附的 氧形成一个势垒阻止载流子自由移动, 传感器的电阻即缘于这种势垒。还原性气体出现时, 带有负电荷的氧的表面浓度降低,导致晶粒边界的势垒降低。降低了的势垒使传感器的阻 值减小了。传感器阻值和还原性气体浓度之间的关系可由下面的一定范围气体浓度方程表 示:Rs=AC- a这里:Rs= 传感器电阻A
15、=常数。=气体浓度a=Rs曲线的斜率费加罗气体传感器的气敏素子,使用在清洁空气中电导率低的SnO2o当存在检知对象 气体时,传感器的电导率随空气中气体浓度增加而增大。使用简单的电路即可将电导率的 变化,转换为与该气体浓度相对应的输出信号。TGS822传感器对酒精、有机溶剂灵敏度高,在酒精检测器等方面得到广泛使用。相同特性的TGS823,采用了陶瓷底座,可以在200c的高温气氛中使用。表3.3.1 TGS822性能参数一览表型号TGS822素子类型8系歹标准封装对象气体塑料、SUS双重金属网酒精、有机溶剂检测范围50 5000Ppm标准回路条件标准试验条件下的电学特性加热器电压VH5.0+0.2
16、V DC/AC回路电压VCMAX 24VPs< 15mw负裁电压加热器电压RLRH口艾Ps< 15mw38+3.0(室温)加热器功率PH660+50mwVH=5.0V传感器电阻RS300Ppm 乙醇中 1-10k灵敏度(Rs的变化率)0.4+0.1Rs(EtOH:300ppm)Rs(EtOH:50ppm)标准试验条件试验气体条件回路条件20+2 C , 65+5%RHVC=10.0+0.1V DC/ACVH=5.0+0.05V DC/AC预热条件七天以上感器电阻比(Rs/Ro)表示,这里的Rs, Ro定义如下:Rs=含300Ppm乙醇、各种温/湿度下的电阻值Ro=含 300Ppm
17、乙醇、20 c 65%R.H.下的电阻值表3.3.2血液与呼气酒精含量换算一览表序号呼出气体中酒精浓度mg/L呼出气体中酒精浓度10-6血液中酒精浓度 mg/100mL10.022711.85520.045423.691030.068135.531540.090947.432050.113659.282560.136371.133070.159183.023580.181894.864090.2045106.7145100.2272118.5650110.2500130.4555120.2727141.2660130.2954154.1565140.3181166.0070150.340917
18、7.8975160.3636189.7280170.3863201.1585180.4091213.4390190.4318225.3395200.4515237.12100210.6618355.68150220.9091474.24200车辆驾驶人员血液中的酒精含量大于或等于80mg/100ml的驾驶行为行为类别对??象临界值(mg/100ml)饮酒驾驶车辆驾驶人员20醉酒驾驶车辆驾驶人员803.4 LCD显示模块1602字符型LCD通常有14条引脚线或16条引脚线的LCD,多出来的2条线是背光 电源线VCC(15脚)和地线GND(16脚),其控制原理与14脚的LCD完全一样,其中: 引脚
19、符号功能说明1 VSS 一般接地2 VDD接电源(+5V)3 V0液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高(对 比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度)。4 RS RS为寄存器选择,高电平1时选择数据寄存器、低电平0时选择指令寄存器。5 R/W R/W为读写信号线,高电平(1)时进行读操作,低电平(0)时进行写操作。6 E E(或EN)端为使能(enable麻,下降沿使能。7 DB0底4位三态、双向数据总线0位(最低位)8 DB1底4位三态、双向数据总线9 DB2底4位三态、双向数据总线10 DB3底4位三态、双向数据总线11 DB4高4
20、位三态、双向数据总线12 DB5高4位三态、双向数据总线13 DB6高4位三态、双向数据总线14 DB7高4位三态、双向数据总线7位(最高位)(也是busy flang)15 BLA背光电源正极16 BLK背光电源负极寄存器选择控制表即为ASCII码表RS R/W操作说明写入指令寄存器(清除屏等) 都busy flag (DB7),以及读取位址计数器(DB0DB6)写入数据寄存器(显示各字型等) 从数据寄存器读取数据160个不同的点阵字符图1602液晶模块内部的字符发生存储器(CGROM)已经存储了形,这些字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等字符都有一个固定的代码,比
21、如大写的英文字母“A”的代码是01000001B (41H),显示时模块把地址41H中的点阵字符图形显示出来,我们就能看到字母“ A”。因为1602识别的是ASCII码,试验可以用ASCII码直接赋值,在单片机编程中还可以用字符型常量或变量赋值,如'A'。图3.4 LCD1602外部引脚图第4章系统软件延时4.1.2 LCD程序流程图是开始是否发录个戏©测试仪程序判断LCD是否忙碌液晶讪隰少痴接DB0_DB71单片机对LCD进行初四化,使工能进入号常工作状态,然后判断LCD是否处于忙碌状 态,如果是则继续判断,如若襁用他LCD ADC转换后计算出来的结果通过输出指令输
22、出, 并判断计算出的结果处于哪I状态.山肺出。#include<reg51.h>#include<intrins.h> sbit rs=P2A4; /LCD sbit rw=P2A7; sbit ep=P2A6;sbit ale=P2A0; /ADC0809 弓他的故居sbit start=P3A7;sbit oe=P3A5;sbit eoc=P3A6;sbit adda=P2A5;sbit addb=P2A2;sbit adc=P2A3;sbit light=P3A0;sbit DQ=P3A3; 伽蟒20中入脚定义醉酒驾驶sbit DE=P3A1;unsigned c
23、har tempL=0;unsigned char tempH=0;float temperature;unsigned char code dis1="WORK START"/状态显示unsigned char code dis2="ALCOHOL TEST"unsigned char code dis3="mg/100ml”;unsigned char code dis4="SAFE DRIVING"unsigned char code dis5="DRINK-DRIVING"unsigned cha
24、r code dis6="DRUNK DRIVING" void delay(unsigned char ms) 延时 1 unsigned char i,j;while(ms-) for(i=0;i<250;i+)for(j=0;j<50;j+) _nop_();_nop_();void delay2(unsigned int time ) 延时 2unsigned int n;n=0;while (n<time) n+; return;bit lcd_bz() /LCD 判忙bit result;rs=0;rw=1;ep=1;_nop_();_nop_
25、();result=(bit)(P0&0x80);ep=0;return result;lcd_wcmd(unsigned char cmd) /写指令数据到 LCDwhile(lcd_bz()rs=0;rw=0;ep=0;_nop_();_nop_();P0=cmd;_nop_();_nop_();ep=1;_nop_();_nop_();ep=0;lcd_pos(unsigned char pos) 设定显示位置lcd_wcmd(pos | 0x80);lcd_wdat(unsigned char dat) /写入显示数据到 LCDwhile(lcd_bz();rs=1;rw=0;
26、ep=0;P0=dat;_nop_();_nop_();ep=1;_nop_();_nop_();ep=0;lcd_init() /LCD 初始化lcd_wcmd(0x38);delay;lcd_wcmd(0x0c);delay;lcd_wcmd(0x06);delay;lcd_wcmd(0x01);delay;Init_DS18B20(void) /DS18B20 初始化unsigned char x=0;DQ=1;delay2(8);DQ=0;delay2(85);DQ=1;delay2(14);delay2(20);ReadOneChar(void) / 向 DS18B20 读一字节数据
27、unsigned char i=0;unsigned char dat=0;for(i=8;i>0;i-)DQ=1;delay2(1);DQ=0;dat>>=1;DQ=1;if(DQ)dat|=0x80;delay2(4);return(dat);WriteOneChar(unsigned char dat) /向 DS18B20 写一字节数据unsigned char i=0;for(i=8;i>0;i-)DQ=0;DQ=dat&0X01;delay2(5);DQ=1;dat>>=1;delay2(4);ReadTemperature(void)
28、/向 DS18B20 读温度值Init_DS18B20();WriteOneChar(Oxcc);WriteOneChar(0x44);delay2(125);Init_DS18B20();WriteOneChar(0xcc);WriteOneChar(0xbe);tempL=ReadOneChar();tempH=ReadOneChar();temperature=(tempH*256)+tempL)*0.0625;delay2(200);return(temperature);main()float x,y,k;unsigned int da,n,temp1,temp2,i,gw,sw,b
29、w,kw,xw;light=0;/数据初始化lcd_init();delay(3);lcd_pos(0);i=0;while(dis1i!='0')/显示开始工作lcd_wdat(dis1i);i+;lcd_pos(0x41);i=0;while(dis2i!='0')/显示开始测试lcd_wdat(dis2i); i+; delay(32);while(1)/无限循环测试 lcd_init(); 初始化 LCD ale=0; /初始化 ADC0809 start=0;adda=0;/定义TGS822信号输入引脚号addb=0;adc=0;_nop_();ale
30、=1; /启动 ADC0809start=1;_nop_(); start=0;_nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_();while(eoc=0); /判断ADC0809是否转换完毕 oe=1; /打开ADC0809数据锁存 _nop_();da=P1; /读取转换后数据 oe=0;/代入传感器性质公式进行计算y=(2550/da-10)/9.27;if(y>2.68)x=61.61-4.08*y;else if(y>2.38) x=139.3-33.3*y;else if(y>2.23) x=218.7-66.
31、7*y;else if(y>2.128) x=288.6-98*y;else if(y>2) x=262.88-85.9*y;else if(y>1.89) x=254.5-81.8*y;else if(y>1.62) x=450-185.2*y;else if(y>1.209) x=347.1-121.7*y;lse if(y>0.822)x=816.5-516.8*y;else if(y>0.635)x=1279.2-1069.5*y;elsex=2238.7-2580.6*y;if(da<=17)x=0;n=(int)(x/0.23698)
32、;gw=n%10+0x30;/取出所得数据个、十、百、千每位上的数,并转换对应的ASCII表中数据便于输出temp1=n/10;sw=temp1%10+0x30;temp2=temp1/10;bw=temp2%10+0x30;kw=temp2/10+0x30;lcd_pos(0x84); /设定小数点在LCD显示位置lcd_wdat(0x2e); /输入小数点if(n>=1000) 判断数据大小,按位输出lcd_pos(0x85);lcd_wdat(gw);lcd_pos(0x83);lcd_wdat(sw);lcd_pos(0x82);lcd_wdat(bw);lcd_pos(0x81);lcd_wdat(kw);else if(n>=100)lcd_pos(0x85);lcd_wdat(gw);lcd_pos(0x83);lcd_wd
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 机电重工业内控审计制度
- 熊猫债审计制度
- 现金贷风控制度
- 生产厂商内部审计制度
- 电信网络诈骗风控制度
- 电梯维保教育培训制度
- 监察审计任职制度
- 直销公司绩效考核制度
- 研发费用合规化审计制度
- 社保局审计稽核制度
- DB37∕T 5123-2018 预拌混凝土及砂浆企业试验室管理规范
- 济南地铁笔试题目及答案
- 袜子玩偶课件
- 水闸门操作知识培训课件
- GB/T 12137-2025气瓶气密性试验方法
- 2025年四川省拟任县处级领导干部任职资格试题及参考答案
- 肺气肿课件教学课件
- 外研版七年级英语下Unit 1 The secrets of happiness 书面表达 (含范文)
- 中式美学鉴赏讲解课件
- 冷板液冷标准化及技术优化白皮书
- 公司电力工程部管理制度
评论
0/150
提交评论