Algunas partes de este sitio web aún no están disponibles en su idioma. Estamos trabajando para solucionar esto y nos disculpamos por cualquier inconveniente.
Tutorial ESP32 11/55 - Uso de LCD1602 LCD2004 con ESP32 - Kit de aprendizaje IoT ESP32 de SunFounder
En este tutorial, exploraremos cómo usar el LCD1602 y el LCD2004 con el microcontrolador ESP32. Estas pantallas LCD nos permiten mostrar texto y otra información de manera efectiva, mejorando nuestros proyectos con retroalimentación visual. También abordaremos cómo ajustar el contraste para garantizar la legibilidad.
El ESP32, parte del kit de aprendizaje IoT SunFounder ESP32, tiene capacidades de Wi-Fi y Bluetooth integradas, lo que lo convierte en una herramienta poderosa para diversas aplicaciones de IoT. Al conectar la pantalla LCD al ESP32, podemos mostrar fácilmente mensajes o salidas de datos de nuestro código, haciendo que nuestros proyectos sean más interactivos y amigables para el usuario (en el video a las 00:30).
Hardware Explicado
Los componentes principales que utilizaremos incluyen el microcontrolador ESP32 y el módulo de pantalla LCD1602 o LCD2004. El ESP32 servirá como el cerebro de nuestro proyecto, procesando entradas y controlando salidas, incluida la pantalla LCD.
El módulo LCD se comunica a través de I2C, lo que simplifica el cableado al utilizar solo dos pines de datos (SDA y SCL) para la comunicación, junto con conexiones de alimentación y tierra. Esta configuración reduce significativamente la complejidad de conectar múltiples pines, lo que permite un circuito más limpio y manejable.
Detalles de la hoja de datos
Fabricante
SunFounder
Número de parte
LCD1602
Voltaje de lógica/IO
5 V
Tensión de alimentación
5 V
Tamaño de la pantalla
16 x 2 caracteres
Retroiluminación
Sí
Interfaz
I2C
Dimensiones
80 x 36 mm
Notas / variantes
Comúnmente utilizado con la dirección I2C 0x27
Asegúrese de proporcionar un suministro de voltaje adecuado (5 V) para evitar daños.
Utiliza cables cortos para minimizar la interferencia en las líneas I2C.
Ajuste el potenciómetro para una visibilidad de contraste óptima.
Verifique la dirección I2C si la pantalla no se inicializa (direcciones comunes: 0x27, 0x3F).
Limpia la pantalla antes de actualizar los mensajes para evitar superposiciones.
Instrucciones de cableado
ESP32-11_LCD-esquema-de-conexiones
ESP32-11_LCD-wiring
Para conectar el LCD1602 al ESP32, primero conecta el pin de tierra del LCD al pin de tierra del ESP32. Luego, conecta el pin VCC del LCD a la salida de 5V del ESP32. Para la comunicación I2C, conecta el pin SDA del LCD al pin 21 del ESP32 y conecta el pin SCL del LCD al pin 22 del ESP32. Asegúrate de que las conexiones estén seguras para evitar problemas de comunicación.
Es importante tener en cuenta que, aunque el ESP32 opera a niveles de lógica de 3.3V, el LCD1602 requiere 5V para un funcionamiento adecuado. Por lo tanto, asegúrate de estar utilizando la fuente de voltaje correcta para evitar dañar el LCD. Si estás utilizando un tamaño de LCD diferente, ajusta el cableado de acuerdo con la dirección I2C y las especificaciones.
Ejemplos de código y guía paso a paso
En el código, comenzamos incluyendo las bibliotecas necesarias para la comunicación I2C y el LCD. Creamos una instancia del LCD usando la dirección I2C 0x27 y especificamos que tiene 16 columnas y 2 filas.
#include
#include
LiquidCrystal_I2C lcd(0x27,16,2); // set the LCD address to 0x27 for a 16 chars and 2 line display
Esta configuración nos permite controlar la LCD fácilmente. En elsetup()función, inicializamos el LCD y encendemos la retroiluminación, seguido de imprimir un mensaje de bienvenida.
void setup()
{
lcd.init(); // initialize the lcd
lcd.backlight(); // Turns on the LCD backlight.
lcd.print("Hello, world!"); // Print a message to the LCD.
delay(3000);
}
En elloop()función, actualizamos continuamente la pantalla borrándola, configurando la posición del cursor e imprimiendo el valor actual del contador. Esto demuestra cómo el LCD puede mostrar dinámicamente información cambiante.
void loop()
{
lcd.clear();
lcd.setCursor(0, 0); // Sets the cursor position to the first row and first column (0, 0).
lcd.print("COUNT: ");
lcd.print(count); // Prints the current value of the count variable.
delay(1000);
count++; // Increments the counter by 1.
}
El código completo se cargará debajo del artículo, donde podrás ver la implementación completa y cualquier funcionalidad adicional añadida para tu proyecto.
Demostración / Qué Esperar
Una vez que todo esté conectado y el código esté subido, el LCD debería mostrar "¡Hola, mundo!" durante 3 segundos antes de comenzar un contador que aumenta cada segundo. Puedes ajustar el contraste usando el potenciómetro para asegurarte de que el texto sea fácilmente legible (en el video a las 08:45).
Si encuentras algún problema, verifica las conexiones del cableado y asegúrate de que se esté utilizando la dirección I2C correcta. Un error común es no hacer coincidir la dirección I2C del LCD con lo que está configurado en el código, lo que puede impedir que la pantalla funcione correctamente.
Marcas de tiempo del video
00:00 Iniciar
1:47 Introducción al LCD
3:26 Página de documentación
5:06 Cómo cablear un LCD con ESP32
9:07 Seleccionando la placa ESP32 y el puerto COM en Arduino