標(biāo)題:
stm32F407單片機(jī)智能安防系統(tǒng)源碼
[打印本頁]
作者:
mashuai153
時間:
2018-4-4 19:56
標(biāo)題:
stm32F407單片機(jī)智能安防系統(tǒng)源碼
智能安防系統(tǒng),各種模塊,超聲波,溫濕度傳感器,光敏,煙霧報警等等
單片機(jī)源程序如下:
#include "stm32f4xx.h"
#include "sys.h"
#include "Systick.h"
#include "string.h"
#include "usart.h"
#include "USART_Init.h"
#include "DHT11.h"
#include "WIFI_Init.h"
#include "Ultrasound_Init.h"
#include "BreathLight_Init.h"
#include "LightSenser_Init.h"
#include "MQ2_Init.h"
#include "Beep.h"
#include "LED_X.h"
volatile char c;
volatile int light;
volatile int data;
volatile int distance;
volatile char key;
char databuf[6];
void GPIO()
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA, ENABLE);
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOB, ENABLE);
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN;//輸入模式
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;//100Mhz的速率
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;//無上下拉1
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0;
GPIO_Init(GPIOA, &GPIO_InitStructure);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2;
GPIO_Init(GPIOB, &GPIO_InitStructure);
}
int main(void)
{
int temp;
int flag=1;
int flag2=1;
Systick_init(168);//系統(tǒng)時鐘初始化為168Mhz
GPIO();
USART1_Config();
USART3_Config();
/*********************************WIFI通信*************************************************************/
WIFI_Init(); //WIFI 初始化
/********************************待機(jī)狀態(tài)************************************************************/
BreathLight_Init_gpio_out(); //配置1號燈為復(fù)用模式
BreathLight_Init_gpio_in(); //S1按鍵初始化
BreathLight_Init_time_init(); //定義與時間相關(guān)的結(jié)構(gòu)體,中斷相關(guān)的結(jié)構(gòu)體
BreathLight_Init_ADC_Config(); //配置ADC3相關(guān)參數(shù)
BreathLight_Init_wait(); //呼吸燈循環(huán),如果S1按鍵按下則退出呼吸燈模式
flag2=1;
while(flag2)
{
flag=1;
/***********************************光敏LED感應(yīng)*************************************************************/
while(1)
{ data=MQ2_Init();
if(data>1000)
Beep();
light=BreathLight_Init_senddate(); //獲取光照強(qiáng)度
BreathLight_Init_regpio_out_init();//LED端口初始化
BreathLight_Init_system_key(light); //根據(jù)光照強(qiáng)度亮燈
TX4();
//TX3(); //發(fā)送光照強(qiáng)度給手機(jī)
if(key=='s')
break;
}
while(key=='s');
delay_ms(5);
while(flag)
{
temp=key-48;
switch(key-48)
/********************************超聲波測距離*********************************************************/
{
case 1:
Ultrasound_gpio_out(); //超聲波端口初始化
Ultrasound_gpio_in();
distance=Ultrasound_Init_distance();
TX1(); //發(fā)送距離數(shù)據(jù)到手機(jī)
break;
/********************************溫濕度**************************************************************/
case 2 :
DHT11_display();
TX2(); //發(fā)送溫濕度
break;
/********************************MQ2煙霧**************************************************************/
case 3:
data=MQ2_Init();
TX4();//發(fā)送煙霧數(shù)據(jù)到手機(jī)
break;
/********************************Beep******************************************************/
case 4:
Beep();//響鈴2 s
break;
/********************************led******************************************************/
case 5:case 6:case 7:case 8:case 9:
LED_X(key-48);//響鈴2 s
break;
/********************************檢測是否退出************************************************************/
default:printf("yes");
}
while( (key-48) ==temp )
if(GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_0)==0 || key=='0' )
{
flag=0; //如果S1按鍵按下則退出系統(tǒng)
break;
}
if (key=='0')
flag2=0;
}
}
}
復(fù)制代碼
所有資料51hei提供下載:
智能安防系統(tǒng)code.rar
(462.25 KB, 下載次數(shù): 37)
2018-4-5 01:27 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
作者:
admin
時間:
2018-4-5 01:28
能分享個原理圖嗎?都不知道用了哪些器件
作者:
jiangwen
時間:
2019-9-1 13:01
能分享個原理圖嗎?
作者:
gemxie
時間:
2025-1-22 11:23
謝謝樓主分享,能分享個原理圖嗎?都不知道用了哪些器件?梢园l(fā)到郵箱
294799014@qq.com
嗎?
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1