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

Display de 4 dígitos y 7 segmentos
Funcionamiento del display de 4 dígitos y 7 segmentos con Arduino

Funcionamiento del display de 4 dígitos y 7 segmentos con Arduino

| Actualizado:
Comentarios: 0

Para mostrar más información, como la hora o la temperatura, necesitamos un display de más dígitos o conectar varios display de un solo dígito. En este tutorial veremos cómo conectar un display de 4 dígitos a Arduino. Contenido 1 Esquema…

Salidas digitales y ejemplos en Arduino
Salidas digitales y ejemplos en Arduino. Efecto coche fantástico.

Salidas digitales y ejemplos en Arduino. Efecto coche fantástico.

| Actualizado:
Comentarios: 0

Siguiendo con los tutoriales de Arduino vamos a programar el efecto de las luces del coche fantástico. Para ello primero veremos cómo encender y apagar un LED, a continuación haremos el efecto con 3 LEDS conectados en paralelo, con 7…

Lectura de un potenciómetro con Arduino
Lectura de un potenciómetro. Entradas analógicas en Arduino.

Lectura de un potenciómetro. Entradas analógicas en Arduino.

| Actualizado:
Comentarios: 0

En este post vamos a leer una señal analógica a través de un potenciómetro, mostraremos el valor por el puerto serie (monitor), en un segundo experimento lo transformaremos a voltaje, en porcentaje y utilizaremos una media para reducir los valores…

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

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

| Actualizado:
Comentarios: 0

¿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…

Comentarios - 0

Deja un comentario

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