#include <DHT.h>
#include <LiquidCrystal_I2C.h>
int DHT11_PIN = 13;
LiquidCrystal_I2C lcd(0x27, 16, 2);
DHT dht11(DHT11_PIN, DHT11);
void setup() {
dht11.begin();
lcd.init();
lcd.backlight();
}
String formatFloat(float value, int precision) {
char buffer[10];
sprintf(buffer, "%.*f", precision, value);
return String(buffer);
}
void loop() {
float humi = dht11.readHumidity(); // read humidity
float tempC = dht11.readTemperature(); // read temperature
lcd.clear();
if (isnan(tempC) || isnan(humi)) {
lcd.setCursor(0, 0);
lcd.print("Failed");
} else {
lcd.setCursor(0, 0);
lcd.print("TEMPERATURE:" + String(formatFloat(tempC, 2)) );
lcd.setCursor(0, 1); // display position
lcd.print("HUMIDITY:" + String(humi) + "%");
}
delay(2000);
}