Estoy usando un decodificador de 4 a 16 líneas para convertir un número de 4 bits de arduino/seeed/ESP32 para controlar circuitos como LED RGB que, de lo contrario, consumirían todos mis pines. Hay algunos problemas con este enfoque que he resuelto al estudiar las hojas de datos, pero uno me tiene perplejo: solo un pin puede estar activo (bajo) a la vez en el 74HC154, por lo que si conecto 5 LED de ánodo común RGB solo puedo pulsar cada uno cátodo R/G/B durante 1/15 del tiempo para que se apaguen.
Necesito algún tipo de pestillo de 16 canales con función clara para poner al lado del decodificador para poder acumular pines activos (bajos) hasta que pulso el pin claro. Esto es lo que necesito:
Chip izquierdo: entradas 0-15, chip derecho salidas 0-15 y un pin claro.
De esta manera, puedo usar el decodificador para 'programar' el chip de enganche y dejar que controle los LED durante 1 ms o similar, luego borrar y hacer el siguiente 1 ms. Si puedo hacer esto lo suficientemente rápido, incluso puedo enviar software PWM a través de los chips y tener la funcionalidad RBG básica (en lugar de solo R, G, B, W, cian, magenta, amarillo o apagado)
He investigado convertidores de bus y flip flops, pero no puedo encontrar esta funcionalidad sin conectar muchos chips juntos. ¿Existe ese chip o se puede ensamblar? Si no, ¿cómo resolvería el problema básico?
Gracias por comentar ideas.
Podría usar un PLA o un CPLD, estoy de acuerdo, pero eso es más de lo que quiero abordar ahora. Lo reduje a tres opciones para resolver el caso de uso en lugar del decodificador de 4 a 16, que no era el camino a seguir para mí.
Solo para LED está el MAX7219 que controla 64 LED. Quizás esto pueda hacer RGB con menos LED o múltiples chips;
Para la salida general, el componente que quería es un registro de desplazamiento como 74hc595;
Para los LED existe Charlieplexing (Quizás podría adaptarse al caso general con el uso de diodos en serie con carga) http://www.pcbheaven.com/wikipages/Charlieplexing/
Doy crédito a las respuestas de este artículo: https://arduino.stackexchange.com/questions/117/is-there-a-way-to-have-more-than-14-output-pins-on-arduino
Si bien acepto que esto es un cambio de enfoque, ya que ya no uso un decodificador, es la solución a mi pregunta en espíritu.
broma
TonyM
Kartman