#include <DHT.h>
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
#define DHTPIN 2 // Pin connected to the DHT22 data pin
#define DHTTYPE DHT11 // DHT type is DHT22
DHT dht(DHTPIN, DHTTYPE); // Initialize the DHT sensor
void setup()
{
Wire.begin(23, 22);
Serial.begin(115200);
dht.begin(); // Initialize the DHT sensor
lcd.init();
lcd.backlight();
}
void loop()
{
int16_t i = analogRead(34);
float temperature = dht.readTemperature(); // Read temperature in Celsius
float humidity = dht.readHumidity(); // Read humidity as a percentage
if (isnan(temperature) || isnan(humidity))
{
Serial.println("Failed to read from DHT sensor!");
delay(1000);
return;
}
lcd.clear();
lcd.print("SMARTAGRICULTURE");
delay(1000);
lcd.clear();
lcd.backlight();
lcd.setCursor(0, 10);
lcd.print("Temp.");
lcd.print(temperature, 1); // Display temperature with one decimal place
delay(1000);
lcd.setCursor(0, 20);
lcd.print("Humidity ");
lcd.print(humidity, 1); // Display humidity with one decimal place
delay(1000);
lcd.setCursor(0, 0);
lcd.print("Soil: ");
lcd.print(i);
delay(1000);
}