MQ4甲烷天然气传感器设计原理图及其程序Word文件下载.docx
- 文档编号:14433603
- 上传时间:2022-10-22
- 格式:DOCX
- 页数:14
- 大小:2.36MB
MQ4甲烷天然气传感器设计原理图及其程序Word文件下载.docx
《MQ4甲烷天然气传感器设计原理图及其程序Word文件下载.docx》由会员分享,可在线阅读,更多相关《MQ4甲烷天然气传感器设计原理图及其程序Word文件下载.docx(14页珍藏版)》请在冰豆网上搜索。
【测试方式】
1、传感器先预热20秒左右。
2、将传感器放在无被测气体的地方,顺时针调节电位器,调节到指示灯亮,然后逆时针转半圈,调到指示灯不亮,然后接近被测气体,指示灯亮,离开被测气体,指示灯熄灭,就证明传感器是好的!
【测试程序】
实现功能:
1、当测量浓度大于设定浓度时,单片机IO口输出低电平
/********************************************************************
实现功能:
此版配套测试程序
使用芯片:
AT89S52
晶振:
11.0592MHZ
波特率:
9600
编译环境:
Keil
作者:
zhangxinchun
淘宝店:
汇诚科技
【声明】此程序仅用于学习与参考,引用请注明版权和作者信息!
*********************************************************************/
说明:
#include<
reg52.h>
//库文件
#defineucharunsignedchar//宏定义无符号字符型
#defineuintunsignedint//宏定义无符号整型
I/O定义
sbitLED=P1^0;
//定义单片机P1口的第1位(即P1.0)为指示端
sbitDOUT=P2^0;
//定义单片机P2口的第1位(即P2.0)为传感器的输入端
延时函数
voiddelay()//延时程序
{
ucharm,n,s;
for(m=20;
m>
0;
m--)
for(n=20;
n>
n--)
for(s=248;
s>
s--);
}
主函数
voidmain()
while
(1)//无限循环
{
LED=1;
//熄灭P1.0口灯
if(DOUT==0)//当浓度高于设定值时,执行条件函数
delay();
//延时抗干扰
if(DOUT==0)//确定浓度高于设定值时,执行条件函数
LED=0;
//点亮P1.0口灯
}
}
}
结束
#include<
//头文件
#defineucharunsignedchar//宏定义无符号字符型
codeucharseg7code[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
//显示段码数码管字跟
ucharwei[4]={0XEf,0XDf,0XBf,0X7f};
//位的控制端//位控制码
sbitST=P3^0;
//A/D启动转换信号
sbitOE=P3^1;
//数据输出允许信号
sbitEOC=P3^2;
//A/D转换结束信号
sbitCLK=P3^3;
//时钟脉冲
uintz,x,c,v,AD0809,date;
//定义数据类型
/******************************************************************
延时函数
******************************************************************/
voiddelay(uchart)
uchari,j;
for(i=0;
i<
t;
i++)
for(j=13;
j>
j--);
{;
/**********************************************************************
数码管动态扫描
voidxianshi()//显示函数
{
uintz,x,c,v;
z=date/1000;
//求千位
x=date%1000/100;
//求百位
c=date%100/10;
//求十位
v=date%10;
//求个位
P2=0XFF;
P0=seg7code[z]&
0x7f;
P2=wei[0];
delay(80);
P0=seg7code[x];
P2=wei[1];
P0=seg7code[c];
P2=wei[2];
P0=seg7code[v];
P2=wei[3];
/*************************************************************************
CLK振荡信号
**************************************************************************/
voidtimer0()interrupt1//定时器0工作方式1
TH0=(65536-2)/256;
//重装计数初值
TL0=(65536-2)%256;
CLK=!
CLK;
//取反
主函数
voidmain()
{
TMOD=0X01;
//定时器中断0
CLK=0;
//脉冲信号初始值为0
//定时时间高八位初值
//定时时间低八位初值
EA=1;
//开CPU中断
ET0=1;
//开T/C0中断
TR0=1;
while
(1)//无限循环
ST=0;
//使采集信号为低
ST=1;
//开始数据转换
//停止数据转换
while(!
EOC);
//等待数据转换完毕
OE=1;
//允许数据输出信号
AD0809=P1;
//读取数据
OE=0;
//关闭数据输出允许信号
if(AD0809>
=251)//电压显示不能超过5V
AD0809=250;
date=AD0809*20;
//数码管显示的数据值,其中20为采集数据的毫安值
xianshi();
//数码管显示函数
【ADC0809资料】
ADC0809中文资料
1.主要特性 1)8路8位A/D转换器,即分辨率8位。
2)具有转换起停控制端。
3)转换时间为100μs 4)单个+5V电源供电 5)模拟输入电压范围0~+5V,不需零点和满刻度校准。
6)工作温度范围为-40~+85摄氏度 7)低功耗,约15mW。
2.内部结构 ADC0809是CMOS单片型逐次逼近式A/D转换器,内部结构如图13.22所示,它由8路模拟开关、地址锁存与译码器、比较器、8位开关树型D/A转换器、逐次逼近 ADC0809内部结构框图寄存器、三态输出锁存器等其它一些电路组成。
因此,ADC0809可处理8路模拟量输入,且有三态输出能力,既可与各种微处理器相连,也可单独工作。
输入输出与TTL兼容。
3.外部特性(引脚功能) ADC0809芯片有28条引脚,采用双列直插式封装,下面说明各引脚功能。
IN0~IN7:
8路模拟量输入端。
2-1~2-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:
地。
ADC0809的工作过程是:
首
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MQ4 甲烷 天然气 传感器 设计 原理图 及其 程序