Universidad Tecnológica de Pereira Microcontroladores 2
Facultad de Tecnologías Jimy Alexander Cortes Osorio
Ingeniería Mecatrónica Marzo-2020
DISPLAY LCD POR COMANDOS
Microcontroladores II
II
Jonathan Liscano, Julián Morales Mesa, Juan Pablo Sandoval Galvis
Universidad Tecnológica de Pereira, Risaralda, Colombia
[Link]@[Link]
Resumen - En la práctica #4 del curso de lo que se está enviando por el bus es un dato o una
microcontralodres II, se trabajó con la pantalla LCD, la instrucción (RS), y un pin que indica si se va a leer o
cual, puede tener dos maneras de uso, de acuerdo al escribir en el módulo (R/W). La tabla 1 describe en
requerimiento del programador, siendo así una detalle los pines mencionados.
herramienta práctica, y obteniendo los mismo resultados
en los dos casos, que son nombrados; modo 4 y 8 bits.
Estos dos modos se usaron para escribir la palabra UTP
y 2020, estando en la primera fila y de manera central
UTP, y la fecha 2020 en la segunda fila de la pantalla
LCD.
Abstract- In the following laboratory practice, you will
learn the elementary connections for the operation of the
JHD162A (or compatible) display in 4 and 8 bit mode,
in addition, the instructions and elementary algorithms
for the operation of a 2X16 LCD in 4 and 8 bit mode
will be identified and implemented.
These two modes were used to write the word UTP and
2020, being in the first row and centrally UTP, and the Tabla 1. Pines de conexión.
date 2020 on the second line of the LCD screen.
I. INTRODUCCIÓN
Los módulos LCD se encuentran en diferentes
presentaciones, por ejemplo 2x16 (2 líneas de 16
caracteres), 2x20, 4x20, 4x40, etc. Es conveniente
buscar en el Datasheet para encontrar aquel que cumpla
con las necesidades de nuestro proyecto. La forma de
utilizarlos y sus interfaces (como se conectan) son
similares. En la hoja de datos del display viene la
Fig. 1 Pines de conexión. Y LCD física.
distribución de pines, alimentación y el controlador (CI
interno del módulo), etc. Es fundamental también buscar Las características generales de un módulo LCD 16x2
la hoja de datos de CI interno o controlador de LCD, allí son las siguientes:
encontraremos la información para operar con el mismo. - Consumo muy reducido, del orden de 7.5mW
- Pantalla de caracteres ASCII, además de los
Describiremos a continuación como trabajar con el caracteres japoneses Kanji, caracteres griegos y
display 2x16 y se podrá considerar esta información símbolos matemáticos.
genérica para display´s similares. Se muestra en la - Desplazamiento de los caracteres hacia la
figura 1, un display de este tipo. Los pines de conexión izquierda o a la derecha
de estos módulos incluyen un bus de datos de 8 bits, un - Memoria de 40 caracteres por línea de pantalla,
pin de habilitación (E), un pin de selección que indica, si visualizándose 16caracteres por línea
- Movimiento del cursor y cambio de su aspecto segunda en su segunda línea, y para llevar a cabo esto se
- Permite que el usuario pueda programar 8 deben usar los 2 modos de operación ya antes explicados
caracteres y consultados, 4 y 8 bits; otro de los parámetros es la
- Pueden ser gobernados de 2 formas principales: restricción del uso de librerías dentro de la programación
Conexión con bus de 4 bits, o Conexión con bus del PIC.
de 8 bits.
1) Primer código: Modo 4 bits.
II. METODOLOGÍA
Con la ayuda del software C compiler y los
Según la operación que se desee realizar en el módulo conocimientos adquiridos acerca del modo de operación
LCD, los pines de control E, RS#, RW# deben tener un de 4 bits se procede a realizar el programa (Fig. 3) que
estado determinado. Además debe tener en el bus de permitirá configurar la LCD para así recibir los datos del
datos un código que indique un carácter para mostrar en microcontolador (16f887) por solo 4 pines más los 2
la pantalla o una instrucción de control para el display. pines (RS, E) para la selección de dato y habilitación del
Los módulos LCD responden a un conjunto especial de modo 4 bits.
instrucciones, estas deben ser enviadas por el
microcontrolador o sistema de control al display, según
la operación que se requiera. Se muestran a continuación
(Fig. 2) el conjunto de instrucciones del módulo LCD.
Fig.3 Modo de operación 4 bits " UTP 2020"
Con el anterior programa se logra la configuración de la
LCD y así transmitir los datos que el microcontrolador le
desea enviar por el puerto C en modo 4 bits, para
Fig. 2 conjunto de instrucciones detallar el programa se observa el uso de vectores (22)
para poder usar cada carácter de la tabla ASCII (véase en
la figura 4), correspondiente a las letras necesarias para
A. Planteamiento de ejercicios y Simulación escribir “UTP 2020”, prosiguiendo a la configuración de
los puertos (C, D), luego se configura el modo de
Luego de la explicación por parte del docente y la debida operación y se espera (Delay) algunos milisegundos para
consulta externa se han planteado los dos siguientes el procesamiento del PIC y la LCD, para así encender
ejercicios a desarrollar. Se debe visualizar en el elemento nuestro elemento de visualización y posicionar el cursor
electrónico LCD la palabra “UTP 2020”, teniendo como en la fila y columna requerida, finalmente se llama la
condiciones para el ejercicio que la primera parte de la secuencia ordenada de caracteres necesarios para escribir
frase se mostrara en la primera línea (renglón) y la la frase solicitada por el ejercicio.
bits necesarios para encender, y modificar el modo de
operación, usando asi, dando como “enter” el pin “E” la
cual envía la combinación digitada. Luego de
configurada se procede a la parte de escritura, y esta
conlleva otro tipo de configuración donde el bit del
“RS” debe estar en “1”.
2) Segundo código: Modo 8 bits.
Para la segunda parte del ejercicio se genera un
programa que se observa en la Fig. 6 el cual facilita él
envió de datos, ya que se hace por medio del modo 8 bits
y las líneas de código se reduce gracias a esta
configuración que manda a la LCD paquetes de bits de
mayor tamaño, pero usa más pines del microcontrolador
lo que para algunos proyectos puede ser una desventaja.
Fig.4 Código ACII
ASCII es la sigla para «American Standard Code for
Information Interchange» (Código Standard
Norteamericano para Intercambio de Información). Este
código fue propuesto por Robert W. Bemer, buscando
crear códigos para caracteres alfanuméricos (letras,
símbolos, números y acentos).
El desarrollo de este código fundamentalmente se debió
a la necesidad de que las computadoras y dispositivos de
distintos fabricantes tuvieran un lenguaje común con el
cual comunicarse, y de este modo poder ofrecer una
compatibilidad más flexible y segura entre ellos.
Fig.6 Modo de operación 8 bits " UTP 2020"
Fig. 5 configuración manual modo 4 bits
En la figura 5 se visualiza el proceso para la
configuración de la LCD manualmente, la cual se realizó
previamente para luego pasar a la programación por
medio del PIC, también se denota la secuencia de los
Fig. 7 configuración manual modo 8 bits
Se denota la diferencia entre los dos posibles modos de Fig.8 simulacion en Proteus
operación; en la figura 7 se observa la configuración
manual del modo 8 bits y como su nombre lo indica son
8 pines que ingresan los datos y no bloques de 4 bits A. Construcción
como el anterior punto del ejercicio, esto facilita el
código ahorrando líneas pero abarcando más pines de
Los elementos electrónicos para el montaje físico
hardware.
- 1 Protoboard
- 1 LCD 16x2.
NOTA: Finalizada la digitación de los dos códigos se
- 1 PIC16F887A
compilan los programas y se verifican que no presenten
- 1 Potenciometro de 1 kohm.s
errores, en la parte inferior de la ventana muestra los
- 1 Pickit 3
resultados de la compilación; de tener errores se deben
- Cables conectores
realizar las correcciones y compilar nuevamente.
- 1 Fuente 5v
- 1 Multimetro
3) Generar diseño en Proteus
1) Montaje en Protoboard
Haciendo uso del software Proteus se realiza el
respectivo diseño electrónico ilustrado en la Fig.8
Considerando la simulación y montaje en Proteus se
aclarando los pines de VSS -VDD son los pines de
prosigue al montaje de cada componente; el datasheet
alimentación y VEE corresponde al pin de contraste, lo
(Fig.9) del PIC proporciona la información necesaria
regularemos con un potenciómetro de 100 ohm; Los
para conectar adecuadamente los elementos en su debida
pines de control son RS-RW-E, y por último los pines
entrada o salida.
del D0 al D7 son el bus de datos bidireccional. Para el
microcontrolador usamos el puerto D que viene
configurado por defecto en la librería y para enviar los
datos de control el puerto A.
Fig. 9 Diagrama pines PIC16F887.
En la Fig. 10 se ilustra el montaje, teniendo en cuenta Para comprobar el funcionamiento del montaje y su
tanto el montaje simulado en Proteus y el Datasheet del programación se procede a energizar con 5v y se puede
PIC16F887A. observar en la LCD como la palabra deseada “UTP
2020” está permanentemente, esto sucede tanto para el
modo de operación de 8 y 4 bits.
III. RESULTADOS
- Se aprende la configuración para una pantalla
lcd, como se le da la instrucción de visualizar un
carácter en determinada posición.
Fig. 10 Montaje físico Protoboard - Se entendió la capacidad de la pantalla lcd, para
2) Cargar código en el microcontrolador trabajar de dos maneras distintas, arrojando un
mismo resultado, como lo es con el uso de 4 o
Entre el PIC 16f84A y el 16f887 existen diferencias que los 8bits.
se deben considerar al momento de la conexión para - Se retoman principios básicos de la electrónica
descargar el programa y en la Figura 11 se ilustra su con respecto a la lcd y el potenciómetro, con el
debido enlace. cual varia su nitidez o contraste con la luz de
acuerdo al control que se le dé a la perilla de la
resistencia variable.
IV. CONCLUSIONES
Las LCD son usadas comúnmente en todos los proyectos
donde se necesite visualizar datos, coordenadas,
temperatura, etc. Su implementación en esta práctica, de
inicios en código para la configuración de la pantalla es
acertada, y se encuentran las diferencias en sus dos
métodos.
Se obtuvieron resultados muy satisfactorios, luego de
realizar el código y ejecutarlo en Proteus, se observa que
funciona de la mejor manera obteniendo las palabras
Fig. 11 conexión Pickit 3 y 16F887 esperadas en las posiciones deseadas.
3) Verificación En el montaje físico, se tuvo un problema, que
básicamente consistía en la Protoboard, estaba
deteriorada, todo esto a partir, de que, al realizar las
conexiones y comprobar continuidad con el multímetro,
se encontraban las señales interrumpidas, de esta
manera, procedimos a cambiar de Protoboard, y de esta
manera solucionamos el inconveniente, se realizaron las
pruebas y se encontraron los resultados óptimos, (véase
en la figura 12).
Referencias
[1] PICKIT 3 + CABLE USB – Electromanía. (s. f.).
Fig. 12 Funcionamiento del circuito Recuperado 31 de mayo de 2019, de
[Link]
usb/
[2]”Uso del modo de operación 4 y 8 bits, uso librería de
LCD” class notes for Gr. 101 Microcontroladores II,
Ingeniería Mecatronica, Universidad Tecnológica de
Pereira, primer semestre, 2019.
[3] E. Garcia, Compilador C CCS y Simulador
PROTEUS para Microcontroladores PIC, primera
edición, Alfaomega Grupo Editor, Mexico, junio de
2008.
[4] PIC16F887 Datasheet, PDF - Alldatasheet. (s. f.).
Recuperado 8 de mayo de 2019, de
[Link]
6f887&gclid=EAIaIQobChMIm-
fPx6qL4gIVBmeGCh0WughBEAAYASAAEgInv_D_B
wE
[5] CCS Compiler (PIC C Compiler) - Manejo de LCD
16x2. (2015, abril 30). Recuperado 7 de junio de 2019,
de CCS Compiler (PIC C Compiler) - Manejo de LCD
16x2 ~ AprendiendoElectrónica website:
[Link]
/[Link]
[6] PIC16F887 Datasheet, PDF - Alldatasheet. (s. f.).
Recuperado 8 de mayo de 2019, de
[Link]
6f887&gclid=EAIaIQobChMIm-
fPx6qL4gIVBmeGCh0WughBEAAYASAAEgInv_D_B
wE