功能介绍
本设计选用MQ-2烟雾传感器、温度传感器以及STM32F103单片机作为核心器件并与其他电子技术相结合,通过STM32F103单片机控制传感器对检测地点的烟雾进行实时检测,并把检测结果进行数据信息处理,可以实现浓度显示、报警及排气等功能。
系统框图
原理图
系统主程序设计及流程图
源代码
//C库 #include//单片机头文件 #include "sys.h" //硬件驱动 #include "delay.h" #include "usart.h" #include "mq2.h" #include "timer.h" #include "gui.h" #include "LCD.h" #include "key.h" #include "beep.h" #include "exti.h" #include "led.h" #include "adc.h" float value_mq2 = 0.0; //烟雾浓度变量 float value_max = 50; //阈值 //硬件初始化 void Hardware_Init(void) { u8 i = 10; NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置中断优先级分组为组2:2位抢占优先级,2位响应优先级 delay_init(); //延时函数初始化 LCD_Init(); //液晶屏初始化 LCD_Clear(GRAY0); //清屏 Gui_DrawFont_GBK16(3,10,BLUE,GRAY0,(u8 *)"系统正在初始化"); EXTIX_Init(); //外部中断初始化 Usart1_Init(115200); //串口1初始化为115200 LED_Init(); //LED灯初始化 KEY_Init(); //按键初始化 BEEP_Init(); //蜂鸣器初始化 ADCx_Init(); // ADC 初始化 //MQ2加热时间 while(i --) { delay_ms(20000); delay_ms(20000); } Gui_DrawFont_GBK16(4,30,RED,GRAY0,(u8*)"设备初始化完成"); } int main(void) { char str[] = ""; Hardware_Init(); //初始化外围硬件 GENERAL_TIM_Init(); //1MS系统定时 LCD_Clear(BLACK); //清屏 GUI_DrawRectangle(1, 1, 128-2, 128-2, WHITE); //边框 Gui_DrawFont_GBK16(25,4,BLACK,GRAY0,(u8 *)" 系统监控 "); Gui_DrawFont_GBK16(4,50,RED,BLACK,(u8 *)"阈值:50 ppm "); while(1) { /*MQ2传感器获取烟雾数据*/ value_mq2 = MQ2_GetPPM(); memset(str, 0, sizeof(str)); sprintf(str, "烟雾:%.2fppm ",value_mq2); Gui_DrawFont_GBK16(4,30,BLUE,BLACK,(u8 *)str);//显示 if(value_mq2 >= value_max)//判断是否超过阈值 { BEEP = 0; //超过阈值,蜂鸣器响叫 } else { BEEP = 1; //正常范围,蜂鸣器关闭 } LED1 = !LED1; //程序运行指示灯 delay_ms(1000); } }
审核编辑:汤梓红
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
传感器
+关注
关注
2547文章
50549浏览量
751507 -
单片机
+关注
关注
6031文章
44508浏览量
632494 -
STM32
+关注
关注
2265文章
10862浏览量
354590 -
测量系统
+关注
关注
2文章
532浏览量
41348
原文标题:【毕业设计003】基于STM32单片机烟雾测量系统(原理图、源代码、实物照片、设计说明、参考资料等)
文章出处:【微信号:精通单片机与嵌入式,微信公众号:精通单片机与嵌入式】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
基于单片机的多点温度烟雾测控系统设计
针对机舱消防应急救援模拟训练系统中训练环境控制的难题,设计了一种以AT89C52单片机为核心的多点温度烟雾测控系统。该系统可实现对模拟
发表于 01-13 16:02
•55次下载
单片机STM8S测量电压电路_STM32单片机的高精度超声波测距系统的设计
和准确性。超声波测距是一种典型的非接触测量方式,在不同的传播介质中具有不同的传播速度其系统结构简单、成本低。只有了解超声波测距的原理、了解STM32单片机才能设计出性能良好的
发表于 11-23 18:21
•9次下载
基于STM32单片机的厨房安全系统设计
整个系统以STM32 单片机作为核心控制器,通过DS18b20测温,通过CO传感器检测CO浓度,通过火焰传感器检测火焰,通过烟雾传感器检测烟雾
发表于 08-30 09:21
•1406次阅读
评论