#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
bool showcelciusorfarenhit = false;
#include "DHT.h"
#define DHTPin 4
#define DHTTYPE DHT22
DHT dht(DHTPin, DHTTYPE);
void setup(){
Serial.begin(115200);
lcd.init();
lcd.clear();
lcd.backlight();
Serial.println(F("DHTxx test"));
dht.begin();
}
void loop(){
float h = dht.readHumidity();
float t = dht.readTemperature();
float f = dht.readTemperature(true);
if(isnan(h) || isnan(t) || isnan(f)){
Serial.println(F(" failed to read from DHT Sensor"));
return;
}
Serial.print("Temperature = ");
Serial.print(t);
Serial.print(" ");
Serial.print((char)176);
Serial.print("C | ");
Serial.print((t * 9.0)/5.0 + 32.0);
Serial.print(" ");
Serial.println("F ");
Serial.print(" Humidity = ");
Serial.print(h);
Serial.println(" % ");
Serial.println(" ");
lcd.setCursor(0,0);
lcd.print("Temp.:");
if(showcelciusorfarenhit){
lcd.print(t);
lcd.print(" ");
lcd.print(char(223));
lcd.print("C ");
showcelciusorfarenhit = false;
}
else{
lcd.print((t * 9.0)/5.0 + 32.0);
lcd.print(" ");
lcd.print(char(223));
lcd.print("F ");
showcelciusorfarenhit = true;
}
lcd.setCursor(0,1);
lcd.print("Humi.: ");
lcd.print(h);
lcd.print("%");
delay(4000);
}