我有DHT11 temperature传感器,我正在尝试将湿度转换为我可以在比较法中使用的数字。
如果我使用:
Serial.print("Humidity (%): ");
Serial.println((int)DHT11.humidity, DEC);
//Prints: 38 for the humidity
但是,如果我使用
int tempHum;
tempHum = ((int)DHT11.humidity, DEC);
Serial.print("Humidity (%): ");
Serial.println(tempHum);
//Always Prints: 10
如何将湿度转换为串行以外的准确数字?
答案 0 :(得分:1)
下次发布时,请添加指向您正在使用的库的链接 - 这样我们肯定会谈论相同的内容。您尚未发布所有代码,但在this看来,我认为此行tempHum = ((int)DHT11.humidity, DEC);
会导致您的问题。
如果您尝试使用tempHum = DHT11.humidity
,则可能会有更好的结果。这是因为您正在进行的转换并添加DEC
参数似乎是println函数,因此底层系统知道它应该打印哪种类型。
当然,你们都需要记得做一个int retval = DHT11.read(DHT11PIN)
并检查一下你的记录没有出错 - 这应该可以使它运作。