Estoy tratando de entender cómo multiplexar correctamente una matriz de 8x8 (o cualquier gran cantidad de LED) http://arduino.cc/en/Tutorial/RowColumnScanning
Sin embargo, me estoy confundiendo un poco, ya que encontré otros como este: http://garagelab.com/profiles/blogs/arduino-scrolling-text-marquee-to-give-a-happy-christmas
Ese dice usar transistores para la conmutación actual, pero el primer enlace ni siquiera usa resistencias (lo que me parece sospechoso), sin importar los transistores.
Realmente no veo por qué se necesitan los transistores, ¿alguien puede explicar por qué?
¿Pensamientos?
Los transistores son necesarios si la corriente requerida para impulsar los LED es más alta de lo que puede manejar el microcontrolador. Esto significa una clasificación de corriente de un solo pin o la clasificación máxima para todos los pines juntos (se indicará en la hoja de datos)
La mayoría de los LED típicos de 5 mm y 3 mm tienen una clasificación de corriente máxima de alrededor de 20 mA y pueden controlarse directamente desde un pin de microcontrolador (10 mA está bien para la mayoría de las aplicaciones). Sin embargo, si la corriente nominal
máxima de sus microcontroladores es de 200 mA y desea controlar 20 LED a 15 mA , entonces, aunque los pines individuales pueden suministrar la corriente, está fuera de las especificaciones para la clasificación de corriente máxima.
Los LED siempre deben tener un componente limitador de corriente (por ejemplo, una resistencia) cuando se alimentan de una fuente de voltaje, por lo que tiene razón al sospechar del primer enlace. Parece que simplemente depende de que la unidad de pines no sea lo suficientemente alta como para dañar el micro o el LED, lo que definitivamente no es una buena idea.
Aquí están las calificaciones máximas absolutas para el ATmega328 . Tenga en cuenta que hay una clasificación de corriente por pin y también una clasificación de corriente Vcc total máxima:
Ver también notas 3 y 4 en pág.314:
Además, puede obtener LED de alta potencia con valores nominales de corriente de> 500 mA, por lo que, obviamente, un transistor es la única opción en este caso.
Eso es realmente falso, los transistores se usan como interruptor. Esto le permite cambiar los pines del cátodo usando una señal positiva de un arduino de modo que cada LED en la matriz se pueda controlar individualmente, lo que permite la posibilidad de multiplexación. Simple.
Deberías leer esta publicación http://www.theengineeringprojects.com/2015/12/scrolling-text-led-matrix-8x8-using-arduino-proteus-isis.html ... Han mostrado en detalle cómo interactuar arduino con matriz led 8x8. Han utilizado MAX7219 para hacerlo. El código también se proporciona allí junto con la simulación de Proteus.
adam haile
Oli Glaser
Oli Glaser
adam haile
Oli Glaser
adam haile
Oli Glaser
neo
Oli Glaser