0% encontró este documento útil (0 votos)
11 vistas5 páginas

Conectar y Programar LCD 16x2 con Arduino

El documento describe cómo incorporar un display LCD de 16x2 a una placa Arduino Uno y cómo programarlo utilizando la librería LiquidCrystal I2C. Se detallan los pasos de conexión del display, la inclusión de librerías en el código y ejemplos de programación para mostrar texto en el LCD. Además, se proponen ejercicios prácticos para experimentar con el funcionamiento del display.

Cargado por

mghanun
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
11 vistas5 páginas

Conectar y Programar LCD 16x2 con Arduino

El documento describe cómo incorporar un display LCD de 16x2 a una placa Arduino Uno y cómo programarlo utilizando la librería LiquidCrystal I2C. Se detallan los pasos de conexión del display, la inclusión de librerías en el código y ejemplos de programación para mostrar texto en el LCD. Además, se proponen ejercicios prácticos para experimentar con el funcionamiento del display.

Cargado por

mghanun
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

ROBÓTICA - Arduino-03

__________________________________________________________________________________

En la clase anterior vimos cómo incorporar componentes. Hoy vamos a trabajar incorporando un
display LCD de 16x2.
Un display 16x2 tiene 2 filas de 16 posiciones cada una. A su vez, cada posición está dividida en
Matrices de 5 x 8 pixeles.

En estas matrices, encendiendo y apagando pixeles (usando 1 y 0) podemos escribir cualquier letra,
símbolo o cualquier imagen que queramos representar.
Accedemos a la página: [Link] y seleccionamos la placa Arduino Uno.

Una vez seleccionada, se nos presentará la siguiente pantalla:

1
ROBÓTICA - Arduino-03
__________________________________________________________________________________

Vamos a hacer click en el botón Agregar Componentes

Agregar Componente

Seleccionamos LCD 16x2 (I2C) y aparecerá un display LCD.

Vamos a realizar la conexión del Display a nuestra Placa Arduino:

1) Conectamos el punto GND del display al puerto GND


(negativo) de la placa.
2) Conectamos el punto VCC del display al puerto 5V
(positivo) de la placa.
3) Conectamos el punto SDA del display al puerto A4
(Analog IN 4) de la placa.
4) Conectamos el punto SCL del display al puerto A5
(Analog IN 5) de la placa.

2
ROBÓTICA - Arduino-03
__________________________________________________________________________________

Para poder programar nuestro display, es necesario incorporar a nuestro programa una librería que
facilita el manejo. Para eso, vamos a ir a la opción Library Manager

Hacemos click en Add a New Library…

En la búsqueda escribimos liquid y elegimos LiquidCrystal I2C

3
ROBÓTICA - Arduino-03
__________________________________________________________________________________

Empezaremos nuestro programa incluyendo en el sketch la librería que acabamos de incorporar,


usando el comando #include ANTES de la función setup(). (La inclusión de librerías es lo primero
que debe haber en los programas C++)
#include <Wire.h>  Librería para comunicación del I2C
#include <LiquidCrystal_I2C.h>  Librería para el display LCD

Creamos un objeto variable lcd del tipo LiquidCrystal_I2C pasándole como parámetro el tipo de
display (16 x 2 paneles)
LiquidCrystal_I2C lcd = LiquidCrystal_I2C(0x27, 16, 2);

En nuestro código siempre haremos referencia a nuestro objeto lcd, usando sus métodos,
indicando la pertenencia con un punto (.) Por Ejemplo: [Link]()

En setup() Inicializamos el display y encendemos la luz de fondo:

void setup() {
//incializamos el LCD
[Link]();
[Link]();
}

En loop() posicionamos el cursor para empezar a escribir y luego escribimos.


IMPORTANTE! LA CUENTA DE LAS POSICIONES EMPIEZA SIEMPRE EN 0.

void loop() {
// Imprimimos 'Hello World!' on la primera línea del LCD
[Link](2, 0); // Colocamos el cursor en la 3era columna
// de la primera fila
[Link]("Hello World!"); // Mostramos "Hello World!"
[Link](2, 1); //Colocamos el cursor en la 3era columna
// de la segunda fila
[Link]("tutorial LCD");
}
Nuestro programa debería quedar así:
#include <Wire.h> // Library for I2C communication
#include <LiquidCrystal_I2C.h> // Library for LCD

LiquidCrystal_I2C lcd = LiquidCrystal_I2C(0x27, 16, 2); // Change to (0x27,20,4) for 20x4 LCD.

void setup() {
//incializamos el LCD
[Link]();
[Link]();
}

void loop() {
// Imprimimos 'Hello World!' on la primera línea del LCD
[Link](2, 0); // Colocamos el cursor en la 3era columna de la primera fila
[Link]("Hello World!"); // Mostramos "Hello World!"
[Link](2, 1); //Colocamos el cursor en la 3era columna de la segunda fila

4
ROBÓTICA - Arduino-03
__________________________________________________________________________________

[Link]("tutorial LCD");
}
Al ejecutarlo, deberíamos ver este resultado:

Ejercicio 1:
Posicionar el Cursor en la primer columna de la primera fila y escribir el texto: 01234567891011
Posicionar el Cursor en la segunda columna de la segunda fila y escribir los símbolos: $%&/()=#@*
Importante: Observar cómo se forman las figuras en las matrices 5 x 8 con los píxeles encendidos y
apagados
Ejercicio 2:
Probar: ¿Qué pasa si quiero mostrar la letra Ñ, ñ o vocales con acento?
¿Cómo lo solucionarías?
Ejercicio 3:
Probar qué pasa si comento (u omito) la instrucción [Link](). ¿Observás la diferencia?
Ejercicio 4: Probar utilizando el objeto lcd:
¿Qué hace el método clear()?
¿Qué hace el método noDisplay()?
¿Qué hace el método Display()?
Usando una combinación de éstos métodos con la instrucción delay() hacer que el texto parpadee.
Ejercicio 5: Probar utilizando el objeto lcd:
¿Qué hacen los métodos scrollDisplayLeft() y scrollDisplayRight()?

IMPORTANTE!!!: Guardá el Zip de este proyecto, lo usaremos en clases posteriores

También podría gustarte