基于单片机的酒精测试仪设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第一章研究内容
TGS822对酒精浓度的变化,其阻值产生相应的变化,然后通过取样电阻分压的变化表现出来;人体血液酒精浓度的不同,其呼出的气体中酒精浓度也不同。通过TGS822对呼出气体中酒精浓度的反应以取样电压的形式送入到ADC0809,进行A/D转换后并将转换的数据送入单片机进行分析处理,并判断是否醉酒驾车,再通过液晶板显示出来。
DS18B20其自身的温度传感器所产生的温度数字数据存入其自身的存储器,单片机对其控制读出温度数据,然后经过计算处理,将当前环境温度由液晶板输出。
第2章 总体设计
2.1 本课题的设计任务及要求
2.1.1 设计任务
设计并制作酒精测试仪,其组成如图2.1所示。TGS822对酒精浓度的变化,其阻值产生相应的变化,然后通过取样电阻分压的变化表现出来;人体血液酒精浓度的不同,其呼出的气体中酒精浓度也不同。通过TGS822对呼出气体中酒精浓度的反应以取样电压的形式送入到ADC0809,进行A/D 转换后并将转换的数据送入单片机进行分析处理,并判断是否醉酒驾车,再通过液晶板显示出来。
DS18B20其自身的温度传感器所产生的温度数字数据存入其自身的存储器,单片机对其控制读出温度数据,然后经过计算处理,将当前环境温度由液晶板输出。
图2.1
(1)传感器TGS822
的电压模拟输出范围为0-5V ;
(2)模数转换芯片ADC0809采样电压范围为0-5V ,分辨率为8位,采样精度为5/256V ,达到256个量化级的数字电压,其工作频率为1MHz;
(3)单片机AT89C52工作频率为6 MHz ;
(4)LCD 显示器用50K 的可调电阻调节使其清晰显示,消除“鬼影”。
数字输出 控制输出 模拟输出
2.2 系统整机原理图分析
如图2.2系统整机原理图,本系统工作原理如下:单片机的晶振为6MHz,可以直接通过ALE口输出1 MHz为ADC0809作为工作时钟而不需要进行分频,然后通过单片机的P2.0、P3.7分别控制ADC0809的ALE和START端口进行模数转换;通过P2.2、P2.3、P2.5分别控制ADDB、ADDC、ADDA端口进行选择模拟数据输入口;通过P0口进行ADC0809数据输出。TGS822的采样电压由ADC0809的IN0口输入,通过转换后由其D0-D7输出到单片机的P0口,然后通过传感器的特性公式计算由P1口将数据通过LCD的DB0-DB7输出。
第3章系统硬件设计
3.1系统硬件设计原理图分析
本硬件由五部分组成:单片机模块,模数转换模块,酒精传感器模块,温度传感模块。其系统硬件设计原理图如图3.2所示,其整机工作原理如下,本系统由单片机AT89C2控制,其直接控制三个模块:数转换模块将酒精传感器采集到模拟电压信号转换成输送到单片机控制处理,温度传感器DS18B20可以将采集到的温度信号直接以数字信号的形式传到单片机,LCD显示模块可以将经过单片机处理过的酒精气体浓度和温度的具体量化值显示。
图3.1系统硬件设计原理图
3.2单片机模块
单片机的选择
AT89S52是低功耗、高性能、采用CMOS工艺的8位单片机,其片内具有8KB 的可在线编程的Flash 存储器。该单片机采用了ATMEL公司的高密度、非易失性存储器技术,与工业标准型80C51单片机的指令系统和引脚完全兼容;片内的Flash存储器可在线重新编程,或者使用通用的非易失性存储器编程;通用的8位CPU与在线可编程Flash集成在一块芯片上,从而使AT89S52 功能更加完善,应用更加灵活;具有较高的性能价格比,使其在嵌入式控制系统中有着广泛的应用前景。
MCS单片机都采用40引脚的双列直插封装方式。下图为引脚排列图, 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掉电期间,此引脚可接下图8051引脚排列图上备用电源,由VPD向内部提供备用电源,以保持内部RAM中的数据。
(2) ALE/正常操作时为ALE功能(允许地址锁存)提供把地址的低字节锁存到外部锁存器,ALE 引脚以不变的频率(振荡器频率的)周期性地发出正脉冲信号。因此,它可用作对外输出的时钟,或用于定时目的。但要注意,每当访问外部数据存储器时,将跳过一个ALE脉冲,ALE 端可以驱动(吸收或输出电流)八个LSTTL电路。对于EPROM型单片机,在EPROM编程期间,此引脚接收编程脉冲(功能)。
(3)外部程序存储器读选通信号输出端,在从外部程序存储取指令(或数据)期间,在每个机器周期内两次有效,同样可以驱动八LSTTL输入。
(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 - P1.7)是一个带有内部提升电阻的8位准双向I/O口。能驱动(吸收或输出电流)四个LSTTL负载。
(3)P2口(P2.0 - P2.7)是一个带有内部提升电阻的8位准双向I/O口,在访问外部存储器时,它输出高8位地址。P2口可以驱动(吸收或输出电流)四个LSTTL负载。
(4)P3口(P3.0 - P3.7)是一个带有内部提升电阻的8位准双向I/O口。能驱动(吸收或输出电流)四个LSTTL负载。
3.3 模数转换器模块
ADC0809性能的介绍
模数转换电路的功能是将连续变化的模拟量转换为离散的数字量,是架起模拟系统跟数字系统之间连接的桥梁。对于本系统而言,就是用于快速、高精度地对输入的酒精浓度信号进行采样编码,将其转换成单片机所能够处理的数字量。模数转换电路是本系统的关键部分,其性能的好坏直接影响整个系统的质量。根据A/D 转换器的工作原理可将A/D 转换器分成两大类:一类是直接型A/D转换器;另一类是间接型A/D 转换器。在直接型A/D 转换器中,输入的模拟电压被直接转换成数字代码,不经任何中间变量。在间接型A/D 转换