一.系統概述
本次式設計的系統是以 STM32 單片機作為核心控制器,可以控制煙霧傳感器、火焰?zhèn)鞲衅鲗ο嚓P數據進行采集,可以通過紅外對是否有人進行監(jiān)測,當監(jiān)測到火焰會控制短信提醒火災危險,當紅外識別到人且輸入密碼錯誤的時候會短信提醒有人闖入。需要有一個密碼輸入的功能。
二.仿真概述
1.系統內可以檢測煙霧濃度、檢測是否有火焰、檢測是否有人,檢測到火災發(fā)生且有人闖入就會通過GSM進行遠程提醒。使用矩陣鍵盤來輸入密碼的,當檢測到人且密碼輸入不正確就會認為是有人闖入。
2. 調節(jié)煙霧傳感器的滑動變阻器可以調節(jié)煙霧的模擬輸出量,煙霧的改變可以在顯示端體現。
3. 撥動人體檢測的開關即模擬檢測到人和檢測不到人,在顯示屏端也會相應的進行顯示。
4. 撥動火焰?zhèn)鞲衅鞯拈_關代表檢測到火焰,此時在顯示屏端會進行提醒并且會通過GSM發(fā)短信進行提醒,這里采用虛擬串口助手模擬短信的接收。
虛擬串口助手的鏈接:
https://serial.keysking.com/
5. 輸入正確的密碼12345就會顯示yes
輸入錯就會顯示error,并且如果檢測到人且輸入錯就會提醒有人闖入
三.程序設計
#include#include "adc2.h" // u8 Key;//按鍵檢測 u8 Rxdat; u8 dat[3]; u8 AIN0; u8 beepflag; u8 ack=1; // // void Init_Test(void); void Display(void); // int main(void) { NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); //設置中斷優(yōu)先級分組為組2:2位搶占優(yōu)先級,2位響應優(yōu)先級 OLED_Init(); //PB6 PB7 Key_Init(); Adc2_Init(); // Sim900A_Uart1_Init(); // Sim900A_GSM_Uart1_Send_Message(); Usart1_Init(9600); PCF8591_Init(); OLED_ShowString(1,1,"Smo:");OLED_ShowString(1,8,"fla:");//OLED_ShowString(1,1,"have");OLED_ShowString(1,8,"not"); OLED_ShowString(4,1,"Enter:"); while(1) { KeyXY_Scan(&key,&Password); if(key!=0) { input[inputflag]=Password; if(inputflag==0){sprintf((char*)disbuf,"%d",input[inputflag]);OLED_ShowString(4,7,disbuf);} if(inputflag==1){sprintf((char*)disbuf,"%d",input[inputflag]);OLED_ShowString(4,8,disbuf);} if(inputflag==2){sprintf((char*)disbuf,"%d",input[inputflag]);OLED_ShowString(4,9,disbuf);} if(inputflag==3){sprintf((char*)disbuf,"%d",input[inputflag]);OLED_ShowString(4,10,disbuf);} if(inputflag==4){sprintf((char*)disbuf,"%d",input[inputflag]);OLED_ShowString(4,11,disbuf);} if(inputflag==5){sprintf((char*)disbuf,"%d",input[inputflag]);OLED_ShowString(4,12,disbuf);} key=0;Password=0; inputflag++; if(inputflag==5) { for(i=0;i<5;i++) { if(input[i] == password[i]) YES++; } if(YES==5) { OLED_ShowString(3,1,"Yes"); delay_ms(1000); OLED_ShowString(3,1," "); YES=0; OLED_ShowString(4,7," "); } else if(YES !=6 )//密碼錯誤 { OLED_ShowString(3,1," "); OLED_ShowString(3,1,"Error"); delay_ms(1000); OLED_ShowString(4,7," "); if(ren==0) { OLED_ShowString(3,1," "); OLED_ShowString(3,1,"Send a message"); delay_ms(1000); //Sim900A_GSM_Uart1_Send_Message();// printf("有人闖入"); OLED_ShowString(3,1," "); OLED_ShowString(3,1,"Send Ok"); delay_ms(1000); } OLED_ShowString(3,1," "); YES=0; } OLED_ShowString(3,1," "); inputflag=0; } }
-
傳感器
+關注
關注
2561文章
52353瀏覽量
762591 -
單片機
+關注
關注
6061文章
44848瀏覽量
645513 -
STM32
+關注
關注
2288文章
10992瀏覽量
361793 -
防盜系統
+關注
關注
0文章
74瀏覽量
20586
原文標題:Proteus仿真實例_基于STM32單片機的火災防盜系統(仿真文件+程序)
文章出處:【微信號:小常硬件,微信公眾號:小常硬件】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
基于STM32F103單片機的汽車遠程防盜系統方案

基于單片機的GSM短信家庭防盜報警系統 精選資料分享
怎樣去設計一個基于單片機的GSM無線防火防盜系統
基于單片機的家庭防火防盜控制系統的設計

使用STM32單片機實現火災報警器的程序和工程文件免費下載

基于單片機的GSM短信家庭防盜報警系統

基于STM32單片機的WIFI火災系統設計

評論