|
本設(shè)計(jì)由STM32F103C8T6單片機(jī)核心電路+撥動(dòng)開(kāi)關(guān)電路+按鍵電路+高亮LED燈電路+LCD1602液晶電路+蜂鳴器報(bào)警電路+GSM短信模塊SIM800A電路+光敏電阻檢測(cè)光照強(qiáng)度電路+熱釋紅外感應(yīng)模塊E18電路+電源電路組成。
1、通過(guò)熱釋紅外傳感器檢測(cè)是否有人,如果有人靠近門時(shí),液晶屏提示亮并顯示歡迎詞:Welcome to home!,夜間探測(cè)到有人時(shí)開(kāi)燈,燈用9個(gè)高亮LED燈設(shè)計(jì),無(wú)人時(shí),關(guān)燈。
2、主人可設(shè)定門禁系統(tǒng)工作狀態(tài),家里有人和無(wú)人兩種狀態(tài)。通過(guò)一個(gè)撥動(dòng)開(kāi)關(guān)設(shè)置,撥上去,液晶顯示有人:Somebody!,撥下來(lái)液晶顯示沒(méi)人:Nobody!有人時(shí),客人按下門鈴,蜂鳴器鳴叫提示,無(wú)人時(shí),客人按下門鈴,無(wú)任何反應(yīng)。
3、門外人員逗留時(shí)間超過(guò)一定時(shí)間則發(fā)出報(bào)警信息。
4、檢測(cè)到有人或者沒(méi)有人,有狀態(tài)指示燈指示。
51hei.png (334.67 KB, 下載次數(shù): 107)
下載附件
2020-4-23 16:44 上傳
51hei.png (361.93 KB, 下載次數(shù): 79)
下載附件
2020-4-23 16:44 上傳
Snipaste_2020-04-23_16-31-23.png (7.99 KB, 下載次數(shù): 132)
下載附件
2020-4-23 16:31 上傳
單片機(jī)源程序如下:
- #include "delay.h"
- #include "sys.h"
- #include "usart.h"
- #include "key.h"
- #include "led.h"
- #include "lcd1602.h"
- u8 lighFlag=0; //光照 標(biāo)志
- u8 doorFlag=0; //門檢測(cè) 標(biāo)志
- u8 manFlag=0; //人檢測(cè) 標(biāo)志
- u8 menlingFlag=0; //門鈴檢測(cè) 標(biāo)志
- u8 baojFlag=0; //報(bào)警 標(biāo)志
- int main(void)
- {
- u32 time10ms=0;
-
- delay_init(); //延時(shí)函數(shù)初始化
- KEY_Init(); //初始化 按鍵
- LED_Init(); //初始化電機(jī)引腳 作為輸出 類似led
- delay_ms(1);
-
- Lcd_GPIO_init(); //初始化lcd引腳
- Lcd_Init(); //初始化lcd屏幕
- delay_ms(20);
-
- Lcd_Puts(0,0,"Waitting for you"); //初始化顯示
- Lcd_Puts(0,1,"Nobody! ");
-
- buzzer=1; //打開(kāi) 上電開(kāi)關(guān)一下 方便檢測(cè)
- ligh=1;
- led_hot = 0;
- delay_ms(200);
- led_hot = 1;//關(guān)閉 用于測(cè)試
- buzzer=0;
- ligh=0;
-
- while(1)
- {
- delay_ms(10);
- if(manFlag==1)
- {
- Lcd_Puts(0,0,"Welcome to home!"); //顯示有人
- if(lighFlag==1) //有人情況查看是否需要開(kāi)燈
- {
- ligh=1;//打開(kāi) 燈
- }
- else
- {ligh=0;}//關(guān)閉
- time10ms++;
- if(time10ms>=3000) //有人超過(guò)30s 報(bào)警
- {
- buzzer=1; //打開(kāi)蜂鳴器
- baojFlag=1;//報(bào)警
- }
- }
- else
- {
- Lcd_Puts(0,0,"Waitting for you"); //沒(méi)有人情況 顯示等待
- ligh=0; //沒(méi)有人關(guān)閉led
- time10ms=0; //清零緊急報(bào)警
- baojFlag=0;
- }
- if(doorFlag==1)
- {
- Lcd_Puts(0,1,"Somebody! "); //家中有人
- if(baojFlag==0) //非緊急情況
- {
- if(menlingFlag==1) //門鈴
- {
- buzzer=1;//打開(kāi)蜂鳴器
- }
- else
- {buzzer=0;} //關(guān)閉蜂鳴器
- }
- }
- else
- {
- Lcd_Puts(0,1,"Nobody! "); //家中無(wú)人
- if(baojFlag==0) //非緊急情況
- { buzzer=0;}
- }
-
- if(key_menling==0) //檢測(cè)
- {
- menlingFlag=1;
- }
- else
- {menlingFlag=0;} //否則復(fù)位標(biāo)志
- if(key_redhot==1) //檢測(cè)人體
- {
- manFlag=1;led_hot = 0;//標(biāo)志
- }
- else
- {manFlag=0;led_hot = 1;} //否則復(fù)位標(biāo)志
- if(key_door==1) //檢測(cè) 門狀態(tài)
- {
- doorFlag=1;
- }
- else
- {doorFlag=0;} //否則復(fù)位標(biāo)志
- if(key_ligh==1) //檢測(cè)光度
- {
- lighFlag=1;
- }
- else
- {lighFlag=0;} //否則復(fù)位標(biāo)志
- }
- }
復(fù)制代碼
所有資料51hei提供下載:
基于STM32F103單片機(jī)智能門禁熱釋人體感應(yīng)報(bào)警設(shè)計(jì).7z
(4.56 MB, 下載次數(shù): 334)
2020-4-23 16:45 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
|
|