from machine import Pin
import dht
import time
# Cảm biến DHT22 kết nối GPIO27
dht22 = dht.DHT22(Pin(27))
# Thiết bị đầu ra
den = Pin(23, Pin.OUT)
quat = Pin(33, Pin.OUT)
loa = Pin(17, Pin.OUT)
# Biến điều khiển trạng thái loa
trang_thai_loa = False
if __name__ == "__main__":
time.sleep(1) # Chờ cảm biến ổn định
while True:
dht22.measure()
temp = dht22.temperature()
humi = dht22.humidity()
print("Nhiệt độ = %.1f°C | Độ ẩm = %.1f%%" % (temp, humi))
if temp > 40:
den.on()
quat.on()
trang_thai_loa = True
print("⚠️ Nhiệt độ cao! Đã bật cảnh báo.")
else:
den.off()
quat.off()
trang_thai_loa = False
print("✅ Nhiệt độ bình thường.")
# Điều khiển loa liên tục nếu trạng thái bật
if trang_thai_loa:
loa.value(1)
time.sleep_us(250)
loa.value(0)
time.sleep_us(250)
else:
loa.value(0)
time.sleep(0.01) # Nghỉ ngắn khi loa tắt
Loading
esp32-devkit-c-v4
esp32-devkit-c-v4