MQ-7一氧化碳传感器设计原理图及pcb图程序

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

MQ-7一氧化碳传感器模块设计原理图及其程序一氧化碳中毒的概述CO为无色、无味、无臭的气体,凡是碳或含碳物质在氧不充分时燃烧,均可产生CO。在使用柴炉、煤炉时,如通风系统不畅通,尤其是近年来煤气取暖器和煤气热水器使用不当使CO中毒大为增加。因为CO是无色、无味的气体,所以称之为“沉默的杀手”。人体吸入CO后,往往毫无知觉,甚至出现严重的症状后仍不知何故,从而继续处在高浓度的CO环境中,直至死亡。CO进入体内后,一部分与血红蛋白结合,引起血红蛋白氧运输量明显减少;另一部分直接与细胞线粒体内的细胞色素a3结合,抑制组织细胞内呼吸。故CO中毒时临床表现与血中HbCO水平可能不一致。简要说明:一、尺寸:32mmX22mmX27mm长X宽X高二、主要芯片:LM393、MQ-7气体传感器三、工作电压:直流5伏四、特点:1、具有信号输出指示。2、双路信号输出(模拟量输出及TTL电平输出)3、TTL输出有效信号为低电平。(当输出低电平时信号灯亮,可直接接单片机)4、模拟量输出0~5V电压,浓度越高电压越高。5、对一氧化碳具有很高的灵敏度和良好的选择性。6、具有长期的使用寿命和可靠的稳定性五、应用:用于家庭、环境的一氧化碳探测装置。适宜于一氧化碳、煤气等的探测。【标注说明】【原理图】【测试方式】1、传感器先预热20秒左右。2、将传感器放在无被测气体的地方,顺时针调节电位器,调节到指示灯亮,然后逆时针转半圈,调到指示灯不亮,然后接近被测气体,指示灯亮,离开被测气体,指示灯熄灭,就证明传感器是好的!【测试程序】实现功能:1、当测量浓度大于设定浓度时,单片机IO口输出低电平/********************************************************************实现功能:此版配套测试程序使用芯片:AT89S52晶振:11.0592MHZ波特率:9600编译环境:Keil作者:zhangxinchun淘宝店:汇诚科技【声明】此程序仅用于学习与参考,引用请注明版权和作者信息!*********************************************************************//********************************************************************说明:1、当测量浓度大于设定浓度时,单片机IO口输出低电平*********************************************************************/#includereg52.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;m0;m--)for(n=20;n0;n--)for(s=248;s0;s--);}/********************************************************************主函数*********************************************************************/voidmain(){while(1)//无限循环{LED=1;//熄灭P1.0口灯if(DOUT==0)//当浓度高于设定值时,执行条件函数{delay();//延时抗干扰if(DOUT==0)//确定浓度高于设定值时,执行条件函数{LED=0;//点亮P1.0口灯}}}}/********************************************************************结束*********************************************************************/【测试程序】*********************************************************************/#includereg52.h//头文件#defineucharunsignedchar//宏定义无符号字符型#defineuintunsignedint//宏定义无符号整型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;it;i++){for(j=13;j0;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);P2=0XFF;P0=seg7code[x];P2=wei[1];delay(80);P2=0XFF;P0=seg7code[c];P2=wei[2];delay(80);P2=0XFF;P0=seg7code[v];P2=wei[3];delay(80);P2=0XFF;}/*************************************************************************CLK振荡信号**************************************************************************/voidtimer0()interrupt1//定时器0工作方式1{TH0=(65536-2)/256;//重装计数初值TL0=(65536-2)%256;//重装计数初值CLK=!CLK;//取反}/*************************************************************************主函数**************************************************************************/voidmain(){TMOD=0X01;//定时器中断0CLK=0;//脉冲信号初始值为0TH0=(65536-2)/256;//定时时间高八位初值TL0=(65536-2)%256;//定时时间低八位初值EA=1;//开CPU中断ET0=1;//开T/C0中断TR0=1;while(1)//无限循环{ST=0;//使采集信号为低ST=1;//开始数据转换ST=0;//停止数据转换while(!EOC);//等待数据转换完毕OE=1;//允许数据输出信号AD0809=P1;//读取数据OE=0;//关闭数据输出允许信号if(AD0809=251)//电压显示不能超过5VAD0809=250;date=AD0809*20;//数码管显示的数据值,其中20为采集数据的毫安值xianshi();//数码管显示函数}}

1 / 10
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功