實現的功能
串口每隔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的頭文件