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