Paso 2: Controlador - registro de desplazamiento 4 x 74HC595
He optado por hacer mi controlador de matriz de LED RGB usando el 74HC595 Shift Register. Este práctico IC se utiliza a menudo para controlar 8 LED con Arduino en un circuito de luces persiguiendo muy simple. Puede encontrar cualquier número de diseños de circuitos en el circuito de luces persiguiendo en la interweb, así que no entraré en mucho detalle aquí.
Registros de desplazamiento toman un byte de datos (un número binario de 8 bits) y envían cada bit que es correspondiente pin de datos (que son 8). Registros de desplazamiento pueden ser "daisy-chained" junto con la salida de serie el siguiente pin de entrada de datos de registros de cambio de alimentación. Si alimentas a 2 bytes (16 bits) varios a la red de registros de cambio, los 1 8 bits son consumidos por el registro de cambio de 1 º y el 2 º número de 8 bits es consumido por el 2 y así sucesivamente.
He diseñado mi cadena de cambio registra para ser modular - interconexión tableros "hermana", es decir, cada tabla tiene un bloque de entrada y salido de pines que pueden conectarse entre sí para hacer 4 tarjetas en total.
Los tableros para los cátodos son los mismos que el uno al otro, la única variación es que la board rojo cátodo utiliza resistencias de 330 ohmios, mientras que las placas de cátodo verde/azul utilizan resistencias de 220 ohmios. Esta diferencia en rojo frente a verde y azul es como resultado de la diferencia en la tensión del elemento rojo en comparación con los elementos verdes y azules. Si todos tuvieran la misma resistencia de valor, la Junta sería fuertemente roja parciales, por lo que esto se equilibra cambiando la resistencia utilizada.
La Junta de los ánodos es diferente pues no tiene ningún resistencias, ni lo hace tiene un bloque de salida (este es el tablero de bornes). La otra diferencia es que el registro de cambio de ánodo no tiene el pin de "Activar salida" conectado, como no se utiliza en la producción.
El regulador espera recibir un número binario de 32 bits del microcontrolador, que es práctico, ya que Arduino no maneja directamente > 32 bits (que yo sepa).
La modularidad de los tableros también significa que yo puedo localizarlos más libremente dentro de un recinto.