TODOPIC
Microcontroladores PIC => * PROYECTOS * => Mensaje iniciado por: cchhaa en 19 de Noviembre de 2005, 12:09:00
-
Hola amigos, llevo en el foro algunos meses, lo mismo que en este mundo de los pics y de la electronica, y siempre e estado preguntando, logico, partia de cero y no tenia ni idea, ahora por fin puedo ofrecer algo, aunque solo sea un circuito para simular en el proteus, se trata de una matriz de leds de 8 por 30 leds controlados exclusivamente por tres patitas de un pic 16f84 el cual esta conectado a 30 registros de desplazamiento 74hc595 que son los que iluminan los diodos. Aqui os dejo el archivo para el proteus, el archivo .hex y el codigo fuente .asm, tengo que decir que este a sido mi primer programa en ensamblador, por lo que si hay muchas barbaridades espero que lo comprendais. La simulacion en un pentiun 4 a 3ghz pone el micro al 100% por lo que no he añadido retardos en el programa del pic, supongo que en caso de fabricar una matriz de verdad habria que añadir algun retardo despues de validar cada bite en los registros de desplazamiento.
MATRIZ DE LEDS
Tambien agradecer la ayuda que he encontrado en el foro, y el altisimo nivel de los que postean en el, gracias a dogflu66 por una explicacion que dio en un post sobre el funcionamiento de los registros de desplazamiento, tambien he aprendido mucho de un libro que adquiri, "microcontrolador pic 16f84 desarroyo de proyectos", tambien fueron de muchisima utilidad los videotutoriales sobre proteus que hizo rastman, en fin estoy muy contento y muy animado para seguir aprendiendo de todos vosotros, y en lo que pueda ayudar yo tambien.
Bueno no me enrroyo mas, un saludo
cchhaa
PD. por desgracia los diodos led que tiene el proteus no destacan demasiado cuando se iluminan, por lo que cuesta un poco ver el texto que sale por la matriz de leds, a ver quien descubre lo que sale....
-
cchhaa muy buen trabajo, yo diria qu eres todo un ejemplo al demostrar que si se puede conseguir lo que queremos, solo es cuestion deponerle empeño, asi como tu lo has hecho, en verdad en hora buena.
-
jeje como mola, peda de matriz!!!
-
Quien me da un curso sobre proteus?....
![Llorica Llorica]()
PD. felicidades... por el avance...
-
Escrito originalmente por cchhaa
Hola amigos, llevo en el foro algunos meses, lo mismo que en este mundo de los pics y de la electronica, y siempre e estado preguntando, logico, partia de cero y no tenia ni idea, ahora por fin puedo ofrecer algo, aunque solo sea un circuito para simular en el proteus, se trata de una matriz de leds de 8 por 30 leds controlados exclusivamente por tres patitas de un pic 16f84 el cual esta conectado a 30 registros de desplazamiento 74hc595 que son los que iluminan los diodos. Aqui os dejo el archivo para el proteus, el archivo .hex y el codigo fuente .asm, tengo que decir que este a sido mi primer programa en ensamblador, por lo que si hay muchas barbaridades espero que lo comprendais. La simulacion en un pentiun 4 a 3ghz pone el micro al 100% por lo que no he añadido retardos en el programa del pic, supongo que en caso de fabricar una matriz de verdad habria que añadir algun retardo despues de validar cada bite en los registros de desplazamiento.
MATRIZ DE LEDS
Tambien agradecer la ayuda que he encontrado en el foro, y el altisimo nivel de los que postean en el, gracias a dogflu66 por una explicacion que dio en un post sobre el funcionamiento de los registros de desplazamiento, tambien he aprendido mucho de un libro que adquiri, "microcontrolador pic 16f84 desarroyo de proyectos", tambien fueron de muchisima utilidad los videotutoriales sobre proteus que hizo rastman, en fin estoy muy contento y muy animado para seguir aprendiendo de todos vosotros, y en lo que pueda ayudar yo tambien.
Bueno no me enrroyo mas, un saludo
cchhaa
PD. por desgracia los diodos led que tiene el proteus no destacan demasiado cuando se iluminan, por lo que cuesta un poco ver el texto que sale por la matriz de leds, a ver quien descubre lo que sale....
está muy currado pero lo veo más lógico usando 8 patillas del pic lo que reduciría muchísimo el número de registros de desplazamiento también habría que añadir algun que otro transistor. Tengo hecho uno por ahí a ver si posteo las imágenes,
Por cierto que mi pc no es capaz de simular... 100% de carga de cpu.
-
Enhorabuena paisanooooooo.
¿Ves cómo era cuestión de animarse?, me alegro mucho que hayas superado el primer escalón porque verás como ya no hay vuelta atrás.
No puedo ver la matriz porque no tengo Proteus, ¿no podrías subir también un JPG?
Enhorabuena otra vez.
-
Muy buen trabajo para ser el primer programa que haces!!!a seguir asi!!!
-
Muchas gracias a todos por los comentarios!!!!!!!!!!!!!!
elmasvital, he visto por internet algunas matrizes de leds como dices, pero tambien he visto muchas matrizes de leds comerciales y te puedo decir que todas utilizan el 74hc595 para encender los leds, supongo que por razones de vision, ya que asi el led esta encendido todo el rato, no como tu indicas que tiene que estar continuamente haciendo un barrido para encender los leds.
otra cosa, en las matrices de leds comerciales que he visto no llevan una resistencia por cada led, es mas, no llevan resistencias, llevan un condensador por cada registro de desplazamiento, pero no se como ira conectado.
nocturno66, en cuanto pueda te cuelgo algun jpg de la matriz
un saludo
ccchhaa
-
Escrito originalmente por cchhaa
Muchas gracias a todos por los comentarios!!!!!!!!!!!!!!
elmasvital, he visto por internet algunas matrizes de leds como dices, pero tambien he visto muchas matrizes de leds comerciales y te puedo decir que todas utilizan el 74hc595 para encender los leds, supongo que por razones de vision, ya que asi el led esta encendido todo el rato, no como tu indicas que tiene que estar continuamente haciendo un barrido para encender los leds.
otra cosa, en las matrices de leds comerciales que he visto no llevan una resistencia por cada led, es mas, no llevan resistencias, llevan un condensador por cada registro de desplazamiento, pero no se como ira conectado.
nocturno66, en cuanto pueda te cuelgo algun jpg de la matriz
un saludo
ccchhaa
Venga vamos por partes.
En primer lugar lo que pongo abajo no es dogma de fe, puedo estar equivocado y tu en lo correcto. Me parece en todo caso un gran trabajo y te animo a que sigas por la misma línea.
¿Has probado a montar esa matriz? Me da que no por la siguiente cuestión. Ponle un amperímetro al circuito en proteus a ver que te lanza porque a mi no me deja simularlo, me sobre carga el cpu. ¿cual es el problema? Iluminar tanto led al mismo tiempo puede suponer un gasto energético bastante importante. Si fueran leds de 20 mAh tendrias 8x30=240 x 0,02= 4,8 amperios. Creo que los verde de baja intesidad vienen a ser 0,005 que te rebajaría a 1,2 amperios pero los comerciales tienen bastante más de 30 columnas. Imaginate las cruces de farmacia que usan 2500 leds de alta intensidad y usan el mismo sistema.
Por otra parte no se utilizan resistencias para alimentar los leds porque precisamente debido a que no están todo el rato encendidos no es necesario. Se alimentan directamente a 5v o incluso más.... Al tener que multiplexar las lineas y refrescar esos leds de forma constante si los alimentaras con los voltajes tradicionales para encender un led iluminarían bastante poco. Lo que se hace es que se manda un voltaje más alto porque el led puede aguantar un voltaje más alto pero no constante sino en pico de amplitud, es decir durante poco tiempo. Esto le da la energia suficiente para que pueda permanecer encendido hasta el siguiente refresco.
Que los publik comerciales usan registros de desplazamientos. Pues sí pero yo creo que lo usan para seleccionar la columna y los 8 leds correspondientes que hay en esa columna los enciende o no el propio pic o incluso otro registro de desplazamiento que lleve las filas. También encontrarás posiblemente arrays de transistores darlinton como el uln2003.
A ver si tengo tiempo y os enseño la que yo hice (fisicamente) hace tiempo, siguiendo estos metodos.
A seguir así
1 saludo.
PD: Acabo de mirarlo en tu diseño los leds tienen puesto un consumo de 10ma. 240 x 10 ma = 2.4 amperios.
-
Wow! interesante diseño!!, se consumio el 100% de mi P4 pero logre simularlo, jajaja mensaje particular

LordLafebre.. tienes razon 

-
nocturno66 aqui te dejo un jpg de la matriz
JPG
elmasvital, agradezco mucho tus comentarios, sin duda este tipo de comentarios es el que necesito, mis conocimientos en electronica se remontan a tres meses y todos los conceptos que tu planteas se me escapan ahora mismo, como bien dices esta matriz no la he montado, es un ejercicio que me plantee para el aprendizaje de proteus y los registros de desplazamiento. Con respecto a los publick comerciales te puedo asegurar que utilizan un 74hc595n cada 8 diodos, incluso las cruces de farmacia con tantos diodos, en casa tengo fotos donde se aprecia perfectamente, a ver si otro dia te las paso.
Se me plantean varias dudas, a ver si tu o alguin me las puede solventar:
- Si esa matriz consume 2.4 A porque no funcionaria?
- No se supone que proteus es un simulador, porque hay si se encienden los leds?
- Hay alguna forma de configurar proteus para que tenga esos detalles en cuenta para los que no tenemos muchos conocimientos en electronica?
un saludo y gracias de nuevo por tu comentario elmasvital
cchhaa
-
Escrito originalmente por cchhaa
nocturno66 aqui te dejo un jpg de la matriz
JPG
elmasvital, agradezco mucho tus comentarios, sin duda este tipo de comentarios es el que necesito, mis conocimientos en electronica se remontan a tres meses y todos los conceptos que tu planteas se me escapan ahora mismo, como bien dices esta matriz no la he montado, es un ejercicio que me plantee para el aprendizaje de proteus y los registros de desplazamiento. Con respecto a los publick comerciales te puedo asegurar que utilizan un 74hc595n cada 8 diodos, incluso las cruces de farmacia con tantos diodos, en casa tengo fotos donde se aprecia perfectamente, a ver si otro dia te las paso.
Se me plantean varias dudas, a ver si tu o alguin me las puede solventar:
- Si esa matriz consume 2.4 A porque no funcionaria?
- No se supone que proteus es un simulador, porque hay si se encienden los leds?
- Hay alguna forma de configurar proteus para que tenga esos detalles en cuenta para los que no tenemos muchos conocimientos en electronica?
un saludo y gracias de nuevo por tu comentario elmasvital
cchhaa
Pasame las fotos que mencionas a ver. Yo estoy detrás de que me vendan uno estropeado en el trabajo pero es que pasan los muy $%·$%""... prefieren tirarlos a la basura.
Lo del consumo de 2,4 no es que no se pueda hacer simplemente es que es innecesario.... de verdad... haz la multiplicación con 2500 leds que tienen las de farmacia cuma de 95 cms.
El sistema que usan es muy antiguo... tan antiguo como los televisores y no es que tengas que indicarle a proteus nada en especial... debes tenerle en cuenta en el diseño y en la programación. La idea es ir recorriendo la matriz punto a punto e indicandole si deber encenderse o no y pasar al siguiente hasta recorrerla por completo, y conseguir hacerlo pues como 20 o 30 veces por segundo para que no se observe parpadeo. Si no ves resistencias en los leds es simplemente por eso, estoy seguro de que si miras la tensión que sacan además de ser pulsante es mayor o igual a 5 voltios.
De todas formas estoy deseando ver esas fotos. Si estás en lo cierto debería haber 1 registro de desplazamiento por columna... y lo dudo porque si el ingeniero puede ahorrar costes poniendo 1 por cada 8 columnas aunque el hardware y el software se complique un poco no le va a temblar el pulso.
No he dicho que no funcionara simplemente que por diseño gasta mucho, lo que posteriormente te va a ser imposible corregir si lo montas. Y es preferible que te des cuenta ahora que no cuando lo montes
. Pero oye eso no quita que si quieres lo montes... no me hagas ni caso solo son consejos.
1 saludo
-
No es que no te vaya a funcionar el circuito, si lo montas seguramente funcionaria como lo hace en el proteus. El problema es el consumo, si en una farmacia tienen que tener una cruz con 2500 leds, el consumo seria de..... 10mAx2500=25A. Ten en cuenta que 25 amperios es una autentiaca burrada, esto encendido dia y noche costaria muuuuuuuuuuuucha pasta en luz, a parte que con esto encendido, enciendes un horno o una labadora o algo y dependiendo de la intensidad que tengas el diferencial, seguramente saltaria. Por esto se acostumbran a multiplexar los led de las matrices, para ahorrar consumo.
Salu2
-
Bueno, no he leido tu programa, pero acaso no usa multiplexaje? si es asi, en un momento dado no estarias consumiendo los 25 o 2.4 A sino una fraccion de ello. Como dije no he leido el programa y desd dond estoy escribiendo ahora mismo no lo tngo (college) si no lo usa entonces corrijo/borro este comentario, pero si fuese multiplexaje seria muy poco lo q consume.
-
pues no fenix_in no usa demultiplexaje, los diodos que se encienden estan todo el rato encendidos.
elmasvital aqui te pongo las fotos, espero que te sean de utilidad.
esta es de una cruz de farmacia, tiene un 74hc595n por cada 8 leds y tambien tiene arrays de resistencias
CRUZ DE FARMACIA
Estas tres fotos son de un display que tengo aqui en mi oficina, que desmote para ver como iba.
DISPLAY1
DISPLAY2
DISPLAY3
son fotos de sacadas con una camara de 8 mp por lo que son bastante grandes
un saludo
cchhaa
-
Escrito originalmente por cchhaa
pues no fenix_in no usa demultiplexaje, los diodos que se encienden estan todo el rato encendidos.
elmasvital aqui te pongo las fotos, espero que te sean de utilidad.
esta es de una cruz de farmacia, tiene un 74hc595n por cada 8 leds y tambien tiene arrays de resistencias
CRUZ DE FARMACIA
Estas tres fotos son de un display que tengo aqui en mi oficina, que desmote para ver como iba.
DISPLAY1
DISPLAY2
DISPLAY3
son fotos de sacadas con una camara de 8 mp por lo que son bastante grandes
un saludo
cchhaa
Tienes acceso a esas cruces?? mira a ver si pone el consumo que tienen. No se parecen a las que yo veo por aqui por sevilla... pero viendolas de cerca son bastante diferentes...
En todo caso para evitar que el consumo sea el que menciono lo unico que hará supongo es apagarlos y encenderlos de forma constante... porque alimentar todo eso es una burrada, pero claro para qué esas resistencias. Y para usar este método mejor multiplexar y crear una cuadricula... Porque además esos leds deben ser de alta intensidad... sino no alcancaría una distancia alta de visualización que es por lo que los farmaceuticos las compran.
1 saludo
-
por desgracia no tengo acceso a las cruces de farmacia, son fotos que saque hace un mes en madrid en una feria de muestras sobre rotulistas.
un saludo
cchhaa
-
ayer puse con el proteus un medidor de amperaje de corriente continua a la salida de masa de todos los leds y el amperaje maximo que vi fue de 1.3 amperios, como no tengo muchos conocimientos de electronica no se si sera el mejor sitio para medir, si mido en luna salida del 74hc595 antes de llegar al diodo mide 10mA que es lo que consume un solo diodo. Por lo cual no parede que sea ninguna barbaridad su consumo.
un saludo
cchhaa
-
Joder, que bicho la cruz de farmacia!! como pa soldar los leds a mano ...
-
jejej que pedazo de resolución de las fotos!! no quiero contar el rato que ha tardado mi super modem de 56K en abrir las fotos!!

Lo que queria comentar es que me ha hecho mucha ilusión ver que los bichos de siemens 80537 basados en arquitectura del 8051 todavía no han muerto!! Yo empecé mis primeros pasos con este procesador. 
Por otro lado me alegra ver que no soy el único que la caga y no soy el único que pone cablecitos para arreglar los errores 
Salu2!
-
Desde luego el utilizar los recursos de hard junto con un buen soft (del pic claro) hacen mas simple los circuitos exteriores de control, pero de todas formas utilizando registros de desplazamiento que tienen una alimentación para la lógica y otra alimentación para la carga (independientes) se puede mediante una línea de transistores en seguidor de emisor (cada transistor alimentaría un numero determinado de led o células) mas un contador con registro de desplazamiento conectado a los transistores seria una forma sencilla de hacer un multiplexado de los led sin tener que usar recursos del micro y a demás al ser un circuito independiente en el caso de sobre alimentar los led seria menos perjudicial un bloqueo del micro con unos estados activos en sus salidas con el perjuicio para los led que quedarían seleccionados, ya que hay que tener en cuenta las protecciones para los led en caso de que dar alimentados permanentemente por algún accidente o avería… esto pondría ser una opción.
-
y esto también explicaría el funcionamiento del tipo de cruz de cchhaa...
-
Dogflu66 sin duda tus explicaciones me son muy utiles para ir avanzando, veo muy interesante la idea de usar registros de desplazamiento con alimentacion independiente para la carga, desconocia que existieran, puedes poner el nombre de alguno?, otra cosa se podria hacer tambien usando optoacopladores? asi el circuito de los led estaria separado totalmente del circuito de los micros no?
un saludo
cchhaa
-
Escrito originalmente por pocher
El mensaje que sale es: "dibujo de corazon" TODOPIC
Ahora costar, cuesta de ver.
Si cuesta mucho verlo
, en mi favor dire que es lo primero que hice con proteus, ahora usaria otro tipo de diodos que se ve mucho mejor.
un saludo
cchhaa
-
Escrito originalmente por dogflu66
No encuentro el proyecto pero aqui dejo los CI, Bimos II 8-Bit Serial-Input, Latched Source Drivers... UCN5890, 5891, 5841 y 5842... estos dos ultimos preparados con diodo en sus salidas para excitar reles.
es una redundancia auto citarme.. 
no veo justificacion en este proyecto para incorporar optos.. ![muñeco de nieve muñeco de nieve]()
-
Gracias dogflu66 por la respuesta, creo recordar que eso lo pusiste en un post sobre registros de desplazamiento.... es que tanta informacion me sobrepasa
un saludo
cchhaa
-
QUE TAL COMPADRES...
PUES BIEN, ANIMADO POR UDS. HE ESTADO JUGANDO CON LAS MATRICES DE LEDS, PERO ESO DE UTILIZAR 3 PATITAS HACE QUE SE UTILICEN MUCHOS REGISTROS, POR LO QUE BASANDOME EN UN DISEÑO DE LA WEB DE JOSEPINO HE HECHO ANDAR 4 MATRICES DE 8 X 8 CON UN PIC 16F628....
CLARO ESTA NO HE ARMADO EL CIRCUITO SOLO LO HE SIMULADO EN PROTEUS, PERO AL PARECER VA BIEN...
YO CREO QUE ES MAS SENCILLO USAR LOS RESISTROS 74HC164 QUE SOLO NECESITAN UN DATA, UN CLOCK, Y LOS BITS DE DATOS QUE SE ENVIAN POR UN PUERTO, Y CON ESTO CADA REGISTRO MANEJA UNA MATRIZ, ES DECIR 4 MATRICES 4 REGISTROS, Y PUEDEN MOSTRAR LO QUE UDS. QUIERAN, INCLUSIVE SI ALARGAN EL CODIGO PUEDEN AGREGAR LAS MATRICES QUE SEAN...
BUENO EN EL POST DE PRIMEROS PASOS CON MICROCONTROLADORES SUBIRE EL EJEMPLO PARA QUE LO CHEQUEEN...
SALUDOS Y UN ABRAZO.... PERDON SI ESTOY FUERA DE FOCO.
-
compade yo me apunto para hacer una matrix, que hace dia estoy por desarrollar una les comento que soy un principiante con los pic..
y como principiante les comento que me gusta ayudar en lo qe sea cuenten con migo...
-
Doy fe de que no llevan resistencias las pantallas de CUMA he estado mas de una década montándolas.
supongo que el control de la intensidad de los led lo hacíamos a través de software con un control de ancho de pulso.
yo solo montaba no diseñaba.