import time
import Adafruit_DHT
from RPLCD.gpio import CharLCD
import RPi.GPIO as GPIO
# Configuración del DHT11
sensor = Adafruit_DHT.DHT11
pin_dht = 4 # GPIO4
# Configuración del LCD en modo 4 bits
lcd = CharLCD(
numbering_mode=GPIO.BCM,
cols=16,
rows=2,
pin_rs=26,
pin_e=19,
pins_data=[13, 6, 5, 11] # D4, D5, D6, D7
)
try:
while True:
humedad, temperatura = Adafruit_DHT.read_retry(sensor, pin_dht)
lcd.clear()
if humedad is not None and temperatura is not None:
lcd.write_string(f"Temp: {temperatura}C")
lcd.cursor_pos = (1, 0)
lcd.write_string(f"Humed: {humedad}%")
else:
lcd.write_string("Error sensor")
lcd.cursor_pos = (1, 0)
lcd.write_string("DHT11")
time.sleep(2)
except KeyboardInterrupt:
pass
finally:
lcd.clear()
GPIO.cleanup()