ESP8266 SDK開發: 外設篇-溫濕度傳感器-DHT11


 

 

 

 

實現的功能

串口每隔2S打印一下Wi-Fi模塊采集的溫濕度數據

 

 

 

移植使用

1.我給大家封裝好了DHT11的文件

 

 

2.把文件按照下圖放置,並在DHT11.h中修改GPIO

我的開發板是使用的GPIO4采集的DHT11數據

 

 

 

 

 

 

 

 

 

2.在主函數中包含頭文件

 

 

 

 

3.采集溫濕度數據並打印.

用戶可以用定時器每隔2S采集一次

 

 

 

 

 

/**
* @brief   定時器回調函數
* @param   parg:傳入的配置os_timer_setfn函數最后的參數
* @param   None
* @param   None
* @param   None
* @retval  None
* @warning None
* @example
**/
void os_timer_one_function(void *parg)
{
    RendTHCnt++;
    if(RendTHCnt>=2000){
        RendTHCnt=0;
        DHT11_Read_Data();
        os_printf("溫度:%d,濕度%d\r\n",DHT11Data[2],DHT11Data[0]);
    }
}

 

 4.效果

 

 

 

 

 

 

說明

 1.該程序處理思路

采集到數據以后判斷下校驗和是否正確,如果正確,則把新數據存入數組

如果不正確,則判斷下和上次數據的偏差,如果偏差不是很大也認為是正確的數據

如果采集了5次校驗和都是錯誤的,則設置數據全部為0xff

 

2.此程序是NONOS版本

用戶移植到RTOS版本上的時候需要更改DHT11.c中操作GPIO的頭文件

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM