from machine import Pin, I2C
import ssd1306
import dht
import time
# ESP32 Pin assignment
i2c = I2C(0, scl=Pin(22), sda=Pin(21))
oled_width = 128
oled_height = 64
oled = ssd1306.SSD1306_I2C(oled_width, oled_height, i2c)
sensor = dht.DHT22(Pin(25, Pin.IN))
led = Pin(14, Pin.OUT)
while True:
try:
sensor.measure()
t = sensor.temperature()
h = sensor.humidity()
oled.fill(0)
oled.text(f"Nhiet do: {t}", 10, 10)
# oled.text(f"Do am: {h}", 10, 40)
oled.show()
if t > 50:
oled.text(f"Nhiet do: {t}", 10, 10)
oled.text(f"Nhiet do qua cao", 10, 40)
led.on()
else:
oled.text(f"Nhiet do: {t}", 10, 10)
oled.text(f"Nhiet do on dinh", 10, 40)
led.off()
oled.show()
time.sleep(3)
except Exception as e:
print("Error:", e)