Added option for converting to Fahrenheit

This commit is contained in:
leprasmurf 2012-02-22 22:26:16 -05:00
parent 8f46f27b66
commit a3d1dc78bf

12
DHT.cpp
View File

@ -19,13 +19,17 @@ void DHT::begin(void) {
_lastreadtime = 0; _lastreadtime = 0;
} }
float DHT::readTemperature(void) { //boolean S == Scale. True == Farenheit; False == Celcius
float DHT::readTemperature(bool S) {
float f; float f;
if (read()) { if (read()) {
switch (_type) { switch (_type) {
case DHT11: case DHT11:
f = data[2]; f = data[2];
if(S)
f = convertCtoF(f);
return f; return f;
case DHT22: case DHT22:
case DHT21: case DHT21:
@ -35,6 +39,8 @@ float DHT::readTemperature(void) {
f /= 10; f /= 10;
if (data[2] & 0x80) if (data[2] & 0x80)
f *= -1; f *= -1;
if(S)
f = convertCtoF(f);
return f; return f;
} }
@ -43,6 +49,10 @@ float DHT::readTemperature(void) {
return NAN; return NAN;
} }
float DHT::convertCtoF(float c) {
return c * 9 / 5 + 32;
}
float DHT::readHumidity(void) { float DHT::readHumidity(void) {
float f; float f;
if (read()) { if (read()) {