找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 11868|回复: 8
打印 上一主题 下一主题
收起左侧

DIY燃气报警器(电路+视频+程序)

  [复制链接]
跳转到指定楼层
楼主
ID:75013 发表于 2015-3-21 17:32 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 dashan 于 2015-3-21 17:36 编辑

配件列表:STC15F104W单片机一片,MQ-4燃气检测模块,5V有源蜂鸣器一个,S8550三极管一个,DC005电源插座一个,220u和104电容各一个,10K、200R、100R、10R电阻各一个,微动按键一个,发光二极管一个。

下面附上原理图。系统通电后,单片机控制发光隔3秒闪烁一次,表示系统运行正常。循环检测MQ-4模块是否发送低电平,如果是低电平表示检测到天然气。当检测到低电平后,控制蜂鸣器发出声音。按键是测试蜂鸣器是否正常发声。

下面是焊接好的样子。

下图是板子的背面

找一个塑料外壳

成品图。



下面附上源码:
/*********************************************************************************************
程序名: DIY燃气报警器
编写人: 栗玉金
编写时间: 2016年1月
硬件支持: STC15F104W 12MHz
接口说明: P3.2 工作状态灯,P3.3蜂鸣器 P3.4 MQ-4 P3.5微动按键 P3.0 P3.1下载接口
************************************************************************************************/
#include "stc15f2k60s2.h"
#include <intrins.h>
sbit LED = P3^2; //LED灯,工作状态灯
sbit BEEP =P3^3; //蜂鸣器
sbit MQ4 = P3^4; //天然气检测模块
sbit KEY = P3^5; //测试键
void DELAY_MS(unsigned int a){
unsigned char i, j;
while( --a != 0){
_nop_();
_nop_();
i = 12;
j = 169;
do
{
while (--j);
} while (--i);
}
}
main()
{
unsigned char iCount = 0;
int key_s = 0;//按下测试键的时间
//设置 P3.2口为退完输出,增加LED的电流
P3M1 = 0x00;
P3M0 = 0x04;
//初始喇叭为无声,LED为灭
BEEP = 1;
LED = 0;
while(1)
{
DELAY_MS(100);
if(MQ4==0)//当浓度高于设定值时 ,执行条件函数
{
DELAY_MS(20);//延时抗干扰
if(MQ4==0)//确定 浓度高于设定值时 ,执行条件函数
{
//报警
BEEP = 0;
DELAY_MS(100);
BEEP = 1;
DELAY_MS(100);
BEEP = 0;
DELAY_MS(100);
BEEP = 1;
DELAY_MS(100);
BEEP = 0;
DELAY_MS(500);
BEEP = 1;
DELAY_MS(200);
}
}
iCount ++;
if(iCount == 30)
{
iCount = 0;
//隔3秒 LED闪烁一下,表示正在正常工作中。
LED = 1;
DELAY_MS(100);
LED = 0;
}
if(KEY==0){
key_s++;
if(key_s>=30) //按下测试键超过 3秒
{
key_s=0;
while(KEY==0){
BEEP = 0;
}
BEEP = 0;
DELAY_MS(1000);
BEEP = 1;
}
}
if(KEY==1 && key_s<30)
key_s=0;

}
}




评分

参与人数 2黑币 +10 收起 理由
nhdjd + 5 共享资料的黑币奖励!
ssfc + 5 很给力!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏6 分享淘帖 顶2 踩
回复

使用道具 举报

沙发
ID:68477 发表于 2015-4-12 15:03 | 只看该作者
不错。
回复

使用道具 举报

板凳
ID:73463 发表于 2015-4-12 19:52 | 只看该作者
天然气可以用吗?你那个测量烟雾 的传感器叫什么名字
回复

使用道具 举报

地板
ID:77417 发表于 2015-4-19 10:37 来自手机 | 只看该作者
编写时间:2016年!还没到呢
回复

使用道具 举报

5#
ID:72649 发表于 2015-4-20 05:55 | 只看该作者
谢谢分享
回复

使用道具 举报

6#
ID:79544 发表于 2015-10-6 11:30 | 只看该作者
不错很实用,再加上个驱动电磁阀的就可以关断燃气管路啦。
回复

使用道具 举报

7#
ID:307837 发表于 2018-4-14 11:44 | 只看该作者
想做一个。。。
回复

使用道具 举报

8#
ID:246618 发表于 2020-10-26 14:41 | 只看该作者
头文件怎么会编译不过
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表