from machine import Pin, ADC, PWM, I2C #se importa de la libreria el comando pin, adc, pwm, i2c
from utime import sleep, sleep_ms #se importa de la libreria el comando utime
from dht import DHT22 #se importa de la libreria el comando dht22
from ssd1306 import SSD1306_I2C #sse importa de la libreria el comando ssd1306
alto = 64 #altura de la pantalla oled en pixeles
ancho = 128 #ancho de la pantalla oled en pixeles
i2c=I2C(0, scl=Pin(22), sda=Pin(21)) #se define la variables
oled = SSD1306_I2C(ancho, alto, i2c)# Inicializa la pantalla OLED con el objeto I2C, ancho y alto definidos
dht= DHT22(Pin(15)) # Configura el sensor DHT22 en el pin 15
print(i2c.scan(), "conectada") #se imprime el mensaje i2c
while True: #se crea el bucle de las variables
dht.measure() # Realiza una medición con el sensor DHT22
tem = dht.temperature() # Obtiene la temperatura medida por el sensor
hum = dht.humidity()# Obtiene la humedad medida por el sensor
oled.fill(0) #limpia la pantalla oled, llenandola de color negra
oled.pixel(64, 60, 1) #dibuja un pixel en la posicion (64, 60) con el color blanco (1)
oled.vline(0, 0, 20, 1) #dibuja una linea vertical desde (0, 0) hasta (20, 1) con el color blanco
oled.vline(120, 0, 20, 1) # Dibuja una línea vertical desde (120, 0) hasta (20, 1) con el color blanco (1)
oled.hline(0, 0, 120, 1)# Dibuja una línea horizontal desde (0, 0) hasta (120, 1) con el color blanco (1
oled.hline(0, 20, 120, 1)# Dibuja una línea horizontal desde (0, 20) hasta (120, 1) con el color blanco (1)
oled.text("datos", 10, 10, 1) # Muestra el texto "datos" en la posición (10, 10) con el color blanco (1)
oled.text("tem:", 0, 30, 1)# Muestra el texto "tem:" en la posición (0, 30) con el color blanco (1)
oled.text("hum:", 0, 40, 1)# Muestra el texto "hum:" en la posición (0, 40) con el color blanco (1)
oled.text(srt(tem),60, 30, 1)# Muestra la variable 'tem' en la posición (60, 30) con el color blanco (1)
oled.text(srt(hum), 60, 40, 1) # Muestra la variable 'hum' en la posición (60, 40) con el color blanco (1)
oled.show() # Actualiza la pantalla para mostrar todos los dibujos y textos realizados