Imprimir texto en LCD con NodeMCU ESP8266 e I2C

Conectar LCD con NodeMCU ESP8266

En este post de programación y electrónica vamos a trabajar con una LCD, módulo I2C y la tarjeta ESP8266 para hacer un sencillo Hola mundo en la LCD.

Es decir, vamos a usar la NodeMCU ESP8266 para imprimir texto en una LCD usando además un módulo I2C para ahorrar conexiones.

Sobre la dirección

Antes de usar el circuito I2C debes conocer la dirección del mismo, para ello ya hice un post.

Circuito de conexión LCD con ESP8266

Pasemos al circuito. En este caso es muy simple, pues básicamente conectamos el I2C a la LCD y después el I2C a la ESP8266. He utilizado el software para diseñarlo y queda así:

Conectar LCD con ESP8266
Conectar LCD con ESP8266

Si te quedan dudas de cómo se conecta el I2C y la LCD aquí una foto:

Conexión trasera I2C con LCD de 16 x 2
Conexión trasera I2C con LCD de 16 x 2

Instalando librería LiquidCrystal_I2C

Pasemos al software. Primero necesitamos instalar la librería. Si tú usas PlatformIO con VSCode entonces puedes ver un ejemplo de cómo buscar aquí. Básicamente la buscas e instalas:

Instalar librería LiquidCrystal_I2C para ESP8266 y LCD con I2C
Instalar librería LiquidCrystal_I2C para ESP8266 y LCD con I2C

Si usas Arduino, el proceso es similar. Solo fíjate en el nombre (LiquidCrystal_I2C) y el autor (Frank de Brabander).

Código para LCD en ESP8266

Imprimir texto en LCD con NodeMCU ESP8266 e I2C
Imprimir texto en LCD con NodeMCU ESP8266 e I2C

Ahora veamos el código que vamos a usar. Te repito que eres libre de usar cualquier IDE, solo realiza las adecuaciones pertinentes. En este caso creamos una referencia a la LCD con:

LiquidCrystal_I2C lcd(0x3f, 16, 2);

Fíjate en que 0x3f es la dirección que en tu caso puede variar. Luego la iniciamos:

Y encendemos su luz:

Nota importante: la ESP8266 no es capaz de proveer todo el voltaje que la LCD necesita. El texto sí se va a ver, pero no tan claro como cuando alimentamos al I2C con 5V.

Luego podemos movernos con el cursor e imprimir texto:

Finalmente el código completo queda así:

No estoy colocando nada en el loop porque solo necesito imprimir en la LCD una vez, pero tú puedes invocar a los métodos en cualquier lugar y en cualquier evento… es decir, mostrar texto al hacer una petición HTTP, al presionar un botón, etcétera.

El resultado ya pudiste observarlo anteriormente en el post. Obviamente este solo fue el hola mundo, pero a partir de aquí ya puedes crear bastantes cosas interesantes. En una ocasión yo hice el juego de la serpiente en una LCD con Arduino.

Para terminar te dejo con más posts sobre electrónica.

Encantado de ayudarte


Estoy disponible para trabajar en tu proyecto, modificar el programa del post o realizar tu tarea pendiente, no dudes en ponerte en contacto conmigo.

No te pierdas ninguno de mis posts

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.

Dejar un comentario