ESP8266 - Pantalla LCD
Este tutorial te enseña cómo usar una pantalla LCD con ESP8266, cómo programar para ESP8266 para mostrar texto y caracteres especiales en la pantalla LCD.
Hardware Requerido
Or you can buy the following kits:
| 1 | × | DIYables Sensor Kit (30 sensors/displays) | |
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Acerca de LCD I2C 16x2
La pantalla LCD I2C es una mejor alternativa a la pantalla LCD estándar. Con solo 4 pines, facilita la conexión al ESP8266. Un potenciómetro integrado facilita ajustar el contraste de la pantalla LCD.
Pinout I2C de la pantalla LCD
El LCD I2C utiliza una interfaz I2C para conectarse al ESP8266. Tiene 4 pines:
- Pin GND: Este debe conectarse a GND (0V).
- Pin VCC: Este es el suministro de energía para la pantalla LCD y debe conectarse a VCC (5V).
- Pin SDA: Esta es la señal de datos I2C.
- Pin SCL: Esta es la señal de reloj I2C.

Coordenada LCD
El LCD I2C 16x2 tiene un total de 16 columnas y 2 filas. Las columnas y las filas se numeran a partir de 0.

Diagrama de Cableado

This image is created using Fritzing. Click to enlarge image
Para obtener m\u00e1s informaci\u00f3n, consulte Pines del ESP8266 y c\u00f3mo alimentar ESP8266 y otros componentes.
| LCD I2C | ESP8266 |
|---|---|
| Vin | Vin |
| GND | GND |
| SDA | D2 (GPIO4) |
| SCL | D1 (GPIO5) |
Cómo programar para LCD I2C
La biblioteca LiquidCrystal_I2C debe estar incluida para poder usar el LCD.
- Configurar la pantalla LCD:
La pantalla LCD debe configurarse antes de poder utilizarla.
- Escribir en la pantalla LCD:
Escribir en la pantalla LCD es sencillo gracias a la biblioteca LiquidCrystal_I2C.
- Declara un objeto de la clase LiquidCrystal_I2C, especificando su dirección I2C, el número de columnas y el número de filas.
- Inicia la pantalla LCD.
- Coloque el cursor en la ubicación deseada (column_index, row_index)
- Mostrar un mensaje en la pantalla LCD.
Explora las posibilidades de lo que se puede lograr con LCD al mirar la sección "Haz más con LCD".
※ Nota:
La dirección del LCD puede variar según el fabricante. En nuestro código, hemos utilizado 0x27, que está especificado por el fabricante DIYables (https://diyables.io/products/lcd-i2c-16x2).
Código ESP8266
Pasos R\u00e1pidos
Para empezar con ESP8266 en el IDE de Arduino, siga estos pasos:
- Consulta el cómo configurar el entorno para ESP8266 en Arduino IDE si es tu primera vez usando ESP8266.
- Conecta los componentes tal como se muestran en el diagrama.
- Conecta la placa ESP8266 a tu computadora usando un cable USB.
- Abre Arduino IDE en tu computadora.
- Elige la placa ESP8266 correcta, como (p. ej. NodeMCU 1.0 (Módulo ESP-12E)), y su puerto COM correspondiente.
- Haz clic en el icono Bibliotecas en la barra izquierda del Arduino IDE.
- Busca "LiquidCrystal I2C" y localiza la biblioteca LiquidCrystal_I2C creada por Frank de Brabander.
- Luego, haz clic en el botón Instalar para agregar la biblioteca.

- Copia el código y ábrelo en el IDE de Arduino.
- Haz clic en el botón Subir en el IDE de Arduino para compilar y subir el código al ESP8266.
- Comprueba el resultado en la pantalla LCD.

- De imágenes
- Experimenta cambiando las palabras y la ubicación de las imágenes.
Video Tutorial
Estamos considerando crear tutoriales en video. Si considera que los tutoriales en video son importantes, suscríbase a nuestro canal de YouTube para motivarnos a crear los videos.
Haz más con LCD
Personaje personalizado
lcd.print() solo permite caracteres ASCII. Para mostrar un carácter o símbolo especial (p. ej., corazón, pájaro enojado), use el generador de caracteres.
Un LCD 16x2 tiene la capacidad de mostrar 32 caracteres. Cada carácter está formado por 40 píxeles, con 8 filas y 5 columnas.
El generador de caracteres genera un carácter de 40 píxeles de tamaño. Para usarlo, simplemente siga estos pasos:
El resultado mostrado en la pantalla LCD es: . El resultado mostrado en la pantalla LCD es:

Múltiples caracteres personalizados
Podemos crear un máximo de 8 caracteres personalizados, numerados del 0 al 7. El siguiente ejemplo crea y muestra tres de ellos.
El resultado mostrado en la pantalla LCD es: . El resultado mostrado en la pantalla LCD es:

Resumen: cómo usar un carácter personalizado en la pantalla LCD
- Utilice el generador de caracteres para generar código binario para su personaje personalizado.
- Copie el código binario generado en el paso anterior y declárelo.
- Define un carácter de tu propio diseño en la rutina setup() y asígnale un valor numérico entre 0 y 7.
- Muestra el carácter personalizado en la pantalla LCD en cualquier momento, ya sea en la función setup() o en la función loop().
Otras funciones
- Imprimir "Hola Mundo"
Inserte las siguientes funciones en la función loop() de forma sucesiva:
- Limpiar la pantalla LCD
- Esperar 5000 milisegundos
- Imprimir "Hola Mundo"
- Coloque el cursor en la esquina superior izquierda de la pantalla LCD.
- Coloca el cursor en una columna y una fila en particular.
- Mostrar el cursor en la pantalla LCD.
- Hace que el cursor de la pantalla LCD sea invisible.
- Mostrar el cursor de la pantalla LCD parpadeando.
- Deshabilitar el parpadeo del cursor LCD.
- Además, puedes encontrar información en Referencia de la biblioteca LiquidCrystal
Desafíate a ti mismo
Utilice una pantalla LCD para realizar alguno de los siguientes proyectos:
- Transmite texto desde la PC (a través del Monitor Serial) y muéstralo en la pantalla LCD. Consejo: Consulta Cómo enviar datos desde la PC a Aduino
- Demuestra la tecla pulsada del teclado en la pantalla LCD. Consejo: Consulta ESP8266 - Teclado
Solución de problemas en LCD I2C
i. Ajusta el contraste de la pantalla LCD girando el potenciómetro ubicado en la parte trasera de la pantalla LCD.
i. Dependiendo del fabricante, la dirección I2C de la pantalla LCD puede variar. En general, la dirección I2C predeterminada de la pantalla LCD es 0x27 o 0x3F. Prueba estos valores uno a la vez. Si no funciona, ejecuta el código a continuación para determinar la dirección I2C.
La salida mostrada en el Monitor Serial es: . El efecto que se puede ver en el Monitor Serial es: . Lo que aparece en el Monitor Serial es: