MATRIZ DE LEDS DE 8×16 GIGANTE.   150 comments

PROYECTO DE CREACIÓN DE GRAN PANEL DE MATRIZ DE LEDS DE 8X16

 

INTRODUCCIÓN:

     El presente proyecto trata de crear no sólo una matriz de 8×16, sino de que esa matriz posea un tamaño significativo, para lo cual vamos a usar leds que poseen una característica especial, y es que poseen un ángulo de salida de luz mas abierto, entorno a 100º, a diferencia de los leds convencionales que poseen un ángulo de salida sobre 13º a 23º. Que posean una proyección de luz tan abierta la vamos a usar para proyectar esa luz sobre un fondo difuso de manera que crearemos la capacidad de que en vez de ver un puntito de luz veremos un círculo iluminado. Aquí las características de los leds que vamos a usar:

       

 

EL CONCEPTO DE PIXEL AMPLIADO:

    Cuando enfrenté la idea de crear este panel en principio pensé en usar bombillas convencionales de rosca E-14, pero el coste de usar 128 bombillas mas casquillos de rosca E-14 hizo inviable la idea, además el circuito de gobierno de la matriz se complicaba por el uso de elementos de control de altas potencias como TRIACS. Empecé a pensar como podría amplificar la luz de un led de manera que de frente no viéramos un simple punto de luz, y se me ocurrió la idea de crear un píxel de circunferencia aproximada a los 4cm “encerrando” a un led dentro de una circunferencia de pvc y de determinada altura, y proyectando su luz como si fuera una pantalla de cine sobre un elemento que dejase escapar la luz parcialmente. Este es el concepto de “píxel ampliado” el panel posee 128 píxeles ampliados, y cada píxel tiene 4 cm, multiplicar esos 4cm por 8, y esos 4cm por 16 y os dareis cuenta de las dimensiones de esta matriz de leds.

PRUEBAS Y DESARROLLO DEL PIXEL AMPLIADO:

    Para crear el píxel y hacer pruebas de luminosidad cree un prototipo de “píxel básico”. Para ello usé un tubo de P.V.C de los que se usan en fontanería de 4 cm de diámetro exterior y de 3,5 cm de diámetro interior, corte un segmento de 1,5 cm de altura y lijé las rebabas. A continuación corte un cuadrado de madera de aglomerado de 7 cm de lado por 10 mm de espesor. Centre el círculo de P.V.C sobre el cuadrado de madera y lo pegué con pegamento de contacto. Hice un agujero en el centro del mismo diámetro del led (5mm) para poder pasar el led, y posteriormente pegue una lámina de papel “cebolla” (así le denominamos en España) sobre el círculo, que serviría como elemento sobre el que incidirá la luz y la difuminará.

TUBO PVC DE 4Cm DE DIÁMETRO.

CUADRADO DE MADERA.

SEGMENTO P.V.C Y MADERA.

UNION SEGMENTO A CUADRADO (Lo pinté de negro).

PAPEL CEBOLLA SOBRE CÍRCULO.

LED PASANDO POR DETRÁS.

LED ILUMINANDO SIN PAPEL.

LED ILUMINANDO CON PAPEL CEBOLLA.

FASE NÚMERO 1, CREACIÓN DEL PANEL

    En primer lugar cortaremos 128 segmentos de P.V.C de 1,5 cm de alto por 4 cm de diámetro.

MARCADO DE LA ALTURA.

Para cortar los segmentos usaré una sierra que me garantice  un corte recto de forma que se guarde el paralelismo entre las caras del tubo, en las fotos veis el tipo de sierra que he usado, en cada segmento han de lijarse las rebabas del corte con la sierra.

SIERRA EN POSICIÓN DE CORTE.

DESPUES DE 128 CORTES YA TENEMOS LOS SEGMENTOS.

Siguiente paso, para hacer nuestro panel usaremos como base un tablero de aglomerado de 10 mm de espesor de las siguientes dimensiones, 82 cm de largo por 46 cm de alto, en la foto de abajo al tablero ya le he marcado el eje que delimita el centro.

A continuación marcaremos los puntos por donde pasarán los leds y que nos serviran de coordenada para trazar el círculo de guía para la colocación de los segmentos de P.V.C.

y dibujaremos un círculo de 4,1 cm (algo mayor que el diámetro de la tubería de P.V.C ) alrededor de dichos puntos, ese círculo nos servirá de referencia para centrar y pegar el segmento circular de P.V.C que conforma cada píxel, los píxeles están separados entre ellos por 1 cm.

En detalle.

Ahora cogemos un punzón y un martillo y marcamos un pequeño agujerito guía para el posterior taladrado, de esta forma evitaremos que “baile” la broca al empezar el taladrado.

Cogemos una broca para madera de 5mm de diámetro y usaremos una taladradora en un porta-taladro para que el agujero que realicemos quede lo mas vertical posible, y efectuamos los correspondientes 128 taladros.

Hago notar que debajo del tablero a taladrar hay otra tabla, que no se ve, y que sirve de “sufridera” para evitar que la broca toque el suelo.

Una vez hechos los taladros de 5mm tendremos que hacer otra serie de taladros debido al espesor de la tabla, estos taladros son un “avellanado” que amplía la circunferencia alrededor del led para evitar la proyección de sombras sobre el fondo difuso. Abajo dos fotos, una con el led iluminando por uno de los agujeros sin avellanar, y otra con el avellanado hecho.

Sin avellanado.

Con avellanado.

¿Veis la diferencia?, se nota una sombra perimetral en la primera foto porque la luz al salir del led se abre entorno a los 100º y se encuentra con las paredes del agujero de 5mm y proyecta esa sombra (es mas notable en directo que en la foto). Por eso efectuaremos un taladro con una broca de mas diámetro, esta vez broca para acero por poseer un ángulo de casi 120º, yo he usado una de 12mm, no es lo mas conveniente para taladrar madera porque estás brocas no tienen el filo adecuado para ese material, pero es lo único que tenia y la solución que se me ha ocurrido al ser el tablero que porta los leds de tanto espesor, debería de haber usado un tablero mas fino pero creí conveniente usar este por motivos de rigidez en el montaje. La profundidad del taladro ha de ser tal que permita asomar unos 2mm la cabecita del led sobre el taladro de menos  diámetro.

 Broca a usar.

Tablero con el avellanado ya hecho.

Detalle del avellanado.

    Ahora cogemos pegamento de contacto y como tenemos ya dibujada la referencia vamos colocando y pegando cada segmento en el tablero.

    Una vez terminado de pegar los segmentos la tabla queda así.

En detalle.

Continuamos con la realización de los laterales de la matriz de leds, para ello necesitamos cuatro listones de madera de pino, los dos mas largos de 86 cm de largo, 7,5cm  de alto y 1,9 cm de espesor, los dos mas cortos serán de 46 cm de largo, 7,5 cm de alto y 1,9 de espesor. Con los cuatro listones de pino realizamos un marco que ensamblaremos de la forma de la foto de abajo.

 Detalle del ensamblado de las cuatro piezas que conforman el marco.

 Si os fijais bien los tornillos tirafondos están en la tabla larga (la de 86 cm de largo), en la foto está ya terminado el panel con los laterales. Queda el detalle de destacar que al ser el marco mas grande que el tablero que portará los leds este tablero al introducirlo dentro del marco ajusta en todo el perímetro interior de dicho marco y cae hacia abajo, para evitar eso y para que exista por encima y especialmente por debajo una determinada altura he pegado en cada lateral madera contrachapada de 1 cm de espesor y 4 cm de alto dejando un espacio para que encaje el tablero portaleds y por encima de él otra madera contrachapada de 1,7 cm de altura, abajo os quedará mas claro en las fotos.

Listón en detalle.

Detalle del encaje de listones y tablero.

En esta foto se ve claramente el espaciado por detrás y por delante del tablero, el de por detrás es necesario pues albergará todo el cableado y la circuitería que controlará el panel de leds.

Panel totalmente acabado a falta de realizar la tapa trasera que cerrará toda la circuitería y el cableado.

Por delante.

 Por detras.

Colocado en vertical.

 Ahora pintaré el panel de color negro, para ello he usado pintura acrílica al agua de color negro de aspecto satinado, y una paletina estrecha para las superficies de mas anchura y pincel para pintar los contornos de cada segmento.

Este es el resultado.

FASE NÚMERO 2, LOS LEDS Y EL CIRCUITO ELECTRÓNICO:

 En un costado del tablero he realizado dos taladros con broca para madera tipo paleta, uno para poder acceder a un jack hembra de 3,5 mm que lo usaré para alimentar al circuito con un conector macho tipo jack de 3,5 mm, y otro para acceder a un interruptor de palanca con el que activare o desactivare la alimentación eléctrica al circuito de control del panel de leds. Estos dos elementos (jack hembra e interruptor de palanca) los he fijado a un rectángulo de cartón piedra, y este rectángulo lo he fijado al costado donde realicé los dos taladros mencionados, en la foto queda claro, también se ven los leds que estaban colocándose en los agujeros del tablero.

Los 128  leds se colocan quedando de la manera que se ve en la foto quedando el lado negativo del led a la izquierda y positivo a la derecha.

Para el cableado de los leds seguimos el esquema siguiente, donde se ven claramente las filas (8 filas) y las columnas (16 columnas).

Se coge ahora un cable rígido fino, de esos que usamos para hacer puentes en los circuitos impresos o en las placas protoboard, se le quita el aislante y con el vamos a ir uniendo con soldadura todos los negativos de los leds de cada columna, de la forma que sigue. En la foto se aprecian unidas las cuatro últimas columnas de la matriz, son las últimas porque lo estas viendo desde atrás, si le dieras la vuelta al tablero verías mas claro que son las últimas.

Los terminales negativos una vez realizada la soldadura se corta el sobrante, obviamente. Con el positivo lo que haremos será doblar el terminal de los leds como se ve abajo y separado de la parte negativa para evitar cortocircuitos.

Una vez soldadas las columnas y separadas entre ellas, deben de haber 16 columnas, con cada una de las columnas y sus 8 leds unidos por su parte negativa. A continuación se soldarán las filas, 8 filas separadas entre ellas pero con cada fila unidos los leds por su terminal positiva. Para la unión de los positivos se usarán segmentos de hilo rígido con el aislante puesto para evitar contactos con la parte negativa al cruzar sobre los negativos, en la foto se ven los cables de color rojo.

Se observan en la foto también en la parte central cuatro tornillos pasantes desde atrás del tablero y con contratuerca para que no se muevan y que nos servirán para fijar la placa de control del tablero de leds.

Una vez terminados de soldar los terminales comunes de las columnas y las filas, en los extremos se soldaran cables flexibles de forma que tendremos en las filas 8 cables y en las columnas 16 cables. En las filas estos cables los he soldado en una placa de circuito impreso perforada como paso intermedio hacia el circuito de control, y en las columnas he hecho dos grupos, uno, de los 8 cables de las primeras 8 columnas que he soldado en otra placa perforada, y el segundo grupo, las ocho restantes columnas cuyos cables he soldado a otra placa de circuito impreso perforada. En la foto se aprecia en la parte superior y de color azul los hilos correspondientes a las 8 filas que están soldados en la placa perforada, y en la inferior se observan los trabajos de soldadura de los hilos correspondientes a las columnas en una de las dos placas mencionadas que conformaran el “canal” de señales de las columnas provenientes de registros de desplazamiento.

A cada una de las tres placas de filas y columnas irán luego soldados un cable plano de 8 hilos a cada placa, si no quereis usar un cable plano pues usar cables normales, eso ya es vuestra elección. Estos cables planos llevan en el extremo opuesto un conector que facilita labores de desconexión  de la placa de control respecto a la matriz.

Llegados a este punto es hora de afrontar la placa de circuito impreso y componentes que forman la electrónica de la placa controladora.

FASE NÚMERO 3, LA ELECTRÓNICA DE LA PLACA DE CONTROL:

 En primer lugar fabricaremos la placa de circuito impreso, yo he realizado el método de “planchado”, que si no lo sabeis, consiste en imprimir el diseño del circuito impreso con una impresora laser en papel fotográfico (mejor si es de poco espesor), y luego con una plancha a máxima potencia planchar el folio fotográfico con la parte de la tinta tocando el cobre de la placa de circuito impreso virgen, como consejo NO TOQUES EL COBRE CON LOS DEDOS, pues la grasilla que se deja es indeseable para un buen resultado, pasado un tiempo ( y sin que se tueste el papel) el toner se habrá quedado pegado al cobre, luego para quitar el papel lo introduces en un recipiente con agua y espera a que se ablande el papel y con los dedos efectúas movimientos circulares para ir retirando el papel, si lo haces bien lo normal es que este transferido todo el toner sobre la placa de cobre con todas las pistas, si alguna se te ha cortado pues repásala con tinta grasa indeleble (el famoso eding). Luego pasamos al ataque químico, en un recipiente de plástico tipo bandeja o en un taper de buen tamaño en cuanto a sección, viertes dos partes de agua, una parte de ácido clorhídrico (agua fuerte), y una parte de agua oxigenada de 120 volúmenes (venta en farmacias), pera todo esto hacerlo en un sitio ventilado, poneos gafas y usar guantes de goma, estas usando ácidos y en la reacción química en la que se come el cobre se desprenden gases, dos peligros, por contacto y por inhalación, con que lo hagas en sitio ventilado y no pongas las napias encima y cerca de la reacción es suficiente. Introduces la placa en la solución y mueves el recipiente como creando olas que “lamen” la superficie del cobre, veras como el líquido se va poniendo verde e iras viendo como las pistas se van quedando marcadas, cuando creas conveniente según lo que veas retiras la placa del recipiente. Para terminar y retirar el toner que sigue en las pistas usar acetona y algodón para limpiar, y quedará pulido y brillante como en la foto (el tachón es en mi nombre y apellidos).

Descargaros el fotolito desde aquí:

matriz 8×16

Para mas detalles de cómo hacer placas consultar por la red, existen muchos tutoriales bien detallados y con fotos, yo sólo os he comentado el tema pues me da pereza hacer un reportaje fotográfico de ello, bastante es con este desarrollo.

Las pistas y el esquema general es el que sigue, esta vista es desde el lado de los componentes.

Se ven la ubicación de los componentes y los puentes, este proyecto posee una posible ampliación como veis en los terminales Gnd, DATOS, +5Vcc y RELOJ, por si quereis hacer una matriz mas larga, de 8×32 por ejemplo. Están numerados el orden de filas y columnas para hacer mas sencillo saber donde conectar estas.

El esquema eléctrico es el siguiente.

La lista de componentes es:

 

-         8 transistores BC-327

-         8 resistencias de 1/4w de 1K5 Ohm

-         16 resistencias de 1/4w de 100 Ohm

-         2 registros de desplazamiento 74LS164

-         1 PIC 16F84A

-         1 Memoria I2C 24LC256

-         Regulador tension LM-7805

-         2 resistencias de 1/4w de 4K7 Ohm

-         2 condensadores cerámicos de 22pf

-         Cristal de cuarzo de 4 Mhz

-         1 resistencia 1/4w de 10K

-         2 Zocalos DIL de 14 contactos

-         1 Zocalo DIL de 18 contactos

-         1 Zocalo DIL de 8 contactos

-         2 conectores para cable plano de 16 pines macho

-         2 conectores para cable plano de 16 pines hembra

-         1 interruptor tipo palanca

-         Jack hembra de 3,5mm para alimentación del circuito

-         Jack macho de 3,5mm para alimentación del circuito

-         Cable plano de 16 conductores (aunque sólo usamos 8)

-         Placa de circuito impreso de 100×160 mm

DESCRIPCIÓN DEL CIRCUITO

El circuito está alimentado con una fuente de alimentación exterior con mala rectificación (comprada en los chinos y con mas rizado que el pelo de un negro) que nos proporciona 5 voltios de contínua, esta fuente la acoplamos al panel por una entrada lateral mediante jack macho de 3,5 mm a jack hembra, la tensión pasa a través de un interruptor de palanca unipolar, el cual accionamos por un taladro hecho en la parte lateral del panel por encima del otro agujero por donde introducimos el jack de alimentación desde la fuente exterior. Esta tensión entra a la placa de control y pasa por un regulador de tensión que garantiza una calidad mejor de la alimentación al circuito, se que no es muy ortodoxo pero no he colocado condensadores en el circuito del regulador de tensión. Esta tensión ya regulada de 5Vcc es entregada a los diferentes integrados que conforman el circuito, estos integrados son el PIC 16F84 que es el cerebro, la memoria 24LC256, y los registros de desplazamiento 74LS164, los transistores BC-327 funcionando en modo interruptor son los encargados de ir activando las filas según las señales que recibe del PIC-16F84, cada fila será activada de forma individual y una cada vez, de tal forma que nunca coincidirán dos filas activadas al mismo tiempo, esto se controla mediante el software que gobernará la secuencia de encendido de las filas, la corriente que pasa por colector de cada transistor como mucho será la corriente de cada led, 20mA multiplicado x 16 leds, que es el máximo número de leds que estará encendido en un momento determinado, es decir 320mA, según las hojas de caracteristicas del BC-327 la intensidad máxima de colector Ic es de 800mA, o sea, por encima de nuestro consumo máximo (si haceis uso de la ampliación observad la posibilidad de cambiar el transistor por uno que se adapte a las nuevas exigencias de intensidad). Los registros de desplazamiento 74LS164 reciben de forma serie y sincronizada por una señal de reloj procedente del PIC tramas de 8 bits y la van sacando de forma paralela en sus salidas activando o desactivando el encendido y apagado de los leds.  Las resistencias de 100 Ohm colocadas en las salidas paralelas de los registros 74LS164 tienen por misión crear una caida de tensión adecuada a las caracteristicas  de la tensión de trabajo de los leds, como en cada columna al estar activa una fila sólo podrá iluminarse un led, la corriente de trabajo del led es de 20mA, y la tensión que le llega desde el transistor es de 5Vcc, y como el led trabaja a 3,5Vcc nos sobran 1,5Vcc, o sea por la ley de Ohm, V=R.I——-R=1,5/0,02= 75 Ohm y cogemos el valor estandar de 100 Ohm, la potencia disipada será P=V.I=1,5×0,02= 0,03W— 30mW, con resistencias de ¼ de Watio tenemos suficiente.

Vista de la placa ya montada con los componentes.

Placa montada en el tablero.

Se observa el cable de alimentación que procede desde la placa que alberga el interruptor y el conector hembra jack de 3,5 mm. Tambien observad la disposición de los cables azules que van a cada fila, se ve menos la disposición de los cables que van a las columnas, pero es exactamente igual a los cables azules en cuanto a distribución.

El jack de alimentación y el interruptor, y los dos cables de alimentación electrica a la placa.

FASE NÚMERO 4, EL SOFTWARE DEL PIC E INFORMACIÓN ALMACENADA EN LA MEMORIA EXTERNA:

Pondremos un ejemplo sencillo explicado en base a una matriz de 8×8 caracteres. Los transistores dicen que fila está activa en cada momento, pero el encendido o apagado de cada led lo determina la trama de bits que esta presente a la salida de los registros, por ejemplo, si a la salida de un registro tenemos la siguiente trama 01110011 y esta activa la fila 1 en los leds estará encendido lo siguiente:

O sea, para activar la fila 1, el PIC por su patita envía un 0, al ser el transistor PNP y recibir en su base un 0 pasa a estado de conducción, dejando pasar la tensión positiva a al terminal positivo de los 8 leds que conforman la fila, al salir de forma paralela en el registro 74LS164 la trama 01110011, en la columna 1 (numerada de izquierda a derecha del 1 al 8) tenemos un 0 que permite el paso de corriente por el led haciendo que se encienda, en la columna 2 tenemos un 1 que no permite que circule la corriente y led apagado, en la columna 2 tenemos otro 1…….así sucesivamente.

¿Cómo conseguimos iluminar toda la matriz?, eso se realiza con una técnica llamada multiplexado por líneas, lo que hacemos es:

-Envio trama de 8 bits al registro 74LS164 activo línea 1 espero 2 ms y apago.

-Envio trama de 8 bits al registro 74LS164 activo línea 2 espero 2 ms y apago.

-Envio trama de 8 bits al registro 74LS164 activo línea 3 espero 2 ms y apago.

-Envio trama de 8 bits al registro 74LS164 activo línea 4 espero 2 ms y apago.

-Envio trama de 8 bits al registro 74LS164 activo línea 5 espero 2 ms y apago.

-Envio trama de 8 bits al registro 74LS164 activo línea 6 espero 2 ms y apago.

-Envio trama de 8 bits al registro 74LS164 activo línea 7 espero 2 ms y apago.

-Envio trama de 8 bits al registro 74LS164 activo línea 8 espero 2 ms y apago.

Y repito la secuencia el tiempo que quiera que este presente el dibujo de 8×8 o carácter que se muestre.

La velocidad a la que se enciende y apaga cada línea es tal que a nuestra vista le da la sensación de que las 8 lineas están activas mostrándonos la información, el carácter tarda en mostrase enteramente 16 ms, o sea una frecuencia de F=1/t es decir 62,5Hz, acordaos de las televisiones de 50Hz en la que la superposición de los cuadros se hacía a esa frecuencia para que no nos diéramos cuenta de que el haz de electrones mostraba un cuadro arriba y luego otra abajo, a tal velocidad que no notábamos que en cada momento sólo estaba encendida una parte de la pantalla y no la totalidad.

Explicaré ahora el pseudo código de como hago para mostrar en matriz 8×16 información en pantalla y que técnica uso para desplazar caracteres numéricos y alfabéticos a lo largo de la pantalla.

OJO a partir de aquí el lenguaje a usar es ASM, ensambler.

Yo divido la pantalla en dos, al dividirla en dos tengo dos matrices de 8×8 y declaro en variables cada fila de la pantalla, cada variable almacena 8 bits la matriz 8X16 es esta declarada en sus variables:

FILA1                       FILA9

FILA2                       FILA10

FILA3                       FILA11

FILA4                       FILA12

FILA5                       FILA13

FILA6                       FILA14

FILA7                       FILA15

FILA8                       FILA16

A estas variables le sumo otra variable como si fuera otra matriz 8×8 (la tercera) pero será virtual y que sólo me servirá como buffer y para rotar bits sin que se note en la pantalla real, quedaría así:

 FILA1                       FILA9                        FILA17

FILA2                       FILA10                      FILA18

FILA3                       FILA11                      FILA19

FILA4                       FILA12                      FILA20

FILA5                       FILA13                      FILA21

FILA6                       FILA14                      FILA22

FILA7                       FILA15                      FILA23

FILA8                       FILA16                      FILA24

Imaginemos que formo el carácter A en una tabla, llamo a la tabla y lo almaceno en las variables FILA17, FILA18, FILA19, FILA20, FILA21, FILA22, FILA23, y FILA24

Carácter A:

Este carácter en la variable FILA17 tendra almacenado en binario 11111111

Este carácter en la variable FILA18 tendra almacenado en binario 11100011

Este carácter en la variable FILA19 tendra almacenado en binario 11011101

Este carácter en la variable FILA20 tendra almacenado en binario 11011101

Este carácter en la variable FILA21 tendra almacenado en binario 11011101

Este carácter en la variable FILA22 tendra almacenado en binario 11000001

Este carácter en la variable FILA23 tendra almacenado en binario 11011101

Este carácter en la variable FILA24 tendra almacenado en binario 11011101

 Ahora llamo a una rutina que me muestre el estado actual de las variables de pantalla, es decir:

FILA1                       FILA9

FILA2                       FILA10

FILA3                       FILA11

FILA4                       FILA12

FILA5                       FILA13

FILA6                       FILA14

FILA7                       FILA15

FILA8                       FILA16

Para ello cojo el registro FILA9 y llamo a una rutina de transmisión de 8 bits en serie y lo “empujo” al primer registro fisico 74LS164, retorno de la rutina de transmisión serie y cojo la variable FILA1 y vuelvo a irme a la rutina de transmisión en serie de 8 bits y “empujo” estos 8 bits al registro físico 74LS164, conforme ingresan estos 8 bits a su vez “empujan” a los 8 bits que habían de FILA9 y los van metiendo en el segundo registro 74LS164, de forma que al acabar la transmisión serie en los dos registros 74LS164 estan almacenados los 16 bits de las variables FILA9 y FILA1, al retornar de la rutina transmisión serie activo la FILA NÚMERO 1 DE LA MATRIZ (no confundir con la variable FILA1) y se verá el contenido de los registros 74LS164, como en ese momento están vacíos, es decir llenos de 1111111111111111 la pantalla aparecerá apagada, sin nada, hago lo mismo con el resto de variables que determinan la pantalla, es decir llamo a la variable FILA10 y FILA2 y las muestro, FILA11 y FILA3, y cuando llegue a la FILA16 y FILA8 repito el tiempo necesario para que se mantenga en pantalla el suficiente tiempo para poder observarlo. Ahora las variables donde almaceno la LETRA ‘A’, y resto de variables las roto “de rotar” un espacio hacia la izquierda y borro el acarreo:

 Nº1          FILA1                       FILA9                        FILA17

Nº2          FILA2                       FILA10                      FILA18

Nº3          FILA3                       FILA11                      FILA19

Nº4          FILA4                       FILA12                      FILA20

Nº5          FILA5                       FILA13                      FILA21

Nº6          FILA6                       FILA14                      FILA22

Nº7          FILA7                       FILA15                      FILA23

Nº8          FILA8                       FILA16                      FILA24

Empiezo por rotar FILA17, luego FILA9, y luego FILA1—-TODOS EN LA FILA NUMERO 1 DE LA MATRIZ…..luego roto FILA18, FILA10 y FILA2—–TODOS EN FILA NUMERO 2 DE LA MATRIZ. Y así hasta que rote las variables de  las 8 FILAS DE LA MATRIZ. Como quedará después de esto las variables donde se almaceno la letra ‘A’:

Así antes:

Así después:

El resto de las variables siguen igual porque aunque han rotado al estar llenas de ‘1’ no se nota.

Otra rotación:

En el resto de variables seguimos sin cambios y al mostrar el estado de estas en pantalla sigue vacía.

Otra rotación:

Veamos que ocurre ahora al activar la pantalla de las variables e ingresarlas a los registros de desplazamiento 74LS164:

FILA1                       FILA9

FILA2                       FILA10

FILA3                       FILA11

FILA4                       FILA12

FILA5                       FILA13

FILA6                       FILA14

FILA7                       FILA15

FILA8                       FILA16

Pues que ahora si empieza a aparecer parte del carácter que va rotando hacia la izquierda. En la siguiente rotación aparecerá así:

Una vez explicado el pseudocódigo pondré el código en ASM que nos sirve de ejemplo para mostrar esta primera secuencia en el panel de leds 8×16. Dejo un primer archivo con el .asm , el .INC y simulación en PROTEUS, renombrar este archivo a extensión .zip para descomprimirlo:

A

Subo otro archivo con el ABECEDARIO completo en una tabla de la memoria de programa del PIC, son 27 letras y un espacio en blanco que totalizan un total de 28 x 8 = 224 posiciones a contar por el contador que al ser de 8 bits puede contar como mucho 255 posiciones. Esto es importante recordarlo a la hora de meter datos en una tabla, para que no se desborde el contador y de un resultado inestable y fuera de lugar. Renombrar el archivo a zip y descomprimirlo:

ABC

Un video del codigo ABC, notar los destellos de los leds, pues no tiene colocado en los pixeles las laminas de papel “cebolla” para que la luz no se disperse:

Dentro de esta última fase (La Nº4), y según el titulo de esta, ahora toca desarrollar el almacenamiento en memoria externa para evitar las limitaciones propias de la memoria interna del PIC16F84A y dotar al montaje de múltiples posibilidades. La memoria a usar esta basada en el protocolo de comunicación I2C, esta comunicación es serie, con la limitación propia en velocidad que toda comunicación en serie tiene, sobre este protocolo hay múltiple información en la red, buscad si quereis saber mas. El PIC16F84A no lleva implementado por hardware este protocolo por lo que es necesario acudir a una rutina software que establezca la comunicación entre PIC y MEMORIA EXTERNA. Este protocolo software esta extraido del libro MICROCONTROLADOR PIC16F84A de la EDITORIAL RA-MA lo tengo como archivo “include” .INC en mi software.   

Manos a la obra, lo primero que haré y como ejemplo será diseñar una secuencia de ocho pantallas con la que crearemos una ANIMACIÓN, para ello os descargais esta aplicación EXCEL: matriz-8×16 , teneis que tener instalado en el excel la funcion BIN A HEX para que funcione correctamente.

Empiezo a diseñar la animación, tened en cuenta que los “unos” será un led apagado y los “ceros” serán led encendido. Esto es así debido al diseño del circuito electrónico. 

                  

Cuando hemos hecho el diseño de las ocho pantallas, copiamos el código señalado con la flecha ROJA, y haremos un “copia pega” el cual se verá mas adelante.

A continuación descargaros este programa: http://www.winpic800.com//descargas/WinPic800.zip

Lo instalais y al abrirlo queda así:

Debemos seleccionar en el cuadro superior derecho el dispositivo, en este caso I2C 24C, y en el desplegable de abajo la memoria con la que trabajeis, en mi caso es la 24C32.

En el siguiente video vereis claro el proceso de crear un archivo .bin, el cual será el que grabaremos en la memoria externa:

Ahora que tenemos el archivo LLUVIA.bin, debemos meterlo en la memoria EEPROM externa, yo he usado una 24C32 que tiene 4096 bytes, en ella podrían caber 256 pantallas de 8X16,  aunque existen en el mercado mas memorias I2C como las 24C64, 24C128, 24C256 y 24C512. Abajo en la foto se ve el tamaño de la memoria, la tengo insertada en un zócalo aparte del zócalo del circuito impreso para que con las sucesivas extracciones e inserciones no se dañen las patitas de la memoria.

Detalle del grabador con la memoria 24C32  insertada y el PIC16F84A tambien.

El video de la animación.

Aquí os podeis descargar los archivos para hacer uso de la memoria externa, renombrar el .odt a .zip para poder descomprimir: Lluvia

He hecho otra secuencia animada de 244 pantallas como cartel navideño, estas 244 pantallas han consumido 3896 bytes de la memoria 24C32 que tiene 4096 bytes, es decir que casi la he llenado toda con esta secuencia, vereis que chulo ha quedado.

ÚLTIMOS RETOQUES

    Bueno, quedaba algo por terminar del panel ¿verdad?, lo que pasa es que por perrería lo había relegado, es que es un coñazo recortar 128  cuadraditos de papel cebolla, pegarlos, y finalmente contornearlos en su forma redonda, pero bueno, ya lo he hecho.

APLICACIÓN PEGAMENTO RAPIDO (CIOANACRILATO):

IMG_5834

PEGADO DE LOS CUADRADITOS DE PAPEL CEBOLLA:

IMG_5835

CONTORNEADO CON UN CUTTER DE LOS CUADRADITOS:

IMG_5836

Lo prometido es deuda, fijaros bien en el video, en primer lugar se abre un bloc de notas del windows, luego ponemos el mensaje, guardamos el archivo y luego lo abrimos con el ic-prog seleccionando previamente la memoria externa a usar, guardamos el archivo como .bin, y ya lo tenemos dispuesto para grabar en la memoria externa. Solo podremos usar MAYUSCULAS, EL PUNTO, LA COMA Y TECLA ESPACIO, NADA MAS, esto es debido a que el programa principal del PIC16F84A ya está al límite de la memoria de programa del PIC16F84A, si está memoria fuera mayor (usando otro PIC por ejemplo) podríamos crear mas caracteres. Ojo, usar otro PIC no significa que sea compatible con el circuito electrónico de este proyecto, creo que el 16F628A si lo es pero hay que adaptar el software a las caracteristicas de tal PIC.

Aquí el resultado en este otro video.

Y finalmente los archivos, ya sabeis que están en formato .odt, debeis de poner el ratón encima y botón derecho y darle a abrir con, y elegid el winzip. Dentro de los archivos he incluido una hoja excel de carácteres alfabéticos y numéricos que proporcionan los codigos en hexadecimal, debeis tener instalado en el excel el BIN.A.HEX.

DESCARGAR:  cartel largo

(SI NO FUNCIONA EL ENLACE ANTERIOR PARA DESCARGA PINCHAR AQUÍ):CARTEL LARGO

Subo los archivos del amigo Hércules, en los que en vez de usar un PIC 16F84A, ha usado un PIC 16F628A, con lo que se gana en memoria para almacenar mas carácteres, supongo que ha usado tambien otra velocidad de reloj por lo que las subrutinas de temporarización hay que retocarlas para esa velocidad de 10Mhz. El archivo renombrarlo de xls a zip para poder descomprimir.

DESCARGAR: HERCULES_16F628A_24

Última edición 21-Mayo-2014, continuará….

About these ads

Publicado julio 28, 2011 por dragon333 en Electrónica y PICS

150 Respuestas a “MATRIZ DE LEDS DE 8×16 GIGANTE.

Suscríbete a los comentarios mediante RSS.

  1. exelente la forma ilustrativa para este tipo d. matriz d. led

  2. Mire mr luces, el lenguaje de programación de los microcontroladores PIC que se usa habitualmente es el ensamblador, el basic y el C, estos tres lenguajes tienen su peculiaridad y enfoque específico para ese microcontrolador así como sus compiladores adecuados. Yo sólo estoy adiestrado en el ensamblador, que es un lenguaje de muchas líneas de código, aunque comprendo que el C es mas reducido en líneas de código y mas simplificado. Le recomiendo que visite webs introductorios a los primeros pasos con el PIC, pues el proposito de mi blog está enfocado a personas que ya han tenido contacto con los PICS y saben algo del tema, si pone interes y tiempo tendrá resultados interesantes, para simular los PICS tambien le recomiendo que use el programa emulador de circuitos PROTEUS, en él podrá desarrollar la simulación del software en un PIC virtual, saludos.

  3. me podrías pasar el código xfa!

  4. ok grasias¡¡¿

  5. disculpa pero podria jalar en el pic16f886?

  6. Juanito, sabes, o debieras saber, que el cambio de un pic a otro tiene sus peculiaridades como por ejemplo la palabra de configuración o desactivar determinadas entradas/salidas que poseen conversores A/D, o el número de pines etc. Debes tú adaptar mi código al pic que desees usar, y ojo, lo mas probable es que el esquema electrónico aquí expuesto NO SEA COMPATIBLE.

  7. Bueno esto esta interesante
    se algo de electronica
    pero ojala me ayuden
    pues como gravo eso en el PIC?
    o como se hace
    ehhh
    porfa alguien ayudemeeeee

  8. jjjjose, ya lo he dicho por aquí, este blog está enfocado a quienes YA HAN TENIDO CONTACTO CON LOS PICS, no es un cusillo de PICS ni de como programarlos. El la red tienes abundante información al respecto para dar tus primeros pasos. Saludos.

  9. HUY
    PERDON
    PERO GRACIAS DE TODOS MODOS
    JEJEJEJE
    POR SI ACASO NO TENDRAS ALGUN CIRCUITO PROGRAMADOR EN POR USB
    PARA ESTE PIC????

  10. Dragon333, estoy iniciando en esto delos micros, he leido el codigo ABC y tengo una pregunta, nose si es muy obvia pero me va a entender, soy un novel en micros, cuando lee el valor de fila 9 y lo carga a w, q valor tiene fila nueva por primera vez cuando lo carga a w, y que valor tiene tambien fila 1, fila 11 ,fila 2, fila 12,fila 3 y asi sucesivamente, la verdad no encuentro un valor asignado o no entiendo esa parte, espero me ilustre, muchas gracias por su ayuda, hasta pronto

  11. pero este codigo muestra al reves
    las letras aparecen apagadas

  12. Si montas mi circuito las letras estan encendidas, en Proteus salen apagadas, saludos.

  13. En la subrutina de CARGA el valor de fila 17 a fila 24 lo veo claramente, pero en la subrutina de caracter cuando le da movf fila 9,0; aqui lee lo que tiene fila 9 y lo deja en w, eso creo, lo mismo con fila 1y asi sucesivamente, no logro entender de donde provienen los valores de cada fila;
    De fila 9 a la 16 y fila 1 a la 8(subrutina caracter)
    de antemano gracias por la rapida respuesta

    • Las filas 17 a 24 forman el “buffer” donde se almacena el caracter, el contenido de este “buffer” no se ve en pantalla, cuando se llama a “Rota” los registros del buffer rotan y van “cargando” a los registros 9 a 16 y 1 a 8, que si se ven en la pantalla.

  14. Bueno una ultima
    preguntilla
    no entiendo bien la parte de las tablas
    cuando forman las letras
    por ejemplo la letra a

    TABLA addwf PCL,F

    retlw h’FF’ ;A
    retlw h’E3′
    retlw h’DD’
    retlw h’DD’ COMO SACASTE ESTE CODIGO O COMO LO HICISTE
    retlw h’DD’ NO LA ENTIENDO MUY BIEN
    retlw h’C1′
    retlw h’DD’
    retlw h’DD’

  15. jjjjose este codigo resulta de dibujar el caracter a cargar este se encuentra en hexagesimal , si lo pasa a binario y lo ubica por filas va a ver como se forma la letra o caracter, en el proyecto lo explican claramente,
    espero haber dejado claro , saludos

  16. MUCHISISISISISMASSSSSSSSS
    GRACIASSSSS
    Solo una mas
    si??
    como puedo expadir la matriz???
    osea como lo puedo aumentar unas dos matrices mas de 8×8
    en si seria un total de 8×32 o como podria hacerlo 10×30 o 10×40
    como aria eso????

    puedo usar el mismo pic?? con la misma programacion???
    o usar otro PIC con mas componentes???
    porfis
    espero tu respuesta

  17. OK, estuvo claro, monte el circuito con una matriz de 8×8 y corre de maravilla, aunque cuando energizo aparecen encendidos unos led y rotan como aleatoriamente, pero creo q es por los valores q tienen inicialmente fila 1 a fila 16 osea las variables de pantalla…. gracia por la informacion y por fomentar el conocimeinto, ahora voy a implementarle escritura y lectura desde la memoria externa,, hay les voy comentando,,un saludo

  18. haber
    ya pude hacerlo
    y funciono no mas
    pero tengo un problemilla
    lo quiero usar para ponerlo a mi tiendita
    y pues lo malo es que no tengo compu en mi tienda para estar grabando cada ves el PIC

    habria alguna forma de ponerle o adaptarle un teclado con conector ps2 o usb????

    estube buscando alguna info por la red
    pero no explican muy bien
    habran alguien que me pueda ayudar a hacer esto??????
    porfisssss

    • joseph si un proyecto como el que dices lo tuviera a mano es el que pondría en este blog. Pero esto que pides es un proyecto mas elaborado que afrontaré mas tarde que temprano. Por cierto, ten en cuenta que la memoria interna del PIC 16F84 tiene un límite en cuanto a caracteres a mostrar. Mas adelante pondré el código para poder usar la memoria externa y acabaremos con esa limitación.

  19. ok
    seria buenisisisismo
    una consulta
    maximo cuantos caracteres le podria caber a este PIC

  20. bueno eso sip
    y como aria eso

  21. usar una memoria externa pues

  22. excelente trabajo, he aprendido bastante acerca de los micros
    felicitaciones muy buena su labor y lo generoso al querer compartir su trabajo para nuestra ayuda

  23. dragon333 una ayuda
    quiero escribir un mensaje con la directiva DT
    ejemplo
    mensajeBienvenida
    DT “HOLA MUNDO”
    en el programa tengo la tabla con el abcedario, pero con q valor DT me va cargando W para asi ir a la tabla y regresar con ese valor y mostrarlo con las variables de pantalla,,no entiendo esa parte, tengo entendido q DT es para facilitar la hechura de una tabla “es una tabla resumida”y cada letra va cargando W con el codigo ascii, pero luego q se hace, como voy a la tabla
    gracias por su ayuda.

  24. Hola fremanman, se emplea igual que una tabla formada por RETorne con Literal en W retlw
    seria por ejemplo:

    TABLA ADDWF PCL,F
    DT “0123456789”

    en este caso te iria mostrando los valores de 0 a 9.

  25. eso lo entiendo,
    planteo la siguiente situacion:
    tengo una tabla con las letras del abecedario como lo tienes en tu programa, cada caracter con sus respectivas instrucciones retlw,
    ahora quiero mostrar en pantalla la letra H, entonces escribo la instruccion
    DT “H”
    como sabe el contador de programa q la “H” esta ubicada en cierta posicion de la tabla,
    se q para ir a la tabla se carga w con un lieral en este caso el contenido de puntero, luego se llama la tabla acontinuacion se ejecuta la instruccion addwf y es alli cuando el contador salta y se ubica donde lo mandemos, estando alli se carga w con el literal q encuentre en esta posicion y retorna
    veo en la tabla solo instrucciones retlw
    los comentarios q se ven para difenciar o saber q letra es, son para uno mismo, no para el programa, hay viene mi duda ;
    dicho lo anterior
    DT “H” ; q valor pone en w para ir a la tabla y volver con el valor correcto
    de pronto para ti es muy obvio y portal razon no vez mi duda
    si es asi me puedes guiar “y perdona tanta molestia” con un ejemplo o trozo de programa para asi estudiarlo y entenderlo
    tal como lo hice con el trabajo q haz hecho, lo he estudiado linea por linea hasta q lo entendi, recuerda dragon q soy un principiante con los micros
    de antemano una felicitacion y muchas gracias por tu ayuda

  26. ok dragon, muchas gracias, excelente explicacion

  27. A los que habeis visto los dos ultimos mensajes de fremanman habreis observado que entre medias no ha mediado respuesta, eso es porque le envie un correo con una detallada respuesta con ejemplo de PROTEUS incluido. Que quede claro que suelo responder si no se me satura a preguntas, es cuestión de tiempo, el cual es escaso.

  28. amigo dragon, este es el final de este proyecto o piensa adicionarle algo mas, ? o tiene algun otro proyecto q este realizando me he ayudado bastante en mis estudios gracias a ud,
    saludos

    • Quiero retocar el código para que IC-PROG mediante, y a traves de memoria externa, escribir mensajes largos solo con la introducción mediante teclado de esos mensajes en el IC-PROG y su programación en la memoria externa. Tambien habras visto que tengo anunciado el proyecto de una alarma de aviso telefónico mediante PIC. Iré colgando proyectos, pero ten en cuenta que llevan su tiempo pues yo NO COPIO PROYECTOS DE OTROS, sino que los creo y desarrollo y eso me motiva mas para desarrollar este BLOG.

  29. como podria implantar un teclado de PC o un teclado de celular para que sea programable la matriz????

    • Si lees una pregunta hecha un poco mas arriba por joseph incide en el mismo caso que tú. Para implantar un teclado has de implementar el protocolo de comunicación de un teclado PS2 en el PIC, esos caracteres ASCII que devuelva el teclado lo has de llevar a una memoria externa para almacenar el mensaje y debes tener la capacidad de poder borrar los mensajes desde el propio teclado o de rectificar una equivocación al pulsar una tecla equivocada, y finalmente el PIC ha de ser capaz de identificar esos caracteres ASCII que lea de la memoria para su representación en pantalla de led.Como le dije a Joseph, si ese proyecto lo tuviera LO PUBLICARÍA.

  30. En los proximos días publicaré una mejora del proyecto, consistirá en que podremos poner el texto que nos de la gana en longitud (toda la que admita una memoria externa) para poder visualizarlo en matriz de leds. Y todo mediante la simple introducción del texto por teclado usando el IC-PROG. No es lo que busca la pregunta de mas arriba, pero se le va pareciendo.

  31. eso estara suuper weno asi podre guiarme en algo para volverlo programable
    y podria intentar con un teclado matricial para que sea mas peque y no ponerle el teclado de PC
    jejejejeje
    espero tu proyecto
    muchas gracias anticipado
    jejejeje

  32. Hola que tal dragon333 visite tu web y pucha te agradesco, tu material lo voy a implementar,el proyecto de la lluvia(no me funciona), del .bin me parece algo muy bueno pero quisiera que me ayudaras yo al crear mi .bin lo subo al 24lc256 y sigue apareciendo el mismo mensaje de la prueba ( Hola…..)a pesar que borre el Mensaje.bin sigue apareciendo el mismo.algo curioso,y utilize otro archivo de proteus y al subirlo al pic 16f84a sube pero no funciona ni siquiera el mensaje de prueba que hicistes,agradeciendo tu incondicional apoyo ,me despido.Ate Luis Miguel

    • Luis miguel, cada vez que quieras usar un .bin diferente como prueba en el PROTEUS, haz lo siguiente, BORRAS LA MEMORIA, es decir, situas el ratón sobre EL DIBUJO DE LA MEMORIA Y CON EL BOTÓN DERECHO “delete objet”, insertas una memoria nueva y le cargas el .bin que te interese probar. Esto haz de hacerlo con cada .bin que sea diferente del anterior, ES UN FALLO DEL PROTEUS QUE NO SE PUEDA CARGAR .bin nuevos y que no funcionen sino haces el truco que te he presentado. Hazlo y dime el resultado. Respecto a la última frase que has puesto sólo te diré que en el PIC virtual del proteus se carga el .hex nunca un .bin además de que has de poner la frecuencia del XTAL a 4Mhz.

  33. Gracias, dragon333 se agradece si funciono.otra vez molestandote mi gran amigo Dragon333 .quisiera hacerte una una preguntica porfavor,quisiera colocarle efectos consecutivos ( que el texto salga de arriba hacia abajo y viceversa y se quede estatico, luego que se desplaze hacia la izquierda y tambien a la derecha quisiera saber si existen unas instrucciones ( yo use rlf (de derecha a izquierda)- y tambien rrf(de izquierda a derecha),espero me ayudes con esos detalles todo lo que has hecho me parece genial gracias ,agradeciendo tu incondicional apoyo ,me despido.Ate Luis Miguel.

  34. excelente inf. muchas gracias

  35. AMIGO REALIZE EL CAMBIO DE MEMORIA PARA CORRER OTRO ARCHIVO .BIN PERO NO JALÓ ALGUNA OTRA INDICACIÓN SALUDOS MUY BUEN PROYECTO

    ESTEBAN ARROYO MELENDEZ
  36. Tengo una consulta amigo! Y si cambio la memoria 24lc256 por una 24lc16b, no tendria ningun problema a la hora de ejecutarlo??

  37. carlos no tiene el prgram de el matriz solo para cambiarle el nombre

  38. Oye amigo y aun tienes el archivo .asm del proyecto? Pero para cambiarle los caracteres que se deseen mostrar en la matriz! Si lo tienes, lo podrias subir?

    • Todos los archivos están para ser descargados en esta pagina, algunos se descargan pinchando directamente sobre ellos, otros, como el último llamado “cartel largo” da paso a una segunda pagina donde vuelve a aparecer el archivo para descargar, pincha sobre el y se descargará, es un archivo ,odt, pincha una vez descargado como para abrirlo, y elige el winzip para descomprimirlo. Saludos.

  39. Hola dragon333 he estado cacharreando ese proyecto y he guerido adicionarle dos matrices de 8×8 en total 8 filas y 32 columnas
    mi pregnta es, teniendo los cambios hechos con hardware cual seia el sigiente paso para hechar andar este cartel mas largo
    Gracias por tu colaboracion

    • Si esa matriz de 8×32 está basada en la misma electrónica que he mostrado aquí, cuando “quemes”el PIC y la memoria con el mismo software que aquí postee, sólo podrás ver la mitad de la matriz en funcionamiento ¿así es?. Por lo que el siguiente paso obviamente es reformar el código para que abarque toda la matriz, la didactica de como hacerlo está bien explicada en el blog, lee con atención que ahí está la respuesta.

  40. Tengo una consulta… he agrandado la longitud del proyecto hasta 72 columnas y 8 filas… modifique el asm y logro controlar todas las columnas el problema es que solo consigo hacer el desplazamiento en 16 columnas (tal como lo hace el archivo ABC.HEX)… podrías indicarme que debo cambiar para lograr desplazar el texto desde la fila 72 hasta la fila 1…

    • No se si lo que pretendes puede sobrepasar la capacidad de memoria de la ram del PIC 16F84A, porque debes declarar en el programa muchos registros y ademas hacer el código mas largo, habria que estudiarlo. En este proyecto si lees con atención veras en el sofware que he puesto como hacer que la matriz sea mas larga, estudia bien el código, he intenta entender la dinámica, prueba a reformar el código para una de 8×32, luego ve haciendo mas larga la matriz poco a poco, si te da error en la compilación o a la hora de meter el .hex en la memoria del PIC es que el sofware sobrepasa la capacidad de memoria, entonces no tendras mas remedio que usar otro PIC y adaptar la electronica a ese nuevo PIC.

      • Gracias dragon333: Efectivamente me funciono hasta 8×48 cuando quiero aumentar las lineas me dice que he excedido la capacidad de la memoria… podrías auxiliarme para la elección de otro pic he probado con el 16F648A que tiene 4k de memoria pero no me funciona…. siempre me queda corto…. necesito llevarlo hasta 8×72, ya tenemos construidos el cartel y hemos modificado el programa, solo nos falta elegir el PIC adecuado para poder manejar mas lineas del programa… de antemano gracias.

    • Ten en cuenta que si usas otro pic a lo mejor no es compatible con el circuito electronico aquí expuesto, tambien ten en cuenta que si usas una velocidad mayor de proceso, las rutinas de tiempo no estan pensadas mas que para 4 Mhz.

  41. porfabor me lo podrian pasar el diagrama de como adaptar un teclado de ps2 a esta matriz de led

  42. Buenas amigo, realmente soy un principiante en esto y tu proyecto esta buenísimo, ten una pregunta, aki demostraste la programación por medio del pic, es decir por cada mensaje habria que escribir una cmos, (disculpa mi ignorancia), si quisiéramos cargar directamente el mensaje por pc sea puerto serial o usb, tienes alternativas o como seria y disculpa. Muchas Gracias.

    • Pues tendrías que realizar una parte software en el pc que se comunicase con el pic usando un protocolo, por ejemplo serie, y que el pic sea capaz de realizar esa comunicación serie o bien mediante hadware del propio pic(el pic-16f84a no tiene), o mediante una rutina de comunicación serie, ademas deberías de meter chipset de por medio como el MAX 232, CON LO QUE EL CIRCUITO EXPUESTO NO VALDRÍA PARA ESTE PROPÓSITO. En el mercado existen pics que pueden comunicarse via usb, y via serie.

  43. Alguien me puede ayudar con el nombre del programa para realizar la programación y generar el archivo para cargarlo en el pic.

  44. Por favor alguien me puede ayudar con el nombre del programa para realizar la programación y generar el archivo para cargarlo en el pic gracias….

  45. Me gusta tu proyecto y me gustaría aprender, pero tengo algunas dudas las luces led que colocaste son todas transparentes, y si son transparente como es que cambian de color, o es el control de led que hace que cambien de color, mi otra pregunta es que tu usasteis una placa electrónica, eso es lo mismo que un control de luces led con SD card

    • Las luces no son transparentes, son verdes, transparente es el plastico que contiene el silicio del led. Para controlar luces existen muchas formas, con placas independientes con placas controladas por PC etc.

  46. Hola que tal, tengo una duda sobre como programaste el pic, y tambien si puedo seleccionar desde la EEPROM el texto que deseo mostrar, el proyecto me parecio genial, solo me quedo esa duda. Un abrazo

    • El PIC lo programé o mas bien grabé con el icprog al igual que la eeprom, en la última parte del proyecto si observas bien el texto o caracteres a mostrar se meten en la eeprom, pero el texto sale de forma secuencial desde las primeras posiciones y pagina de la eeprom, para poder meter datos en eeprom y poder elegir debes reprogramar el programa principal para decir a la eeprom desde que dirección y página acceder a los datos.

      • Ahh bien, y una ultima pregunta, con que soft compilaste el programa en assembler?. Eh probado con el MPASM pero no me funciona, en la maquina, al codigo lo hice en un block de notas.

  47. Dragon por favor cual es el interfaz en que se programa el pic..

  48. Excelente su trabajo que realizo acerca de la matriz de led y la parte teórica está bien explicado paso a paso al leer puse en práctica su teoría, primeramente deje el 16f84A, para utilizar el pic16f628A, que tiene más capacidad. Agregue lo que faltaba como la numeración y las letras minúsculas. Otra modificación que hice es al ver la simulación en proteusera pequeño el pasa mensaje de solo 8×16 lo aumente de tamaño a 8 x40 donde ahora se puede se leer mejor los largos mensajes que pasan. Estoy pensando en mudarme al 16f876A para utilizar una comunicación del puerto comR232(pc y pic). y así programar el letrero sin necesidad de estar sacando la eprom cada vez que se cambie los mensaje .
    Me olvidaba. Tuve el problema que me salía los avisos com fondo de led prendida no así como los videos que subiste. Para solucionar este problema utilice el integrado 7404 a la salida de los pines del 74ls164.
    No sé si será pedirle mucho que nos explicara como puedo solucionar este problema para ya no utilizar el integrado inversor que estoy utilizando que es 7404.
    Sería interesante que subiera un video donde copilas con mplab y la simulación en proteus.Agradezco anticipadamente su respuesta. Pido disculpas por haber modificado su programa de matriz de led sin su autorización.
    Atentamente Hércules.

    • Amigo hercules, disculpa ninguna, el proyecto esta ahí para ser mejorado, sólo le pido que si lo publica haga referencia al origen y a mi blog. me agrada los avances que sobre el proyecto inicial está introduciendo, no estaría de mas que los publicase para todos y los compartiera. Respecto a usar un inversor a la salida del 74ls164 (columnas) ¿por qué?, usted fijese en el proyecto inicial como se activa cada fila y columna y se dará cuenta de donde esta el fallo. Le adelanto que en el proyecto los leds son iluminados cuando a la columna les llega un CERO y previamente se ha activado la fila con un CERO a la salida del pin que va a la base del transistor que activa la fila, no se su problema viene por ahí, tambien tenga cuidado en cambiar la velocidad de reloj con la que trabaja el PIC, pues si aumenta debe ajustar la rutina de temporización a esa nueva realidad. En relación a los videos de compilación tendré que poner alguno, pues ya varios leyentes han tenido dudas al respecto. Enhorabuena por sus avances y mantenganos informados e intente compartir como ya le dije.

  49. Expelente su respuesta amigo revisare el programa como indicas Para corregir aunque no me alcanza el tiempo. El día sábado lo subiré. Indíqueme cómo puedo subir el archivo.
    Atentamente Hércules

  50. Que tal amigo todavía no encontré el problema de la matriz, ya lo tengo los archivos listos para subir. Ya lo veras Voy a subir a esta página http://www.4shared.com o si no te lo enviare a tu correo. Quisiera pedirle un favor no sé si pudieras enviarme tu asm de matriz de 8×16 o sino el hex del que es el correctos. Así lo corrijo i lo envió .el asm en mplab , Hex y simulación. Para que lo publiques. mi correo es jcarlos_507@hotmail.com

  51. Estimado Dragon, eh intentado modificar el archivo .asm, solamente repitiendo la letra a, en el prog que muestra el abecedario, pero al compilar me tira muchos errores. El programa esta bien? ya que es solo modifique el cambio de los hexadecimales de la letra A en lugar de los de la letra B

  52. disculpa quise hacer una de 8×24 pero de la fila 17 a la 24 me muestra lo mismo que en la fila 1 a la 8 y no tiene continuidad, ¿me podras ayudar?

    ¿o habra que modificar el codigo de alguna parte? ya intente de todo y no me queda

    • Tienes que modificar el código, el código de este proyecto es para 8X16 solamente.

      • y como le podria hacer para que me funcione en una de 8×24 o de 8×32?

        si me pudieras ayudar con el codigo te lo agradeceria mucho

        Amigo disculpe, pero intente comprender que no puedo ir solucionando los problemas de cada uno principalmente por falta de tiempo, son muchas las personas que me plantean dudas y me es imposible atender a tantos. La didactica de este proyecto le hace comprender si presta atención a como ampliar tanto por hardware como por software la matriz. De verdad, disculpe.

  53. felicitaciones por tu trabajo lo pondre en practica…..

  54. Primeramente un saludo amigo dragon333 Volviendo otra vez al tema de la matriz de led 8×16. Lo hice con le pic 16f84 trabaja oke en la realidad. Cambie al pic 16f628A no trabaja hice todo las modificaciones del programa para este pic pero nada de nada. Me di cuenta que no hay comunicación con la eprom externa. Pero en la simulación de proteus si trabaja 8×40. Otra prueba que hice fue con el pic 16f628A y la letra. A o mejor dicho sin utilizar la eprom externa. Si trabaja en la realidad alguna sugerencia.

    • Yo con el PIC16F628a he tenido problemas, no he conseguido que funcione en la realidad, en simulación si funciona curiosamente. He cambiado la palabra de configuración, pero no, no entiendo el porque no funciona, ojo, he probado con diferentes PIC16F628a por si era problema de la unidad que en ese momento usaba, y el resultado es igual en todos.

  55. hola amigo hercules , me podrias decir que fue lo que modificaste para hacer una matriz de 8×40???

    lo que pasa es que estoy intentando hacer una de 8 x 32 y no me queda

    te lo agradeceria

  56. Es sencillos amigo Miguel Angel Wall-e modificar de 8×16 a 8 a 32 o más para ello ya tienes que cambiarte de pic al 16f628A o sino al 16f648A. Que tiene mucho más espacio. Por qué el pic 16f84 ya casi está lleno por lo tanto ya no podrás aumentaras las minúsculas números etc. Al momento no lo tengo a la mano si medas tu correo estos días puedo pasártelo el asm y quizá la simulación.

    • Hola hercules, me podiras hacer el favor de mandarmer el codigo .asm de 8×32 usando el PIC16F628A me interesa mucho, si fuera posible tambien la simulacion en proteus, este es mi correo: josefcore@gmail.com de antemano te agradezco tu fina atencion. Saludos.

  57. para todos los amigos que desean ampliar su matriz de 8×16 a 8×40 he subido los archivos completo mas simulación a un foro y buscar la solución con el 16f628a. espero que no se moleste el amigo .dragon333. estoy tratando de buscar la forma de solucionar porque esta matriz si trabaja oke alas que hice anteriormente.

    http://www.forosdeelectronica.com/f13/16f84a-pasar-16f628a-112948/#post892641

    es la pagina donde esta alojado los archivos done pueden descargar y esta comprimido 8×40

  58. Hola amigo Hércules, en tus comentarios indicas que en físico has tenido problemas, los solucionaste, yo estoy preparando en proteus todo listo como para hacer la pcb ( agregue transistores para la salida de las filas y para las columnas terminal para dejar ok la pcb, pero tenia la duda de si te había funcionado en físico

    Juan carlos

    juan carlos celedon
  59. juan carlos celedon amigo me preguntas de los problemas que tuve ya lo solucione incluso lo hice trabajar con el pic 16f648A 8X40 TRABAJA OKE .aquí hay algunas fotos

    http://www.forosdeelectronica.com/showthread.php?p=892641#post892641

    Pronto subiré los archivos.

  60. Bueno amigos Ya dio un inicio el autor de esta matriz de led 8×16 dragon333 lo que nos ha dado una buena teoría bien comprensible acerca de este tema. Lo que nos queda es seguir mejorando o agrandando la matriz de led y así se aprende más acerca de este tema. Subo el archivo de matriz de led 8×24 con el microprocesador 16F628A De igual Manera también ajunto todo los Archivos necesarios que se puedan utilizar al hacer una matriz de led 8×24. Ten en cuenta que antes se utilizaba el cristal de 4 000 Mhz(4) y ahora utiliza un Cristal de 10 000 Mhz(10). también subo el programa CodeGraphics que sirve para generar las letras, números. etc. Al gusto que uno quiere.
    Ejemplo:
    Ejecutas (doble cip) CodeGraphics y esperas a que se ejecute demora un poco marcar donde dice tamaño de matriz 8×8, luego haces doble clip en donde dice archivo te aparece una ventana pequeña y bajas hasta la opción invertir matriz y hacer un clip todo saldrá de color negro el color puedes escoger y cambiar al que quieras ahora ya puedes generar tus letras empecemos con la A: 131, 57, 57, 1, 1, 57, 57, 57; en la ventana Mostrar hay copia estos números. Apretar Mostrar, Veras letra A. con esa base modifica las letras.
    Una vez que tengas ya generada abres el programa MPLAB el que utilizo es MPLAB IDE V8.92 y te diriges a donde indica.
    “AQUÍ SE CARGAN LOS REGISTROS DEL BUFFER QUE SERAN PRESENTADOS EN LA MATRIZ”. Y te ubicas en la letra A. Copias todo lo te genera CodeGraphics en orden. Así como se muestra copiar en decimal como en este ejemplo. Letra A
    A_ bcf STATUS,2
    movlw D’131′
    movwf FILA25
    movlw D’57’
    movwf FILA26
    movlw D’57’
    movwf FILA27
    movlw D’1′
    movwf FILA28
    movlw D’1′
    movwf FILA29
    movlw D’57’
    movwf FILA30
    movlw D’57’
    movwf FILA31
    movlw D’57’
    movwf FILA32
    goto REGISTROS

    Así como vez es sencillo cambiar todas las letras. Tu tarea será hacer las minúsculas y los demás caracteres y aumentar de tamaño la matriz.
    También vas a necesita la tabla ASCII ya buscaras en el internet yo lo utilizo del programa Mikrobasic pro. Esta tabla vas a utilizar cuando vas a aumentar las nuevas letras o caracteres que todavía no estén implementados en nuestra matriz. Utilizarlo es sencillo. En mplab te ubicas donde dice “COMPARA DATO SACADO DE MEMORIA CON VALOR NUMERICO DEL CARACTER ASCII PARA ACTUAR EN CONSECUENCIA” COMPARAR .a partir de aquí está todo lo que vamos a ver en nuestra matriz está representado en (ASCII o números) los números se pone de acuerdo a lo que corresponda la letra. Por ejemplo (a minúscula) le corresponde el número 97 .escribimos en asm o MPLAB.
    movlw D’97’ ; letra a
    subwf LETRA,W
    btfsc STATUS,2
    goto a_
    Después de esto también a que generar la letra con el CodeGraphics ya saben lo demás.
    Para que vean estoy aumentando la (a) minúscula en nuestra matriz.
    Alquilen puede indicar una página que al descargar no te pida clave. Necesito para subir los archivos.

    Atentamente Hércules.

    • Por lo que veo has resuelto el problema del 16F628a, ¿puede ser que al poner otra velocidad de cristal eso haya resuelto el problema?. Hercules ¿donde has subido esos archivos?.

  61. Hola amigo dragon333 si es cierto lo hey resuelto el problema. El día lunes te lo paso todo el archivo a tu correo a ver si lo subes a tu block para que puedan bajar los seguidores de esta página. Atentamente
    Hércules

  62. Gracias por tu estupenda colaboración que amplia las posibilidades de este proyecto sin tocar prácticamente el circuito, excepto según lo que dices, el cristal de cuarzo con otra velocidad.

  63. amigo dragon333 ya te enbie el archivo revisarlo . para los amigos que quieren el archivo de matriz de 8×24 com el pic 16f628A ya subí ase una semana atrás a esta pagina. http://www.4shared.com/rar/-s_eTeIdce/MATRIZ_DE_LED_16F628A_24.html
    atentamente .
    hercules

  64. Bueno amigo dragon333 te envíe el archivo a tu correo no sé si lo recibiste si es así puedes subirlo donde puedan descargar los lectores, pero aquí subo otras páginas para descargar.

    http://www.4shared.com/rar/uT86t1Ymce/16F628A__8x24.html

    http://www.forosdeelectronica.com/showthread.php?p=917006#post917006

    Atentamente.
    Hércules

  65. amigo dragon333 es cierto que no se puede descargar el archivo que subi aquí subo otro que se puede descargar fácil sin paswor.

    http://www.mediafire.com/download/a32fbap6b2fz7eq/MATRIZ+16F628A+24.rar

  66. Yo si lo pude descargar.

  67. hola amigo gracias por la idea ..tengo un proyecto de de una matriz de leds ..de 8 *50…y no se como desplasarlo …los mensajes

  68. Amigo hercules, he realizado tu trabajo, lo que cambie fue una memoria 24LC256, hice una modificacion el texto pero al ejecutarlo no me lee el archivo bin creado, sino que queda con el texto antiguo, (en el ic prog configuro con la memoria at24c256, ya que no aparece la 24lc256), como puedo crear el archivo bin con otro software o hay que hacer algo diferente para que lea el texto modificado

    • debes eliminar la memoria del proteus, volvrt a instalarla, cargarle el nuevo bin y ya, a mi me paso lo mismo y asi lo solucione

      juka

    • Mario cada vez que quieras usar un .bin diferente como prueba en el PROTEUS, haz lo siguiente, BORRAS LA MEMORIA, es decir, situas el ratón sobre EL DIBUJO DE LA MEMORIA Y CON EL BOTÓN DERECHO “delete objet”, insertas una memoria nueva y le cargas el .bin que te interese probar. Esto haz de hacerlo con cada .bin que sea diferente del anterior, ES UN FALLO DEL PROTEUS QUE NO SE PUEDA CARGAR .bin nuevos y que no funcionen sino haces el truco que te he presentado. Hazlo y dime el resultado.

  69. Amigo Hercules, leyendo el hilo del foro pude hacer el cambio de texto, gracias

  70. hola amigo hercules te queria pedir si puedes subir el circuito de la matriz 8×24 o 8×40 ya que no puedo hacer dar en real incluso intente cambiando el cristal de 4 a uno de 12 y no nada esperando tu respuesta

  71. Amigo franz Fernando en el transcurso de estos días subiré la matriz de 8 x 24 con el microprocesador 16f648A trabaja en la simulación y lo real así que baya consiguiendo el microprocesador. A mucho tardar subo el día martes ten paciencia.
    También vas a utilizar un cristal de 20MHZ.

  72. Excelente proyecto he estado intentando hacer algo parecido desde hace tiempo pero no puedo ya que el barrido lo hago por columnas y el billo en los leds es muy débil, aunque yo programo en picbasic creo que me servirá de mucho tu tutorial, pero sabes no he podido abrir los archivos que pones de ejemplo, dices que renombar a zip, ¿Cómo haces eso?

  73. gracias amigo hercules te cuento q incluso trabaje con el cristal 20 Mhz y tampoco pude hacer funcionar y estoy trabajando con transistores 2n 3906 y con el pic84a me funciona re bien pero con el pic628a nada a lo que vi en las fotos de tu circuito creo q estas trabajando con tips por eso te pedia que porfavor me pases los circuitos esperando tu respuesta y gracias por la ayuda

  74. Bueno amigo franz Fernando estos días estoy de viaje estaré de retorno afines de este mes entonces subiré los archivos que requieran. Con el pic 16f628a y 16f648A, si trabaja ,i con los transistores pequeños como el que estas utilizando si te va trabajar utiliza el diagrama del amigo dragon. Descarga este archivo y grávalo con tu programador y prueba con el pic 16f628a .

    http://www.mediafire.com/download/a32fbap6b2fz7eq/MATRIZ+16F628A+24.rar

  75. gracias amigo hercules esta esperando los archivos mientras tanto estare haciendo pruebas con el archivo que dejaste

  76. hola hercules aqui te mando mi correo electronico para q me pases los archivos gracias franz_g@hotmail.com

  77. hola amigo me podrías enviar algun archivo parecido al de ABC donde pueda introducir numeros.

  78. porfavor me puedes pasar el codigo para numeros de la matriz 8×16

  79. Hola amigos otra vez por aquí estuve ausente, fuera de mi lugar, ya estoy de retorno .estos días subiré lo prometido con el pic 16f648A para franz Fernando y todo los quieren este archivo, pero antes el día lunes subiré lo que están pidiendo acerca de la numeración, con un poco de teoría y el generador de caracteres y números. Etc. Para los que han pedido yeyé, Kedari. Y los que necesitan estos archivos hasta la próxima .
    atentamente hércules

  80. gracias amigo hercules estare al pendiente

  81. Bueno amigos tendrán que tener un poco de paciencia porque no he podido subir los archivos dio error al cargar el archivo de una cabina de internet. El archivo que boya a enviar pesa más de 100MB. Con el programa de MPLAB, Generador, y otros datos. Que les va a servir para agrandar la matriz de led, poner los números, etc. Esta semana seguiré intentando subir. Ya les avisare cuando suba .pondré la página para que puedan bajar. Hasta pronto.

  82. Nuevamente por aquí amigos. Sin duda es imposible subir esta en 2% i no se are hora terminara vamos a ser lo siguiente en el transcurso de estos días voy a subir si el programa de MPlab Que ustedes van a descargar de la página oficial que es esta. http://www.microchip.com/pagehandler/en-us/devtools/dev-tools-parts.html mplab descarguen la versión 8.92 está MPLAB IDE Archives casi al medio ultima parte.

  83. Ya he subido los archivos para que puedan hacer sus prácticas solamente tienen que descargar Uds. De la página oficial http://www.microchip.com/pagehandler/en-us/devtools/dev-tools-parts.html la parte donde dice MPLAB IDE Archives. Versión 8.92 es de 32bit. Trabaja normal en Windows 8.1 de 64 bit yo lo utilizo.
    El archivo que he subido se encuentra aquí. http://www.mediafire.com/download/b1k3kk9wosrl5ja/TODO_DE_MATRIZ_DE_LED.rar
    Atentamente.
    Hércules

  84. Aqui mi granito de colaboración, modifiqué la programación de los amigos para una matriz de 7×48 usando la eepron interna del pic 16F628A para 127 caracteres en mensaje. Se debe escribir el mensaje antes de grabar el pic con el programador como nos enseñaron los buenos amigos de acá. Gracias especial a los amigos Dragon333 y Hercules por sus aportes y seguiremos experimentando!!! Les dejo simulación Proteus, el asm y hex.. alguna mejora sera bienvenida..

    Archivos para descargar de 4shared:

    http://www.4shared.com/rar/ES_kB456ce/16F628___7x48.html

    Algo de video rudimentario:

  85. Si no consigo la memoria 12c 24lc256, cual seria otra opción.

  86. Hola amigos otra vez por aquí beo que la matriz de led está siendo cada vez más interesante y todo se lo debemos al amigo dragon333 quien hizo dar los primeros pasos fundamentales de la matriz de 7×16. Ya teniendo la base lo modifique. Ahora se utiliza el procesador 16F628A.
    También quisiera felicitarle al amigo ALEJHANDR0 quien también modifico e hiso trabajar la memoria interna del pic 16F628A. aunque el espacio es muy reducido y mensaje cortos, pero trabaja oke lo probé.
    Estos días estuve con un poco de tiempo y volví a revisar la matriz de led y obtuve buenos resultados trabajando en la vida real. Solamente utilizando el microprocesador 16f628A y un eprom 24c16 y un cristal de10Mhz.me traba hasta 8×56. Porque solamente dispongo de 500 led de 5mm. Ala mano. Ya pronto terminare mi matriz de led 8×56. Subiré un video.
    También me estaban pidiendo los archivos el amigo franz fernando matriz de led 8×32 aquí esta. Mas 8×40. Estos archivos trabajan en la vida real están probados. Así que a programarlo y amontar a su matriz de led. Suerte. Este es el lin para su descarga delos archivos. http://www.mediafire.com/download/4a44cyldl5kjr4b/MATRIZ+DE+LED+8X32%2C8X40.rar
    Atentamente Hércules.

    • Te agradezco tus esfuerzos por mejorar este proyecto Hercules y tambien al resto de colaboradores, yo no dispongo de tiempo suficiente para seguir con este tema, por lo que todos sus aportes son bienvenidos.

  87. Me puedes hacer un favor
    Me puedes mandar un plano y el folotipo de como hacer el programador de pic y eeprom pero con la conexión usb.

  88. Una pregunta. Se puede programar con pickit 2 y si tiene el plano y el folotipo o la construccion del programador que muestran en la imagen.

  89. Me puedes mandar los planos o la construcción de tu programador

  90. Hola gente:

    Soy de Argentina y estuve viendo que varios pedían el ASM de la matriz 8×40. Si todavia lo necesitan me avisan y lo subo ya que solo subieron el Hex. Un abrazo y a sus órdenes. Disculpen si violé algunas reglas del foro, ya que soy muy nuevito en el mismo. Un abrazo.-

    emiajleugim

  91. Otra vez por aquí. Antes, antes que nada al amigo miguel Jaime si tienes trabajos realizados acerca de esta matriz bien venida todos los aportes búbalo de una vez y si tienes con el 16f876A que mejor seria. Volviendo al tema. esta vez les traigo un programador de pic eprom por usb . Para los que están interesados. Aquí está el lin descarga.

    http://www.mediafire.com/download/8e4cnbr4d4njj9o/Programador+Hercules+POR+USB.rar

    atentamente hercules.

  92. El ASM prometido. Sigo a sus ordenes

    https://www.mediafire.com/?bcpnj4g68l6ngmw

  93. Me puedes decir que nombre reciben los led que se necesitan.

  94. gracias al amigo hercules por los archivos que me brindo ahora quisiera pedirles un nuevo favor nose si alguien me puede dar una idea de como poder mandar dos mensajes diferentes solo apretando un pulsador mi idea era utilizar dos eproms pero nose si puede hacer eso,lo que queria era mandar un mensaje primero y luego apretando un pulsador me muestre otro mensaje y luego volviendo apretar el mismo pulsador o otro pulsador que vuelva al anterior mensaje les agradecere mucho su ayuda

  95. Y cual es el voltaje de los led

  96. Franz:

    Dame un tiempito y te paso informacion de cambiar mensaje, ya que estoy trabajando sobre eso. Un abrazo.-

  97. gracias miguel estare agradecido por toda la ayuda posible

  98. sos un capo loko… es lo que andaba buscando y muy bueno como explicas paso a paso (Y)
    Es uno de los mejores post q vi como fanatico de la electronica ;)

  99. Amigo Franz:
    No me olvide de tu pedido, solo que ando un poco ocupado con unos trabajos atrasados. Prometido lo tuyo para la semana que viene, ya que a mi tambien me interesa cambiar de mensaje. Te adelanto que hay que usar otras memorias mas chicas para poder poner mas de una, por ejemplo 24c04. Estas se las pueden seleccionar por soft, por configuracion de pines. Bueno. Despues lo vemos en detalle y disculpas por la demora. Es lo malo de ser pobre. Un abrazo.-

  100. gracias estare al pendiente muchas gracias por la ayuda un gran abrazo a la distancia

Deja un comentario

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

Seguir

Recibe cada nueva publicación en tu buzón de correo electrónico.

A %d blogueros les gusta esto: