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的头文件