Tutorial ESP32 11/55 - Uso de LCD1602 LCD2004 con ESP32 - Kit de aprendizaje IoT ESP32 de SunFounder

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
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
  • 8:51 Instalando la biblioteca LCD
  • 10:06 Buscando la dirección I2C para el LCD
  • 14:00 Código de Arduino explicado
  • 17:50 Demostración
  • 20:54 usando LCD2004 con ESP32
  • 22:58 La LCD1602 verde es mejor que la azul

Imágenes

ESP32_11-5-l2C.MOV_snapshot_00.02.763
ESP32_11-5-l2C.MOV_snapshot_00.02.763
SunFounder-ESP32-Lesson-11-LCD1602.mp4_snapshot_20.23.926
SunFounder-ESP32-Lesson-11-LCD1602.mp4_snapshot_20.23.926
ESP32-11_LCD-wiring
ESP32-11_LCD-wiring
ESP32-11_LCD-wiring-schematic
ESP32-11_LCD-wiring-schematic
810-ESP32 Tutorial 11/55- Arduino code for LCD using ESP32
Idioma: C++
¡Copiado!

Recursos y referencias

Archivos📁

No hay archivos disponibles.