Necesitamos un IC de controlador de LED económico que:
¿Alguien puede recomendar algunos dispositivos a considerar? Creo que los dispositivos multiplexados/charlieplexados no funcionarán para este proyecto, pero estoy abierto a puntos de vista opuestos.
Buscamos impulsar 120 LED RGB (320 canales en total) en una pantalla de visión persistente. La naturaleza de este dispositivo (montado en un radio de bicicleta) significa que para obtener la resolución "horizontal" (a lo largo de la circunferencia de la rueda) de 10 mm/píxel virtual necesitamos poder cargar una "columna" completa de píxeles (un radio) en 0,746 mS. La línea de pestillo es para garantizar que toda la columna se encienda a la vez, en lugar de una por una. 1Mhz I 2 C termina siendo más lento que SPI: usando chips ATmega funcionando a 20Mhz, el subsistema SPI puede cargar 24 controladores de 16 canales en aproximadamente el tiempo necesario (a 12 bits/canal). yo 2C a 1Mhz y 8 bits/canal (cero sobrecarga) puede programar 320 canales en 2,56 mS o más de 3 veces el tiempo. Dada la arquitectura del sistema, realmente preferiríamos quedarnos con un procesador de un solo núcleo para facilitar el control y la comunicación.
TLC5940 Hemos utilizado TLC5940 (que se puede obtener en Ebay en cantidades por alrededor de $ 1 / pieza) con éxito en cuanto al tiempo. Estos controladores pueden absorber oficialmente hasta 120 mA/chip, lo que significa 7,5 mA/canal (8 mA si solo se usan 15 canales). Estamos considerando sobrecargar los TLC5940 para alcanzar 15 mA/canal (225 mA/pico de chip), sin embargo, esto parece inseguro. ¿Lo es? ¿Hay formas de sobrecargar el controlador LED de una manera más segura? El TLC5940 puede señalar un error térmico en uno de sus pines. Se espera que el proyecto se implemente en un entorno de alta velocidad del aire: no se espera que la disipación de calor sea un problema.
75HC595 También hemos intentado usar el registro de desplazamiento 74HC595 para esto. Esto tiene dos problemas. Una es que 74HC595 solo puede generar 8,75 mA/canal si todos los canales son uno. La segunda es que al usar un controlador LED PWM, necesitamos obtener 0,746 mS/actualización porque cada "píxel" horizontal dura 0,75 mS. PWM manual significa que para N niveles lineales de escala de grises tendríamos que actualizar cada registro de desplazamiento N veces / 0,75 mS, lo que rápidamente se vuelve difícil de manejar una vez que se da cuenta de que el brillo se percibe exponencialmente.
Parece que la lectura de la hoja de datos en la que TLC5940 puede absorber solo 120 mA/chip es incorrecta:
Más bien, parece que la lectura correcta del " El valor de Corriente de salida (CC)" en la página 2 de la hoja de datos es como la corriente máxima por canal , que también es la interpretación a la que llegó Sparkfun en la discusión de este controlador . La ambigüedad de la frase Corriente de salida (CC) se resuelve a favor de por lectura del canal debido a:
simular este circuito : esquema creado con CircuitLab
Para aclarar el punto anterior: En el esquema anterior, el voltaje que ve el TLC5940, es decir, LED Vcc (o pero estar por encima de cierto umbral, califique ese umbral , que es alrededor de 1.25V para 120 mA, y es de 0,35 V más o menos para 20 mA. Cualquier voltaje en encima debe ser disipado por el dispositivo como calor. Para obtener la máxima corriente posible en el TLC5940, querrá hacer coincidir a de ese LED, de modo que el IC TLC5940 disipe la potencia mínima necesaria, ya que la clasificación de disipación de potencia es un factor limitante de la cantidad de corriente que el dispositivo puede absorber en cada canal.
(y de vuelta a la lista)
Anindo Ghosh
Andy alias
rojoarenosoladrillo
martin thompson
marcador de posición
angelagrande
Kurt E. Clothier
angelagrande
angelagrande