Laboratorio #1 Microcontroladores:
Matriz de Leds
Resumen Este trabajo trata del diseo y analisis de un codigo II. ESTADO DEL ARTE
en el lenguaje de programacion CCS en el ide PIC C Compiler
para el control de secuencias y mensajes a travez de una matriz de A. Microcontroladores (PIC o PICmicro)
led's controlado por medio del microcontrolador PIC18F4550. El Los microcontroladores son dispositivos lgicos
codigo de programacion fue simulado a travez del sofware programables que permiten al usuario adaptarlo para diversas
PROTEUS, luego montado en protoboard para verificar la funcionalidades ya que este puede cambiar su comportamiento
funcionalidad del mismo. Como resultado de este trabajo se
interno de acuerdo a una serie de instrucciones que pueden
presenta un codigo funcional para el control de matriz de led's, el
cual permitio validar los conceptos dados en la asignatura para el
comunicrseles a travs de un programador. Para el caso del PIC
manejo de este microcontrolador y proporciona una base del uso o PICmicro ya que su fabricante Microchip registro estos
de este tipo de disposito led's con este microcontrolador. nombres para sus microcontroladores dice Programable
Integrated Circuit. Las aplicaciones para estos dispositivos son
Palabras Clave lenguaje de programacion CCS, ide PIC C numerosas como por ejemplo algunas bsicas como son control
Compiler , matriz de led's, microcontroldor, PROTEUS de teclados, pantallas LCD, sensores, entre otras [2].
Abstract This work deals with the design and analysis of a B. Aplicaciones Tipicas con Matriz de Leds
code in the programming language CCS in the ide PIC C Compiler Una matriz de leds es una serie de leds conectados en filas
for the control of sequences and messages through a matrix of led's y columnas que permiten mostrar letras y figuras encendiendo y
controlled by the microcontroller PIC18F4550. The programming apagando estas, cada leds hace las veces de un pixel [3], los
code was simulated through the PROTEUS software, then
precios reducidos de estos dispositivos han permitido el
mounted on a protoboard to verify its functionality. As a result of
this work a functional code for the control of led's matrix is
desarrollo de carteles publicitarios entre otras aplicaciones
presented, which allowed to validate the concepts given in the comnmente se usan microcontroladores para lograr esto ya que
subject for the handling of this microcontroller and provides a permiten el ahorro de circuitera [4].
basis for the use of this type of led device with this microcontroller.
III. DISEO METODOLOGICO
Keywords Programming language CCS, ide PIC C Compiler, La publicidad permite elevar el consumo de un producto o
led array, microcontroldor, PROTEUS servicio a travs del estudio de varias disciplinas como
psicologa, sociologa entre otras. Toda empresa o corporacin
I. INTRODUCCION que ofrezca servicios o productos llega a tener la necesidad de
La implementacin de un sistema que permite controlar por adquirir servicios publicitarios para darse a conocer con el fin de
s mismo sin necesidad de estar conectado a un ordenador, de mejorar sus ventas por esta la publicidad se ha convertido a lo
este modo ahorre mano de obra, materiales y sea de tamao largo de los aos en una industria que mueve miles de millones
reducido logrando automatizar sistemas de produccin de dlares [5].
convirtindolos ms eficientes [1]. A. Planteamiento del Problema
La construccin del proyecto ha sido con dispositivos Se plantea disear y construir un circuito que permita
electrnicos comunes de fcil adquisicin implementado la mostrar una serie de mensajes e imgenes a travs de una matriz
teora sobre los microcontroladores usando para esto el de leds 8x5 controlada con un PIC dependiendo de las seales
PIC18f4550 y como dispositivo a controlar una matriz de leds, que se le ingresen por medio de una serie de pulsadores.
para el diseo del proyecto se parti del problema formulado
B. Comportamiento de la Matriz
pasando este a la lgica de programacin de CCS usando el
software PROTEUS para la simulacin del circuito permitiendo Entradas por el puerto A del micro: RA0 estado bajo y
llevar a cabo correcciones de erros y mejoras del cdigo sin RA1 estado bajo la matriz estar encendida y se apagar
necesidad de programar y montar el circuito real directamente. fila a fila desde la parte inferior para arriba.
INFORME DE PRACTICAS DE LABORATORIO, PROGRAMA INGENIERIA ELECTRONICA, UNIVERSIDAD DE PAMPLONA 2017 IEEE
Entradas por el puerto A del micro: RA0 estado alto y
RA1 estado bajo la matriz estar apagada y se encender
columna a columna de derecha a izquierda.
Entradas por el puerto A del micro: RA0 estado bajo y
RA1 estado alto la matriz estar encendida y se apagar
fila a fila de arriba para abajo.
Entradas por el puerto A del micro: RA0 estado alto y
RA1 estado alto la matriz estar apagada y se encender
columna a columna de izquierda a derecha.
Entradas por el puerto C del micro: RC0 y RC1 ambos
en bajo puerto desactivado se ejecutarn secuencias
seleccionadas en el puerto A. Fig. 1. RA0 estado bajo y RA1 estado bajo (PROTEUS).
Entradas por el puerto C del micro: RC0 estado alto y
RC1 estado bajo se mostrarn los nmeros del 0 al 9.
Entradas por el puerto C del micro: RC0 estado bajo y
RC1 estado alto se mostrarn las vocales (A, E, I, O, U).
Entradas por el puerto C del micro: RC0 estado alto y
RA1 estado alto se mostrarn la diagonal principal
apagada los dems pixeles encendidos se apaga un
tiempo y luego se mostrara la diagonal secundaria
encendida y los dems pixeles apagados.
Se debe dar preferencia a las entradas por los pines del
puerto C.
C. Diseo del codigo en PIC C Compiler
Para la preferencia entre el puerto A y C se utiliz un Fig. 2. RA0 estado alto y RA1 estado bajo (PROTEUS).
condicional if el cual ejecutara secuencias del seleccionadas solo
si las lecturas del puerto C es cero ( if(PORTC == 0) ).
Las filas de la matriz se conectaron en el puerto b del micro
y las columnas en el puerto d en forma ascendente comenzando
tanto las fila s como las columnas comenzando por la uno en el
bit menos significativo en adelante y as sucesivamente. Para
encender un pixel se debe mandar la fila en donde este el pixel
a alto y la columna donde este el mismo, implementado para las
secuencias seleccionadas por el puerto A ya que estas encendan
o apagaban todas las filas o columnas.
Para las secuencias seleccionadas por el puerto C se tuvo en
cuenta una consideracin diferente ya que se necesitaba mostrar
nmeros y letras las cuales tenan pixeles apagados y encendidos
en las misma fila o columna, entonces para lograr este efecto de
hizo por medio de delays logrando por efectos de persistencia
visual el efecto de dichos mensajes.
IV. MEDICIONES Y ANALISIS DE RESULTADOS
para los resultados adems de la implementacin del circuito
real se tuvo una simulacin en el software PROTEUS resultados
se observaran a continuacin son los del software, para los
resultados de implementacin se present el circuito junto con
el cdigo directamente al docente encargado de la materia. Fig. 3. RA0 estado bajo y RA1 estado alto (PROTEUS).
A. Secuancias de Selecin del Puerto A
Fig. 4. RA0 estado alto y RA1 estado alto (PROTEUS). Fig. 7. RC0 estado alto y RC1 estado alto (PROTEUS)
secuencia de diagonales.
B. Secuancias de Selecin del Puerto C C. Implementacion del Circuito
Fig. 5. RC0 estado bajo y RC1 estado alto (PROTEUS) Fig. 8. RC0 estado alto y RC1 estado alto (PROTEUS)
secuencia de nmeros. secuencia de diagonales.
CONCLUSIONES
El uso de los puertos por completo y no por pines para este
caso nos ahorrar lneas de cdigo, mandando un numero
binario al puerto el cual corresponder a estados altos y bajo de
los pines, tambin el uso de funciones hace que el programa sea
ms fcil de entender para otros programadores en el caso que
el cdigo se desee compartir.
La simulacin en PROTEUS es esencial ya que permite
simular y as corregir errores como hacer mejoras al programa
ahorrando tiempo ya que no se necesita desmontar el micro del
circuito real para programarlo como verificar que el circuito
Fig. 6. RC0 estado alto y RC1 estado bajo (PROTEUS) funciona para la aplicacin.
secuencia de vocales.
En el caso de llevar a cabo las simulaciones en ROTEUS se
recomienda tener en cuenta para las entradas mandar estos
puertos a cero ya que muchas veces estos arrancan en estados
arbitrarios y esto podra dar errores al momento de
implementarlo en lo real, para la simulacin estos puertos se [2] Electronica est, (2017, agosto), El mundo de los pics, electronica estudio,
comportan de forma perfecta y no se tienen en cuenta estos [online], pag 1-3, disponible en:
http://www.electronicaestudio.com/docs/mundodelos_pic.pdf
errores.
[3] P. Turmero, (2017, agosto), Las Matricez de Leds, monografias, [online],
pag 1, pagina disponible en:
REFERENCIAS http://www.monografias.com/trabajos101/matrices-leds/matrices-
leds.shtml
[1] J. Castillo, (2017, Agosto), Matriz de Leds, slideshare, [online] 7288954, [4] Saleciana, (2017, agosto), informe matriz de leds original, scribd,
pag 2-3, pagina disponible en: https://es.slideshare.net/zullyangel/matriz- [online] 22194349, pag 2-5, dispnible en:
de-led-7288954 https://es.scribd.com/doc/22194349/Informe-Matriz-de-Leds-Original
[5] Wiki-pedia, (2017, agosto), Publicidad, wikipedia, [online] pag 1,
disponible en: https://es.wikipedia.org/wiki/Publicidad