P. 1
Manejo de Matriz de Led

Manejo de Matriz de Led

|Views: 16|Likes:
Publicado porLuis Hernandez

More info:

Published by: Luis Hernandez on Nov 24, 2012
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as DOCX, PDF, TXT or read online from Scribd
See more
See less

02/09/2014

pdf

text

original

MANEJO DE MATRIZ DE LED'S 5x7 CON PIC 16F84A ------------------------------------------------------------------------------------------------------------------------------------------------------Una matriz de led's esta constituido por led's dispuestos

en filas y columnas, cada led se conecta a una fila y a una columna, el diagrama se muestra en la figura:

Existen varios métodos para el manejo de una matriz de led's 5x7, nuestro método se basa en el decodificador/demultiplexor 74LS 138, además utilizaremos el transistorBC557 (pnp); con la siguiente forma de conexión entre los dispositivos antes mencionados y el microcontrolador:

que es un decodificador /demultiplexor con la siguiente tabla de verdad: . Su funcionamiento se basa como se dijo anteriormente en el integrado 74LS138.Como se muestra en la figura las filas de la matriz de led's están conectadas a los colectores de los transistores BC557. mientras que las columnas de la matriz se conectan al puerto B del microcontrolador.

Para que un led's se encienda tiene que recibir simultáneamente un 0 en una columna y un 1 en una fila. PROGRAMA PARA VISUALIZAR LA LETRA "C" list P=16F84A include <P16F84. RA2 RA1 RA0 .inc> . por lo consiguiente ninguna fila se habilitara. debido a que si este se encuentra en un nivel lógico 1 el decodificador tendrá a todas sus salidas en un nivel alto. es así por ejemplo si el microcontrolador envía el dato a las entradas CBA = 011.RA3=HABILITAR AL DECODIFICADOR. mientras que por el puerto B es envía el dato a visualizar. Resumiendo el puerto A del pic se encarga de habilitar los transistores. . y esto se logra mediante el decodificador/demultiplexor que al recibir en sus entradas (C B A) un numero binario determinado activara una de sus salida a nivel bajo que conseguirá que el transistor correspondiente pase a un estado de saturación. produciendo que el cuarto transistor(cuenta de arriba a abajo) se sature. luego habilitar la segunda fila y enviar el dato a visualizar en esta fila. Su manejo es similar al de los display's. En el siguiente programa se realizara una explicación mas detallada. Uno de los últimos detalles: el pin RA3 se encarga de no habilitar ninguna fila. habilitando la cuarta fila de led's de la matriz lista para recibir el dato a visualizar en esta fila.AUTOR:CARLOS ALBERTO YACO TINCUSI . Para habilitar una fila se debe logra que el transistor correspondiente a la fila pase a un estado de saturación. en caso de las filas se posee transistores que al entrar en un estado de saturación permiten que en los ánodos de los led's de una de las filas se encuentre un 1 lógico. lo que se trata de hacer es habilitar una la primera fila y luego enviar el dato a visualizar en esta fila. y así sucesivamente en forma de un bucle. el decodificador activara su salida Y3. mientras que para las columnas el microcontrolador es el encargado de lograr un 0 lógico.

deshabilitar todas las filas movlw b'11111000' .Y1. deshabilitar todas las filas movwf PORTB. enviar dato movlw b'00000010' movwf PORTA .Y1. Y3=1 .3 .3 . habilitar caurto transistor debido a que CBA=011. tercer dato a visualizar bsf PORTA.3 .Y7=1 call RETARDOS_50MICROS movlw b'11101111'.. des movwf PORTB movlw b'00000101' movwf PORTA .RP0 clrf PORTA .3 .Y3. Y0. cuarto dato a visualizar bsf PORTA.... Y1=1 .habilitar primer transistor debido a que CBA=000. Y0.Y7=1 call RETARDOS_50MICROS movlw b'11101111' . todas las líneas como salida clrf PORTB.. Y2=1 ... movwf PORTA .habilitar segundo transistor debido a que CBA=001...Y2. enviar dato movlw b'00000001'.habilitar tercer transistor debido a que CBA=010.Y7=1 call RETARDOS_50MICROS .. primer dato a visualizar bsf PORTA. Y0.Y2...Y7=1 call RETARDOS_50MICROS .cblock 0x0C endc bsf STATUS. deshabilitar todas las filas movwf PORTB. enviar dato bcf PORTA. deshabilitar todas las filas movwf PORTB.RP0 visualizar movlw b'00001000' movwf PORTA. Y1. todas las líneas como salida bcf STATUS. Y0=1 ...3. segundo dato a visualizar bsf PORTA. enviar dato movlw b'00000011' movwf PORTA ..3 movwf PORTB movlw b'00000100' movwf PORTA call RETARDOS_50MICROS movlw b'11110111' bsf PORTA.3 . y asi sucesivamente movlw b'11101111' bsf PORTA..Y2.Y3. deshabilitar todas las filas movwf PORTB .. un pequeño retardo movlw b'11110111' .

3 movwf PORTB movlw b'00000110' movwf PORTA call RETARDOS_50MICROS goto visualizar include<RETARDOS.inc> end Aqui una imagen del resultado final El programa ejemplo puede descargarse de aqui Espero que les sirva de algo CARLOS YACO ELECTRONICA BASICA .call RETARDOS_50MICROS movlw b'11111000' bsf PORTA.

You're Reading a Free Preview

Descarga
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->