Reduciendo la cantidad de salida del controlador requerida - haciendo que k de n sea binario a decodificador único de los decodificadores 1-de-n

1

Soy un tipo de dabbler electrónico autodidacta y ser un tinkerer autodidacta tiene la desafortunada consecuencia de reinventar la rueda metafórica con bastante frecuencia. Me gustaría evitar este destino de nuevo si es posible y preguntar a las personas más inteligentes es una de las formas de hacerlo.

Mi proyecto actual requiere que conduzca, entre otras cosas, varios LED (60), en un esquema de 1 diodo en - 2 diodos en - 3 diodos en - y así sucesivamente hasta 60 diodos en forma simultánea, a diferencia de primer diodo encendido - segundo diodo encendido - y finalmente 60.o diodo encendido - un LED encendido en un momento dado. Obviamente, no puedo usar una salida digital de microcontrolador por enfoque de LED debido a la gran cantidad de salidas requeridas. Tengo mis manos en arduino mega2560 con 54 puertos de E / S y necesito la mayoría de ellos para esas otras cosas, y obviamente uno necesita 6 bits para codificar 60 señales diferentes, no 60 de ellas.

La solución que pensé, adecuada para mi conocimiento y experiencia, es la combinación de 8 decodificadores CD4028 de 3 a 8 como este

Esomeproporcionaría1de64salidasyaquímeencuentroconelprimerinconveniente.Penséenunirlassalidascondiodos,asíquetengoksalidasenestado"1" en lugar de k-th, pero la caída de voltaje al enviar la señal a través de 60 diodos será masiva. Horrendo. ¿Cómo debo "desenredar" aquí? ¿Hay algún decodificador de circuito integrado K-of-n que desconozco y no puedo buscar en Google?

Luego está la cuestión de costo y complejidad. Intenté evitar los LEDs de charlieplexing en 9 bits, porque eso sería un lío impío de cables. Una mezcla demasiado grande de semiconductores y circuitos integrados también sería más costosa para soldar que comprar otro mega2560 y usar uno de 6 bits en - 40 LED de algo fuera de "controlador dedicado".

Alguien tiene ideas, ¿cómo debo comenzar desde aquí? Estaré feliz incluso con solo una dirección general porque otro arduino es un plan que funcionará, solo pensé que me gustaría una solución más elegante. OFC, no alimentaré tal cantidad de LED a través del microcontrolador, la pregunta anterior es todo acerca de cómo conducirlos, no de encenderlos.

    
pregunta vonzgred

1 respuesta

0

Una forma sencilla de hacer esto es usar varios registros de turnos. Cada uno tendrá 8 salidas y 3 líneas de datos necesarias para controlarlo. Lo mejor de ellos es que se pueden encadenar fácilmente. Puede controlar fácilmente 60 LED con solo 3 pines del microcontrolador.

Aquí hay un gran tutorial sobre cómo usarlos: enlace

    
respondido por el Drew

Lea otras preguntas en las etiquetas