chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

基于CW32單片機的智能家居系統(tǒng)設計

jf_qE49KoVBr8 ? 來源:武漢芯源半導體 ? 2023-12-20 10:00 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

一、實驗簡介

智能家居系統(tǒng)是一款功能豐富、易于使用的智能家居解決方案,可以通過檢測溫濕度、光照強度和空氣質(zhì)量等參數(shù),為我們提供更加舒適、健康、安全的居住環(huán)境,讓用戶享受更加智能的生活體驗。

該系統(tǒng)采用CW32F030單片機作為核心控制器,通過各種傳感器實時監(jiān)測室內(nèi)環(huán)境參數(shù),并根據(jù)預設的閾值進行相應控制。例如,當室內(nèi)光照不足時,系統(tǒng)會自動打開燈光,確保室內(nèi)光線充足。室內(nèi)溫濕度數(shù)據(jù)和空氣質(zhì)量通過屏幕顯示,并實時上傳到云平臺,以實現(xiàn)遠程監(jiān)控。

二、實驗器材

本實驗使用到了CW32-48F大學計劃開發(fā)板、ESP8266WIFI模塊、DHT11溫濕度模塊、MQ-135空氣檢測傳感器、光敏電阻模塊、熱釋電傳感器模塊、LED交通燈模塊及Keil5開發(fā)環(huán)境。

開發(fā)板上預留了ESP8266WIFI模塊接口,通過串口與ESP8266通信

8d5624a6-9edb-11ee-8b88-92fbcf53809c.png

開發(fā)板上預留了DHT11模塊接口

8d6581ee-9edb-11ee-8b88-92fbcf53809c.png

【MQ-135空氣傳感器模塊與單片機接線】:

VCC-- 5V

GND-- GND

DO -- ×

AO -- PA0

【光敏電阻模塊與單片機接線】:

VCC-- 3.3V

GND-- GND

DO -- ×

AO -- PA4

【熱釋電人體感應模塊與單片機接線】:

VCC-- 3.3V

GND-- GND

OUT -- PB10

【LED交通燈模塊與單片機接線】:

R -- PA6

Y -- PA5

G -- PB11

GND-- GND

三、核心代碼

main.c:
/*傳感器數(shù)據(jù)*/
uint16_t ppm=0;            //空氣中甲苯濃度
uint8_t humidity=0;        //濕度
uint8_t temperture=0;      //溫度
uint8_t Light_intensity=0; //光照強度(0~100)
uint16_t adc_result[2]={0}; //保存ADC序列轉(zhuǎn)換結(jié)果


/*標識控制位*/
_Bool Flag_5s=0;       //5s計時
uint16_t time5scnt=0;  //5s計數(shù)
uint16_t time2scnt=0;  //2s計數(shù)
_Bool averyflag=0;    //ADC序列采集完成標志位
_Bool send_flag=0;    //數(shù)據(jù)上云控制位


/*自定義函數(shù)*/
void PIR_Proc(void);    //檢測人是否存在
void DHT11_Proc(void);  //采集溫濕度
void MQ135_Proc(void);  //檢測空氣質(zhì)量
void Photo_Proce(void); //檢測亮度
void System_Init(void); //系統(tǒng)初始化
void Send2OneNet(void); //數(shù)據(jù)上云
void Interface(void);   //數(shù)據(jù)顯示界面
void LED_Proc(uint8_t led,uint8_t state); //LED燈


/*主程序*/
int main(void)
{
  System_Init();  //系統(tǒng)初始化
  Interface();    //界面顯示
  while(1)
  {  
    PIR_Proc();     //人
    DHT11_Proc();  //溫濕度
    MQ135_Proc();  //空氣質(zhì)量
    Photo_Proce(); //光強
    Send2OneNet(); //數(shù)據(jù)上云
    ADC_SoftwareStartConvCmd(ENABLE); //啟動ADC轉(zhuǎn)換 
    Delay_ms(500);
  }
}


/*子程序*/
void System_Init(void)  //系統(tǒng)初始化函數(shù)
{    
  Lcd_Init();   
  TFT_Welcome(); //開機界面
  
  LED_Init();    
  PIR_Init();     //熱釋電傳感器初始化
  DHT11_Init();  //溫濕度傳感器初始化
  Buzzer_Init(); //蜂鳴器初始化
  while(DHT11_Check()); //檢測DHT11是否已連接
  
  BTIM_Init();  
//  Usart1_Init(115200);  //調(diào)試串口
  Usart2_Init(115200);  //ESP8266串口
  ESP8266_Init();       //ESP8266初始化
  ADC_Configuration();  //ADC序列多次轉(zhuǎn)換模式配置
}


void Interface(void)    //界面顯示函數(shù)
{
  Lcd_Clear(BLUE);
  Gui_DrawFont_GBK16(0,8,WHITE,BLUE,"  智能家居系統(tǒng) ");
  Gui_DrawLine(0,32,128,32,GRAY1);                       //分割線
  Gui_DrawFont_GBK16(0,48,WHITE,BLUE," 當前溫度:");
  Gui_DrawFont_GBK16(0,80,WHITE,BLUE," 當前濕度:");
  Gui_DrawFont_GBK16(0,112,WHITE,BLUE," 空氣質(zhì)量:");
}


void PIR_Proc(void)   //人體檢測函數(shù)
{
  if(ReadPIR())    //有人在
  {
    Flag_5s=1;   //在中斷中開始5s計時
    LED_Proc(LED_Yellow,1); //打開黃燈
  }
  else             //沒有人
  {
    Flag_5s=0;   //清除計時標識
    time5scnt=0; //清零計數(shù)值
    Buzzer(0);   //關閉蜂鳴器
    LED_Proc(LED_Red,0); //關閉紅燈
    LED_Proc(LED_Yellow,0); //關閉紅燈
  }
  
  if(time5scnt>=500) //計數(shù)值超過500,5秒計時到
  {
    time5scnt=0;  //清零計數(shù)值
    Buzzer(1);    //打開蜂鳴器
    LED_Proc(LED_Red,1); //打開紅燈
  }  
}


void DHT11_Proc(void)  //溫濕度采集函數(shù)
{
  char display[8]=" ";
  
  DHT11_Read_Data(&temperture,&humidity);  //采集溫濕度
  sprintf(display,"%d ℃",temperture);
  TFTShowString(3,11,display);
  sprintf(display,"%d %%",humidity);
  TFTShowString(5,11,display);
}


void MQ135_Proc(void)   //空氣質(zhì)量檢測函數(shù)
{
  double v_dat=0;
  
  if(averyflag)    //ADC轉(zhuǎn)換完成
  {
    adc_result[0]/=10;  //采集10次求平均值
    v_dat=(double)adc_result[0]*3.3/4960.0;  //AD值傳換成電壓
    ppm = pow((3.4880*10*v_dat)/(5-v_dat),(1.0/0.3203)); //計算甲苯濃度(參數(shù)因環(huán)境而異)
    if(v_dat<0.3)      Gui_DrawFont_GBK16(90,112,WHITE,BLUE,"優(yōu)");  //依據(jù)電壓值人為劃分空氣質(zhì)量等級
    else if(v_dat<0.5) Gui_DrawFont_GBK16(90,112,WHITE,BLUE,"良");
    else         Gui_DrawFont_GBK16(90,112,WHITE,BLUE,"差");
  }
}


void Photo_Proce(void)   //光照強度采集函數(shù)
{
  double v_dat=0;  
  
  if(averyflag)  //ADC轉(zhuǎn)換完畢
  {
    adc_result[1]/=10;  //求平均值
    Light_intensity=(1.0-(float)adc_result[1]/4096.0)*100.0;  //轉(zhuǎn)換成光照強度(僅供參考)
    v_dat=(double)adc_result[1]*3.3/4960.0; //轉(zhuǎn)換成電壓值
    
    if(v_dat>1.5) LED_Proc(LED_Green,1);  //自定義閾值,光照強度過低打開綠燈
    else      LED_Proc(LED_Green,0);    
  }
}


void LED_Proc(uint8_t led,uint8_t state)  //LED控制函數(shù)
{
  if(led==LED_Red)
    GPIO_WritePin(CW_GPIOA,GPIO_PIN_6,(GPIO_PinState)(state));
  else if(led==LED_Yellow)
    GPIO_WritePin(CW_GPIOA,GPIO_PIN_5,(GPIO_PinState)(state));
  else if(led==LED_Green)
    GPIO_WritePin(CW_GPIOB,GPIO_PIN_11,(GPIO_PinState)(state));
}


void Send2OneNet(void)  //數(shù)據(jù)上傳函數(shù)
{
  if(send_flag)
  {    
    OneNet_SendData();  //數(shù)據(jù)上傳到OneNET
    ESP8266_Clear();    //清除緩存
    send_flag=0;  
  }
}


void BTIM1_IRQHandler(void)   //基本定時器1中斷
{
  if(BTIM_GetITStatus(CW_BTIM1,BTIM_IT_OV))  
  {
    if(++time2scnt>200) {send_flag=1;time2scnt=0;} //2s計時
    if(Flag_5s) time5scnt++;                       //5s計時
    BTIM_ClearITPendingBit(CW_BTIM1,BTIM_IT_OV); //清除標志位
  }
}

四、效果演示

8d773ac4-9edb-11ee-8b88-92fbcf53809c.png

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 控制器
    +關注

    關注

    114

    文章

    17638

    瀏覽量

    190256
  • 智能家居
    +關注

    關注

    1942

    文章

    9943

    瀏覽量

    195514
  • 開發(fā)板
    +關注

    關注

    25

    文章

    6122

    瀏覽量

    113326
  • CW32
    +關注

    關注

    1

    文章

    281

    瀏覽量

    1677

原文標題:基于CW32的智能家居系統(tǒng)

文章出處:【微信號:武漢芯源半導體,微信公眾號:武漢芯源半導體】歡迎添加關注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    基于CW32的門禁綜合系統(tǒng)

    基于CW32單片機的門禁綜合系統(tǒng)是一款功能強大的智能門禁解決方案,它提供了三種開鎖方式:密碼開鎖、指紋開鎖和刷卡開鎖,為用戶提供方便、安全的門禁控制。該
    的頭像 發(fā)表于 12-28 11:43 ?2416次閱讀
    基于<b class='flag-5'>CW32</b>的門禁綜合<b class='flag-5'>系統(tǒng)</b>

    基于CW32智能家居系統(tǒng)

    智能家居系統(tǒng)是一款功能豐富、易于使用的智能家居解決方案,可以通過檢測溫濕度、光照強度和空氣質(zhì)量等參數(shù),為我們提供更加舒適、健康、安全的居住環(huán)境,讓用戶享受更加智能的生活體驗。 該
    的頭像 發(fā)表于 12-28 12:14 ?2295次閱讀
    基于<b class='flag-5'>CW32</b>的<b class='flag-5'>智能家居</b><b class='flag-5'>系統(tǒng)</b>

    基于芯源CW32 MCU智能家居照明控制系統(tǒng)設計與實現(xiàn)

    隨著智能家居的快速發(fā)展,照明控制系統(tǒng)成為了其重要組成部分?;谛驹?b class='flag-5'>CW32 MCU的智能家居照明控制系統(tǒng),能夠通過無線控制、自動調(diào)節(jié)亮度、定
    發(fā)表于 12-03 06:06

    CW32單片機智能馬桶的應用

    1.溫度感應與控制 智能馬桶內(nèi)設有溫度傳感器,通過CW32單片機的處理,可以實時感知到用戶所需的座圈溫度并根據(jù)用戶的設定進行調(diào)節(jié)。當溫度過高或過低時,單片機將發(fā)出信號,通過控制模塊對座
    發(fā)表于 12-04 08:01

    基于AVR單片機智能家居控制系統(tǒng)設計

    基于AVR單片機智能家居控制系統(tǒng)設計
    發(fā)表于 08-18 15:27

    怎樣去設計一個基于51單片機的簡易智能家居系統(tǒng)

    怎樣去設計一個基于51單片機的簡易智能家居系統(tǒng)呢?基于51單片機的簡易智能家居系統(tǒng)是由哪些部分組
    發(fā)表于 12-21 07:56

    單片機,智能家居設計

    跪求基于單片機STM32F103ZET6的智能家居控制系統(tǒng)設計(包含燈光,傳感器,報警,驅(qū)動電路設計原理圖)
    發(fā)表于 03-29 08:34

    CW32單片機智能馬桶的應用介紹

    智能科技的迅速發(fā)展使得我們的日常生活變得更加便捷和舒適。智能馬桶作為其中一種智能家居產(chǎn)品,通過單片機接受和處理來自傳感器的數(shù)據(jù),然后通過控制模塊對
    發(fā)表于 12-20 10:06

    cw32和stm32的區(qū)別

    cw32和stm32的區(qū)別 CW32和STM32是兩種常見的單片機,被廣泛應用于各種電子設備中。在本文中,我們將深入探討CW32和STM32之間的區(qū)別和優(yōu)劣勢。 1. 硬件性能 硬件性
    的頭像 發(fā)表于 08-16 11:15 ?6064次閱讀

    CW32單片機低電壓檢測器的使用介紹

    CW32單片機低電壓檢測器的使用介紹
    的頭像 發(fā)表于 09-18 10:56 ?1831次閱讀
    <b class='flag-5'>CW32</b><b class='flag-5'>單片機</b>低電壓檢測器的使用介紹

    CW32單片機UART波特率設置介紹

    CW32單片機UART波特率設置介紹
    的頭像 發(fā)表于 10-24 17:35 ?1654次閱讀
    <b class='flag-5'>CW32</b><b class='flag-5'>單片機</b>UART波特率設置介紹

    CW32單片機UART基本數(shù)據(jù)收發(fā)功能介紹

    CW32單片機UART基本數(shù)據(jù)收發(fā)功能介紹
    的頭像 發(fā)表于 10-24 16:50 ?1500次閱讀
    <b class='flag-5'>CW32</b><b class='flag-5'>單片機</b>UART基本數(shù)據(jù)收發(fā)功能介紹

    CW32單片機I2C接口讀寫EEPROM芯片介紹

    CW32單片機I2C接口讀寫EEPROM芯片介紹
    的頭像 發(fā)表于 11-09 17:42 ?2315次閱讀
    <b class='flag-5'>CW32</b><b class='flag-5'>單片機</b>I2C接口讀寫EEPROM芯片介紹

    CW32單片機智能馬桶的應用介紹

    智能科技的迅速發(fā)展使得我們的日常生活變得更加便捷和舒適。智能馬桶作為其中一種智能家居產(chǎn)品,通過單片機接受和處理來自傳感器的數(shù)據(jù),然后通過控制模塊對
    的頭像 發(fā)表于 12-20 10:02 ?1456次閱讀
    <b class='flag-5'>CW32</b><b class='flag-5'>單片機</b>在<b class='flag-5'>智能</b>馬桶的應用介紹

    CW32單片機智能馬桶的應用介紹

    智能科技的迅速發(fā)展使得我們的日常生活變得更加便捷和舒適。智能馬桶作為其中一種智能家居產(chǎn)品,通過單片機接受和處理來自傳感器的數(shù)據(jù),然后通過控制模塊對
    的頭像 發(fā)表于 12-20 10:09 ?1231次閱讀
    <b class='flag-5'>CW32</b><b class='flag-5'>單片機</b>在<b class='flag-5'>智能</b>馬桶的應用介紹