1. El Octavo Bit
  2. / Arduino
  3. / Proyectos para Arduino
  4. / ¿Cómo conectar una pantalla LCD a Arduino UNO?

¿Cómo conectar una pantalla LCD a Arduino UNO?

| Actualizado:
Comentarios: 0

¿Cómo conectar una pantalla LCD a Arduino UNO?
¿Cómo conectar una pantalla LCD a Arduino UNO?

¿Quieres aprender a conectar una pantalla LCD con Arduino? En este post se mostrará cómo montar el circuito electrónico y el código necesario para comprobar su funcionamiento, mostrar caracteres en la pantalla y cómo desplazar el texto a la derecha o a la izquierda.

En este artículo vamos a tratar de conectar una pantalla LCD de 16×2 líneas. Mostraremos un pequeño texto y veremos cómo moverlo por la pantalla.

Material necesario:

  • Arduino Uno o similar.
  • Protoboard.
  • Cables.
  • Pantalla LCD.
  • Potenciómetro lineal.
  • Resistencia de 220 Ohm.
Pines del módulo pantalla LCD para Arduino

Lo primero es conocer la funcionalidad de cada pin de la pantalla, ya que así será más fácil su control:

  • GND: toma de tierra, siempre va a negativo.
  • VDD: alimentación de la pantalla, es recomendable poner una resistencia de 220 ohm para evitar quemarla.
  • VS: es para ajustar el contraste de la pantalla, que puede hacerse a través de un potenciómetro. Podemos utilizar uno de 10 K.
  • RS: Register Select, para controlar las órdenes de la pantalla, como escribir, borrar, etc.
  • RW: Read/Write, controla el modo de lectura o escritura en la pantalla.
  • E: Enable, permite que la pantalla reciba información.
  • D0 – D7: Son los pines de datos, utilizaremos del D4 al D7.
  • A y K: son los pines de la luz de fondo verde de la pantalla.

Esquema montaje:

Esquema de la pantalla LCD y potenciómetro.

Para realizar las conexiones vamos a ir poco a poco, comenzamos conectando la tensión y GND a la protoboard. Seguidamente, conectamos la alimentación de la pantalla LCD: el pin 16 del LCD a tierra y el 15 a 5V.

Primer paso para el montaje de Arduino con la pantalla LCD

Si conectamos el cable a la placa Arduino, el LCD se debería iluminar, si no ocurre, algo va mal.

¿Seguimos? colocamos el potenciómetro de ajuste: conectamos el pin correspondiente a tierra, y el otro, a la fuente de alimentación; el pin del centro, al pin 3 del LCD que corresponde con el ajuste de contraste. Para dar tensión a la pantalla LCD, el pin 2 y el pin 1 a tierra.

Pantalla LCD con Arduino

Si encendemos y probamos a girar el potenciómetro, se debería ver unos cuadritos en la pantalla, si no es así, hay que revisar las conexiones.

Tabla con la relación de pines conectados a Arduino.

Conectamos los pines de control, RS al pin 7 de la placa Arduino, RW a negativo y E al pin 8. Los pines de datos, D4 al pin 9, D5 al pin 10, D6 al pin 11 y D7 al pin 12. ¿Ya está todo montado? ¡Vamos con el código! El código no tiene ninguna complicación, necesitamos incluir la librería LiquidCrystal.h: inicializamos el LCD, indicando los pines utilizados en la placa de Arduino. Lo siguiente, es indicar el tamaño de la pantalla y en el bucle loop() indicamos la posición y línea donde queremos escribir el texto.

Código:

#include "LiquidCrystal.h"
LiquidCrystal lcd(7, 8, 9, 10, 11, 12);  //Pines donde va conectada la pantalla (RS, E, D4, D5, D6, D7)

void setup() {
  lcd.begin(16, 2);   //Inicializamos la pantalla
}

void loop() {
  //Mensaje 1
  lcd.setCursor(0, 0);          //Posiciona el cursor en la columna 0, fila 0
  lcd.write("Prueba 1:");      //Escribe el mensaje
  lcd.setCursor(0, 1);         //Posiciona el cursor en la columna 0, fila 1
  lcd.write("Hola mundo!");    //Escribe el mensaje
  delay(3500);                 //Espera 3.5 segundos
  lcd.clear();                 //Borra el mensaje mostrado

  //Mensaje 2
  lcd.setCursor(3, 0);          //Posiciona el cursor en la columna 3, fila 0
  lcd.write("Prueba 2:");       //Escribe el mensaje
  lcd.setCursor(2, 1);          //Posiciona el cursor en la columna 2, fila 1
  lcd.write("Arduino y LCD");   //Escribe el mensaje
  delay(3500);                  //Espera 3.5 segundos
  lcd.clear();                  //Borra el mensaje mostrado
}

Detalles que debemos de conocer del código: se utiliza la librería LiquidCrystal, que inicializamos antes del setup(), con la instrucción lcd(RS, E, D4, D5, D6, D7), donde RS corresponde con el pin 7, E con el 8, D4 con el 9, D5 con el 10, D6 con el 11 y D7 con el 12, como dijimos más arriba.

Con esta librería tenemos la posibilidad de desplazar el texto hacia la izquierda o hacia la derecha. Las funciones son:

  • scrollDisplayLeft(), hacia la izquierda.
  • scrollDisplayRight(), hacia la derecha.

Estas funciones van desplazando una casilla cada vez, pero entre cada desplazamiento debemos poner una pausa. Vamos a probarlo con el mismo diagrama anterior, el código sería:

#include "LiquidCrystal.h"
LiquidCrystal lcd(7, 8, 9, 10, 11, 12);  //Pines donde va conectada la pantalla (RS, E, D4, D5, D6, D7)

unsigned long tiempo_anterior = 0;
int periodo = 600;    //Tiempo para desplazamiento

void setup() {
  lcd.begin(16, 2);   //Inicializamos la pantalla
}

void loop() {
  //Mensaje 1
  lcd.setCursor(0, 0);          //Posiciona el cursor en la columna 0, fila 0
  lcd.write("Prueba 1:");      //Escribe el mensaje
  
  lcd.setCursor(0, 1);         //Posiciona el cursor en la columna 0, fila 1
  lcd.write("Hola mundo!");    //Escribe el mensaje
  if (millis() > tiempo_anterior + periodo){
    lcd.scrollDisplayRight();     //Hace scroll o desplazamiento a la derecha cada 600 milisegundos
    tiempo_anterior = millis();
  }
}

Artículos que te pueden interesar

Joystick analógico y Arduino
¿Cómo utilizar un joystick analógico con Arduino?

¿Cómo utilizar un joystick analógico con Arduino?

| Actualizado:
Comentarios: 0

En este post veremos la conexión de un joystick a la placa Arduino. Primero se comprobara hacia donde se mueve sacando los datos por el serial monitor y en un segundo proyecto, según el movimiento del joystick encenderá un led.…

Módulo bluetooth HC-06 con Arduino
Tutorial básico de uso del módulo bluetooth HC-06 en Arduino

Tutorial básico de uso del módulo bluetooth HC-06 en Arduino

| Actualizado:
Comentarios: 0

El objetivo de este tutorial es poder añadir un módulo bluetooth a nuestra placa de Arduino y poder comunicarnos con un teléfono móvil Android a través de una aplicación. Primero veremos cómo conectarlo al móvil y después, cómo configurar el…

Robot esquiva obstáculos con Arduino
Robot esquiva obstáculos con Arduino y un sensor de ultrasonidos

Robot esquiva obstáculos con Arduino y un sensor de ultrasonidos

| Actualizado:
Comentarios: 2

En este proyecto nos marcamos el objetivo de desarrollar un robot capaz de esquivar objetos. Un robot que avanzará en línea recta mientras que no detecte ningún obstáculo; en caso de detectar algún estorbo, girará sobre sí mismo hasta que…

Control Remoto en Arduino
Control Remoto en Arduino con la librería IRremote

Control Remoto en Arduino con la librería IRremote

| Actualizado:
Comentarios: 0

¿Qué te parece utilizar un mando para apagar o encender la luz? En este post vamos a utilizar un mando a distancia y un sensor infrarrojo con el que encender o apagar un led. Son elementos que podrás aplicar en…

Comentarios - 0

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *