Está en la página 1de 3

Arduino: El LCD 16x2

Despus de ver como funcionan los pulsadores le toca el turno al LCD. El LCD (Liquid Crystal Display por sus
siglas en ingles) es una pantalla delgada y plana formada por pixeles. Una de las mejores cualidades de este
tipo de pantallas es su bajo consumo.

Este tipo de pantallas se utilizan en gran variedad de aparatos electrnicos dada su simplicidad tanto en
conexiones como en su utilizacin. En ella se pueden reflejar desde un simple texto tipo "hello World", hasta
coordenadas GPS o cualquier tipo de variable que quepa en sus 16 caracteres.
Tambin las hay de diferentes medidas, con mas o menos caracteres.
En este ejemplo en particular usaremos la tpica de 16x2.

Primero explicare cules son sus conexiones:

VSS o GND: Este pin del LCD es el pin conectado a masa (-)
VDD: Este pin es la alimentacin del LCD y se conecta a +5V
Vo: Es el pin del contraste, Este pin no est siempre presente, pero si tu LCD lo tuviera, hay que
conectarlo a un potencimetro para poder regular el contraste, si lo conectas directamente a GND
la pantalla no se ver correctamente.
RS: Es el pin de seleccin de registros que controla en que parte de la memoria del LCD esta
escribiendo los datos.
R/W: Modo de lectura o escritura. Este pin va conectado normalmente a masa (GND)
E: Este pin habilita los registros. (Enable)
DB0...DB7: Son los 8 pines de datos.
A: nodo del LED de iluminacin del LCD (+)
K: Ctodo del LED de iluminacin del LCD (-)

Su conexin con Arduino sera la siguiente:

Para facilitar el uso del LCD Arduino tiene una librera llamada "liquidCrystal.h" que har mucho ms fcil la
utilizacin de este dispositivo, dentro de esta librera estn los siguientes comandos:

begin(): Especifica las dimensiones del display LCD (ancho y alto)


clear(): Borra la pantalla del display LCD y posiciona el cursor en la esquina superior izquierda
home(): Posiciona el cursor en la esquina superior izquierda. Se trata de la posicin donde
aparecera el siguiente texto escrito en el display. a diferencia de clear() no borra el contenido
anterior del display
setCursor(): Establece la posicin del cursor donde empezaran a aparecer los siguientes caracteres
escritos en el LCD
write(): Escribe un carcter en el LCD.
print(): Imprime un texto en el LCD
cursor(): Muestra el cursor en el LCD: un guion bajo en la posicin donde se escribir el siguiente
carcter.
noCursor(): Oculta el cursor.
blink(): Muestra el cursor del LCD parpadeando, se utiliza en combinacin cursor(), el resultado
depender de la pantalla particular.
noBlink(): Desactiva el cursor parpadeando
display(): Enciende la pantalla despus de haberla apagado con noDisplay(), esto restablecer el
texto y el cursor que estaba en la pantalla.
noDisplay(): Apaga la pantalla sin perder el texto que aparece en ella
scrollDisplayLeft(): Desplaza el contenido de la pantalla (texto y cursor) un espacio hacia la
izquierda.
scrollDisplayRight(): Desplaza el contenido de la pantalla (texto y cursor) un espacio hacia la
derecha
autoscroll(): Activa el desplazamiento automtico de la pantalla LCD. Esto hace que con cada salida
de un nuevo carcter desplace al anterior un espacio. Si la direccin es de izquierda a derecha (por
defecto), la pantalla se desplaza a la izquierda y si la direccin de derecha a izquierda, la pantalla se
desplaza a la derecha. Esto hace que cada nuevo carcter salga siempre en la misma ubicacin.
noAutoscroll(): Desactiva el desplazamiento automtico.
leftToRight(): Ajusta la direccin para el texto escrito en la pantalla de izquierda a derecha, no
afecta al texto previamente escrito en la pantalla.
rightToLeft(): Ajusta la direccin para el texto escrito en la pantalla de derecha a izquierda, no
afecta al texto previamente escrito en la pantalla.
createChar(): Crea un carcter personalizado para usarlo en la pantalla. Se admiten hasta 8
caracteres de 5x8 pixeles numerados de 0 a 7.
Bien, ahora que sabemos como se conecta el display LCD ycuales son los comandos que utiliza esta librera,
vamos a ver unos ejemplos de como mostrar textos la pantalla, empezare por los ms simples e ire
ampliando en sucesivos articulos.

Para empezar, el ms sencillo es el mtico "Hello world" el cual mostrara este mensaje en la parte superior
de nuestra pantalla LCD. Lo podis encontrar en los mismos ejemplos que trae el programa de Arduino
en Archivo > Ejemplos > LiquidCristal > HelloWorld. Para el Blog he programado uno un poco ms complejo,
donde, adems de escribir, limpia la pantalla y da varios mensajes ms.
Es este:

#include <liquidcrystal.h> //Incluimos la libreria "liquidCristal

LiquidCrystal lcd(12, 11, 5, 4, 3, 2); //Configuramos los pines 12=RS 11=E 5,4,3,2=pines de control

void setup() {
lcd.begin(16, 2); //Configuramos los nmeros de filas y de columnas
}

void loop() {
lcd.setCursor(0,0); //Situa el cursor en la primera posicin de la primera lnea
lcd.print(" Bienvenidos a "); //Escribe el texto entre comillas
lcd.setCursor(1, 1); //Situa el cursor en la segunda posicin de la segunda lnea
lcd.print("Infotronikblog"); //Escribe el texto entre comillas
delay (5000); //Hace una pausa de 5000ms (5seg)

lcd.clear(); //Limpia la pantalla


lcd.setCursor(3,0); //Situa el cursor en la cuarta posicin de la primera lnea
lcd.print("Ejemplo de"); //Escribe el texto entre comillas
lcd.setCursor(0,1); //Situa el cursor en la primera posicin de la segunda lnea
lcd.print("escritura en LCD"); //Escribe el texto entre comillas
delay(10000); //Hace una pausa de 10000ms (10seg)

lcd.clear(); //Limpia la pantalla


lcd.setCursor(0,0); //Situa el cursor en la primera posicin de la primera lnea
lcd.print("Gracias por ver"); //Escribe el texto entre comillas
lcd.setCursor(3,1); //Situa el cursor en la cuarta posicin de la segunda lnea
lcd.print("el video"); //Escribe el texto entre comillas
delay(10000); //Hace una pausa de 10000ms (10seg)
}
</liquidcrystal.h>