¿Cómo manejar 4000 LEDs usando la menor cantidad posible de pines?

0

Necesito poder controlar ~ 4000 LED con la menor cantidad posible de pines IO digitales. Realmente no puedo explicar por qué el proyecto en el que estoy trabajando es confidencial, pero el plan es que este proyecto sea impulsado por un microordenador arduino o similar.

Hasta ahora, el método más eficiente que he podido encontrar es el análisis de caracteres que ofrece n ^ 2-n de salidas controlables para n pines. Incluso esto no parece que vaya a ser factible para este número de LED.

¿Existe un método aún más eficiente y, de no ser así, alguien tendría alguna sugerencia de cómo podría proceder?

Desafortunadamente, no creo que sea posible utilizar varios controladores "esclavos" para agregar más puertos IO debido a las limitaciones de tamaño (no será mucho más grande que un gran teclado mecánico).

Alguna información adicional solicitada en los comentarios:

  • Energía del LED: no he determinado la marca exacta del LED que voy a usar todavía, pero serán LED de 1 mm, por lo que no deberían requerir mucha energía.
  • Frecuencia de actualización < 1Hz sería suficiente.
  • Sólo es necesario el control del LED de encendido / apagado, aunque sería útil poder controlar la luminosidad de toda la matriz de manera uniforme (con cada LED con el mismo brillo).
pregunta Persistence

2 respuestas

6

Los LEDs WS2812 direccionables pueden ser lo que necesita. Estos se utilizan en indicadores y tiras de LED comunes.

Figura1.LEDdireccionablesindividualmente.Fuente: Espruino.com .

Figura2.Versióndebanda.

Consultelahojadedatos Sparkfun WS2812 para obtener detalles sobre cómo comunicarse con ellos.

No estoy familiarizado con estos, pero un análisis rápido de la hoja de datos revela

  

Cuando la frecuencia de actualización es de 30 fps, el número de cascada del modelo de baja velocidad no es inferior a 512 puntos, el modo de alta velocidad no   menos de 1024 puntos.

Eso significa que puedes controlarlos a todos con cuatro pines de salida micro.

De los comentarios:

  

Desafortunadamente, el sistema que necesito los dividirá en 40 arreglos dispares de 10x10 (LED de 1 mm).

Las matrices pueden ser encadenadas. El protocolo es efectivamente un bus de un solo cable. Los datos se transmiten con valores para el chip más cercano primero. Elimina sus datos y pasa todo lo demás a lo largo de la línea. Cada chip sucesivo piensa que es el primero en la línea y elimina los primeros valores y pasa el resto.

    
respondido por el Transistor
0

¿Sería una opción viable usar varios microcontroladores que se hayan conectado en red? Mi entrenamiento tiende más al mantenimiento que al diseño, pero si el problema es "Tengo demasiados resultados para que los maneje un microcontrolador", "usar más microcontroladores" parece una solución obvia. Tendrías que mantenerlos a todos sincronizados, por lo que la latencia podría ser un problema, pero parece que podría resolverse dependiendo de lo alejados físicamente que estén los microcontroladores.

    
respondido por el nick012000

Lea otras preguntas en las etiquetas