Arduino 软件:"request for member 'read11' in 'sensor', which is of non-class type 'DHT()'"
Arduino software: "request for member 'read11' in 'sensor', which is of non-class type 'DHT()'"
我使用我的 arduino 代码收到此错误消息 "request for member 'read11' in 'sensor', which is of non-class type 'DHT()'"
#include <DHT.h>
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
int greenPin = A0;
DHT sensor();
void setup()
{
lcd.begin(16,2); //16 by 2 character display
}
void loop()
{
delay(1000); //wait a sec (recommended for DHT11)
sensor.read11(greenPin);
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Humidity = ");
lcd.print(sensor.humidity);
lcd.setCursor(0,1);
lcd.print("Temp = ");
lcd.print(sensor.temperature);
}
我已经下载了它说要下载的库,请帮忙!
顺便说一句,我是从这个网站上拿来的,只是为了避免版权问题:
https://www.hive-rd.com/blog/arduino-dht11-output-lcd-module/
在线
DHT sensor();
括号的使用导致此行被解析为函数 sensor()
的前向声明,不带参数,返回类型 DHT
。您想要的只是将 sensor
定义为类型为 dht
的变量(注意:
本教程使用小写。)正确的语法是:
#include <dht.h>
/* code */
dht sensor;
如果您参考所链接的教程,您会看到它在代码示例中的显示方式。
我使用我的 arduino 代码收到此错误消息 "request for member 'read11' in 'sensor', which is of non-class type 'DHT()'"
#include <DHT.h>
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
int greenPin = A0;
DHT sensor();
void setup()
{
lcd.begin(16,2); //16 by 2 character display
}
void loop()
{
delay(1000); //wait a sec (recommended for DHT11)
sensor.read11(greenPin);
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Humidity = ");
lcd.print(sensor.humidity);
lcd.setCursor(0,1);
lcd.print("Temp = ");
lcd.print(sensor.temperature);
}
我已经下载了它说要下载的库,请帮忙!
顺便说一句,我是从这个网站上拿来的,只是为了避免版权问题: https://www.hive-rd.com/blog/arduino-dht11-output-lcd-module/
在线
DHT sensor();
括号的使用导致此行被解析为函数 sensor()
的前向声明,不带参数,返回类型 DHT
。您想要的只是将 sensor
定义为类型为 dht
的变量(注意:
本教程使用小写。)正确的语法是:
#include <dht.h>
/* code */
dht sensor;
如果您参考所链接的教程,您会看到它在代码示例中的显示方式。