DHT11连接ESP32官方示例提示为ESP32开发板编译错误的问题-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 5249|回复: 3

[已解答] DHT11连接ESP32官方示例提示为ESP32开发板编译错误的问题

[复制链接]
发表于 2019-3-4 12:11 | 显示全部楼层 |阅读模式

arduino温湿度传感器库 DHT11/DHT22

DHT-sensor-library.zip(7.09 KB, 下载次数: 94)



支持的传感器

DHT11 / DHT22 / DHT21 / AM2301  

github

https://github.com/adafruit/DHT-sensor-library
我们呢,首先按照这个方法下载,并安装这些库文件。按照官方的说法打开示例直接编译上传即可:
可是在我的板子上出现了编译错误的提示:
C:\Users\rain\Documents\Arduino\libraries\DHT-sensor-library-master\DHT_U.h:25:29: fatal error: Adafruit_Sensor.h: No such file or directory

#include <Adafruit_Sensor.h>
这个问题不大,去下载Adafruit_Sensor-master.zip就OK了。
链接:https://github.com/adafruit/Adafruit_Sensor



随后,再进行编译,会提下如下错误:
libraries\DHT-sensor-library\DHT.cpp.o: In function `DHT:HT(unsigned char, unsigned char, unsigned char)':

C:\Users\wl\Documents\Arduino\libraries\DHT-sensor-library/DHT.cpp:11: multiple definition of `DHT:HT(unsigned char, unsigned char, unsigned char)'

为开发板编译错误。

错误的原因:
看错误信息应该是多定义,可能是我们的arduino编译器版本的问题,不使用DHT.h在程序中DHT也是关键字。

我的解决办法,1下载旧版本的DHT库文件。
2.打开库文件里的DHT.h和DHT.cpp,和DHT_u.H
把里面的DHT全部更换成DHT1,

3.把程序里的DHT,改成DHT1
#define BLINKER_WIFI
#include <Blinker.h>
#include "DHT.h"
//#include <Adafruit_Sensor.h>
//串口缓存
String serbuff = "";

//温度电压读取,
#define DHTPIN 4//模拟端口
#define DHTTYPE DHT11// DHT 11
DHT1 dht(DHTPIN, DHTTYPE);
String weather_default ="";




完美


发表于 2020-2-16 00:26 | 显示全部楼层
就是你缺个库而额,并不是bug。你如果用我教程里提供的库,就没这问题了
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-11-28 07:24 , Processed in 0.175470 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表