#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include <DHT.h>
#define DHT_pin 4
#define DHT_type DHT22
DHT dht(DHT_pin,DHT_type);
#define I2C_ADDR 0x27
#define LCD_columns 16
#define LCD_lines 2
#define LDR_pin 25
#define LED_pin 34
#define sw1 D2
LiquidCrystal_I2C lcd(I2C_ADDR, LCD_columns, LCD_lines);
float ADC_value = 0.0048828125;
void setup() {
Serial.begin(115200);
Serial.println("Hello, ESP32!");
pinMode(LDR_pin,INPUT);
dht.begin();
lcd.init();
lcd.backlight();
lcd.setCursor(0,0);
lcd.println("Hello, ESP32!");
}
void loop() {
temp();
delay(3000);
humi();
delay(3000);
ldr();
delay(3000);
}
void temp(){
float temperture = dht.readTemperature();
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Temp = "+String(temperture));
}
void humi(){
float humidity = dht.readHumidity();
lcd.clear();
lcd.setCursor(0,0);
lcd.print("humi = "+String(humidity));
}
void ldr(){
float ldr_data = analogRead(LDR_pin);
int lux = int((250.000000/(ADC_value*ldr_data))-50.000000);
lcd.clear();
lcd.setCursor(0,0);
lcd.print("ldr =");
lcd.print(lux);
}