SISTEMAS MICROPROCESADOS I MATRIZ DE LED´S
INTEGRANTES: Auquilla Belén Fierro Ángel Lapo Fernando Reyes Francisco
CURSO: Sexto G1. INGENIERIA ELECTRÓNICA
1
SISTEMAS MICROPROCESADOS I
INDICE DE TEMAS: 1. ANALISIS DE DE LA PROBLEMÁTICA A RESOLVER 1.1.
Planteamiento Planteamie nto del problema a resolver………………………… resolver………………………………..4 ……..4
1.2.
Objetivos…………………………………………………………………..5
1.3.
Hipótesis…………………………………………………………………..5
1.4.
Justificación………………………………...……………………………..5
1.5.
Metodología……………………………………………………………….6
1.6.
Alcance y limitaciones………………………………………… limitaciones……… ……………………………………………6 …………6
2. DISEÑO DEL INDICADOR DE MENSAJES 2.1 Diagrama de bloques……………………………………………………….7 2.2 Desarrollo de la etapa 1………………………………………………….....7 2.3 Desarrollo del la etapa 2……………………………………………………8 2.4 Desarrollo de la etapa 3…………………………………………………….9 2.5 Diagrama de Flujo…………………………………………………...……..11
3 Análisis de costos………………………………………………………….13 4 Pruebas realizadas con respecto a normas de diseño……..……….14 5 CONCLUSIONES Y RECOMENDACIONES……….……………………15 6 ANEXOS………………………………………………………………………16 7 BIBLIOGRAFIA………………………………………………………………19
2
SISTEMAS MICROPROCESADOS I
INDICE DE FIGURAS: Figura modelo isis de circuito c ircuito control……………………………………..9 Pauta principal……………………………………………………………….. 14 INDICE DE TABLAS: Tabla de códigos de nombres ……………………………………………… 10 Tabla de costos……………………………………………………………….. .13
3
SISTEMAS MICROPROCESADOS I
1. INTRODUCCIÓN El uso de sistemas que operen por si mismos, es decir que no se necesite de un computador de escritorio para su operación ahorran tiempo y sobre todo mano
de
obra
logrando
así
automatizar
procesos
de
producción
e
incrementando el costo en venta del diseño.
El trabajo consiste en poner en práctica la teoría de los Microcontroladores con el ATMEGA16 y el Demultiplexor 74LS245 para lo cual el proyecto en su totalidad a sido construido con dispositivos electrónicos comúnmente usados y de fácil adquisición, hemos procurado hacerlo de una manera estructurada y ordenada siguiendo la lógica de construcción de cualquier equipo electrónico que consiste en dividir el bloque total en sub bloques como son la fuente de alimentación, Control y la Matriz de Led´s.
1. ANALISIS DE DE LA PROBLEMÁTICA A RESOLVER 1.
Planteamiento del problema a resolver:
Diseñar y construir un indicador de mensajes mediante diodos leds de alta luminosidad de 18 filas x 18 columnas en el que se observara lo siguiente: •
Aparece el nombre y apellido de cada integrante del grupo durante 5 segundos uno a continuación de otro.
•
Aparecen los nombres moviéndose de izquierda a derecha.
•
Aparecen los nombres moviéndose de derecha a izquierda.
•
Aparece una figura navideña, estrella moviéndose.
4
SISTEMAS MICROPROCESADOS I
2.
Objetivos:
•
Diseñar una matriz de Led´s que conste de 18 filas x 18 columnas.
•
Escribir en una matriz de Led´s los nombres de los integrantes.
•
Desplazar los nombres de derecha a izquierda.
•
Desplazar los nombres de izquierda a derecha.
•
Hacer practica la teoría que se recibió en clases.
3.
Hipótesis:
La escritura en la matriz de Led´s se realizará mediante el uso de métodos los cuales definirán que fila y columna se va a encender, se lo realizara a una determina velocidad consiguiendo formar una o un grupo de letras al principio estarán estáticas pero con un nuevo método conseguiremos que el conjunto de Led´s encendidos se trasladen, de izquierda a derecha y de derecha a izquierda.
El uso de demultiplexores nos permitirá optimizar el número de puertos que tenemos a nuestra disposición en el ATMEGA16, dado que el número de filas y columnas que debemos manejar son mayores a las 32 salidas que poseemos en el micro controlador.
4.
Justificación:
El presente trabajo nos permite poner en práctica la teoría recibida en clases mediante el diseño y construcción de una matriz de leds, la implementación y diseño de un programa que active simultáneamente una fila y una columna determinada.
5
SISTEMAS MICROPROCESADOS I
5.
Metodología:
Prueba y error, hemos intentado con varios métodos y hemos ido optimizando el método mas apropiado e implementando mejoras. Tal vez no sea la mejor metodología pero es la que mas alcance nos puede brindar ya que si erramos podemos revisar y darnos cuenta de porque aquel error, pero si el código que implementamos es correcto podremos realizar actualizaciones que mejoren el manejo de la matriz.
6.
Alcance y limitaciones:
Este proyecto lo hemos visto en muchos lugares uno de los ejemplos más prácticos es la matriz de Led´s en el sistema de transporte Trolebús, en rótulos para asignar turnos en lugares que brindan atención al cliente, en los carteles de empresas de transporte (los mismos que muestran el lugar al que se dirigen) así que podemos resumir que las prestaciones de una matriz de Led´s son muy extensas. Por otro lado tenemos que analizar también las limitaciones que este proyecto presenta, una de las mas grandes es que el texto que vamos a mostrar es poco flexible, es decir tendremos que modificar líneas y líneas de programación para poder mostrar una secuencia de caracteres distintos.
6
SISTEMAS MICROPROCESADOS I
2. DISEÑO DEL IN DICADOR DE MENSAJES: 2.1 Diagrama d bloques: CONTROL uC
ALIM NTACION. Maneja os lógica TTL
MATRIZ DE LEDS ************ ************ ************ ************
2.2 Desarrollo de la etapa 1: Etapa de alimentaci n: por practicidad vamos a utilizar una fue te de voltaje TTL (entre 0v y 5v) es te tipo de fuente la podemos hallar en cual quier cargador de un celular.
7
SISTEMAS MICROPROCESADOS I
2.3 Desarrollo de la etapa 2 Etapa de control: Esta etapa es la de más importancia puesto que controlara todo el sistema de Led´s, es decir se decidirá que fila y que columna se enciende logrando así dibujar una letra. La programación presente en esta etapa se la realiza en BASCOM programa especialmente diseñado para AVR’s, el dispositivo en el que insertamos las líneas que se ejecutaran es el AVR ATMEGA16 el cual tiene 32 salidas de las cuales estamos utilizando: Todos los pines del puerto A. Todos los pines del puerto B. 2 pines del puerto C. 6 pines del puerto D. Ahora explicaremos en que se están utilizando todos estos pines: Los 8 pines del puerto A, los 8 pines del puerto B y los 2 pines del puerto C son utilizados en el control de las 18 filas, con las cuales encendemos un Led´s en una columna especifica. Los 6 pines que se ocupan del puerto D están destinados a controlar las columnas que se encenderán 4 van al demultiplexor 74LS154 que maneja 16 salidas en base a 4 entradas, como tenemos 18 columnas nos faltarían 2 pines mas para completar la totalidad de salidas, estos 2 pines son parte de los 6 del puerto D, estos van conectados directamente mediante transistores a las columnas que activaran.
8
SISTEMAS MICROPROCESADOS I
Diagrama en ISIS del circuito de control 1
2.4. Desarrollo de la etapa 3 Etapa matriz de Led´s: En este sub bloque se ha hecho uso no solo de los pines de salida que vienen del Microcontrolador debido a la falta de recursos (falta de pines en el microcontrolador) sino también del demultiplexador 74LS245 el cual maneja 16 salidas con solo 4 entradas como son 18 las columnas que deberemos manejar se utilizara 2 pines mas del micro controlador los cuales se conectaran a la matriz por medio de transistores.
9
SISTEMAS MICROPROCES ADOS I
¿Cómo generamos ada nombre de los integrantes? Se realizo un bosqu jo en Excel, al cual se le dio una secu ncia de 0 y 1 solamente en los pun tos (Led´s) que necesitáramos encender, a continuación un ejemplo de cómo s e obtuvo el código:
10
SISTEMAS MICROPROCESADOS I
Ctrl nibble bajo C
2.5. ALGORITMO: Entradas: 1.
Código hexadecimal de los nombres de cada integrante.
2.
Código hexadecimal de figura navideña
3.
Código hexadecimal de control
Salidas: 1.
Código hexadecimal en los pines de los puertos A, B, C, D.
Procesos: 1.
Inicialización de puertos
2.
Declaración de puertos de salida
3.
Codificación Codificació n de los nombres en numeración hexadecimal
4.
Impresión del número hexadecimal en los pines del micro
11
SISTEMAS MICROPROCESADOS I
5.
Implementación Implementa ción de subprocesos para guardar el código de distintas columnas o filas.
6.
Imprimir el código hexadecimal de la figura navideña.
Diagrama de Flujo: INICIO
Inicialización
de
los
puertos A, B, C, D como puerto s de salida.
Codificación
de
nombres
formato
en
los
hexadecimal.
Impresión del número hexadecimal pines
de
en
los
salida
del
micro.
Implementación de un subproceso
para
guardar el código de distintas
columnas,
y
llamarlo al momento de realizar el barrido
Impresión del
del
código
dibujo navideño a
presentar
FIN
12
SISTEMAS MICROPROCESADOS I
3. ANALISIS DE COSTOS. Construir un indicador mediante diodos led´s de alta luminosidad de 18 filas por 18 columnas. Lista de componentes:
Elemento
Cantidad
Diodo Atmega 16 Demultiplexor Baquelita Acido Buses de datos Transistor Caja Pintura en aerosol Gasolina Total
Valor Unitario
Valor Total
400
0,125
50
1
6
6
1
2
2
2
1,5
3
5
1
5
4
0,5
2
2
0,35
0,7
1
25
25
1
2,5
2,5
10
1,45
14,5 110,7
Grafica lista de precios.
Los Led´s estuvieron relativamente baratos puesto que compramos en un mismo lugar varios grupos El Microcontrolador parte muy importante fue el gasto mas representativo por unidad. La caja, se busco economía pero también diseño. Los demás gastos, como ácidos, baquelitas, pintura, etc son gastos que estarán presentes en cualquier tipo de proyecto. Cabe recalcar que el gasto mas importante por cantidad fueron los Led´s, se recomienda realizar una compra conjunta ya que cuanto mas sea la cantidad
13
SISTEMAS MICROPROCESADOS I
que se va a comprar el descuente mayor es, pasados los 5000 leds se nos estaba dejando hasta 0,08 centavos cada uno.
4. PRUEBAS REALIZADAS REALIZADAS CON RESPECTO A NORMAS DE DISEÑO
Pauta principal 1
La primera pauta que dimos en el proceso de programación de una matriz de Led´s partió desde este punto, un archivo publicado en un blog como el que estamos preparando. Si bien este ejemplo fue hecho con un PIC la lógica que se usa para programar el AVR es la misma. Fue un gran avance hallar un hardware en el cual el control de las filas se realiza no directamente desde los los pines del micro controlador sino mediante un demultiplexor y transistores, los mismos que podrían ser usados para amplificar la corriente que llega a los Led´s.
14
SISTEMAS MICROPROCESADOS I
5. Conclusiones y Recomendaciones Conclusiones:
El uso de sub rutinas nos pueden ahorrar lineas de código, solamente llamandolas ya no tendremos que volver a escribir lineas y lineas de comando.
El comando Goto nos lleva hasta una subrutina y nos mantiene en ella, cosa que no es recomendable cuando queremos solamente hacer uso de la sub rutina y continuar con el programa. Una alternativa, es utilizar el método Gosub, el mismo realiza una sub rutina y una vez terminada nos vuelve a la linea del programa principal.
El barrido en este proceso es uno de los puntos mas importantes ya que no solo es un aspecto estetico si no tambien muy útil, cuando la matriz no nos alcance para poder escribir una palabra completa, podremos hacer uso del barrido de caracteres por la matriz, de esta manera mostraremos partes de la palabra total dividida en tiempos.
El uso de un demultiplexor nos permitio ampliar la capacidad de control de pines del micro controlador, con el demultiplexor logramos con 4 entradas manejar 16 salidas.
La corriente que podemos entregar a la matriz puede ser amplificada utilizando transistores entre el pin de salida del micro controlador y el pin del Led.
15
SISTEMAS MICROPROCES ADOS I
Recomendacion s:
Se tendra q ue buscar un diseño de la matriz de leds
ue no presente
muchos pr blemas al conectar los leds, es decir qu e no tengamos que puente r nada.
Optimizar a l maximo las lineas de código con el uso d
El manejo el micro no soldandolo directamente el m icro a la matriz, sino media te un adaptador
5. ANEXOS:
Diagrama 3D en ISIS del circuit
de ctrl 1
16
sub rutinas.
SISTEMAS MICROPROCES ADOS I
Primera prueba de escritura 1
Prueba en ISIS del circuito 1
17
SISTEMAS MICROPROCES ADOS I
18
SISTEMAS MICROPROCESADOS I
6. BIBLIOGRAFÍA •
http://www.datasheetcatalog.net/es/datasheets_pdf/7/4/L/S/74LS154.shtml
•
http://www.datasheetcatalog.net/es/datasheets_pdf/A/T/M/E/ATMEGA16.shtml
19