Puede adoptar varios enfoques para esto dependiendo de sus motivos ocultos. P.ej. ¿Se está acercando a esto como una experiencia de aprendizaje de nivel principiante en diseño lógico, microprocesadores o FPGA? O, quizás, ¿esto tendrá algún tipo de aplicación de producto?
Esto se puede hacer usando la lógica de la familia 7400 con un puñado de chips. La pieza central sería un contador up-down decenio (por ejemplo, 74x168 o 74x192) o un contador up-down binario (por ejemplo, 74x169 o 74x193. La salida de este contador iría a un chip decodificador 1: n de algún tipo (por ejemplo, 74x145) Esto, a su vez, impulsaría los LED en una "cadena" para que obtenga el efecto de histograma que está buscando. Los pulsadores deberían estar "condicionados" por alguna lógica para obtener los impulsos ascendentes y descendentes convertidos en una dirección y un reloj. el formato que necesita el contador que elija. Definitivamente se puede hacer, pero deberá aplicar una dosis moderada de ingenio. ¡Sin duda habrá aprendido mucho sobre diseño lógico cuando haya terminado!
Otro enfoque lógico sería utilizar un registro de desplazamiento bidireccional de 10 bits (probablemente dos unidades de 8 bits conectadas en serie como 74x299 o 74x323). Usted "bombearía" un registro de cambios de 1 bit hacia arriba y hacia abajo con los botones pulsadores (nuevamente "condicionado" para proporcionar el formato de las señales que necesita el registro de cambios específico que elija). El bit 1 se propagaría como una cadena de 1 bit a través de las etapas del registro de desplazamiento, creciendo a medida que se desplaza a la derecha, reduciéndose a medida que se desplaza a la izquierda. Los LED se accionan directamente desde las salidas del registro de desplazamiento. Este enfoque es probablemente más sencillo de implementar que el enfoque de contador descrito anteriormente. De nuevo, un excelente proyecto para principiantes para aprender el diseño lógico fundamental.
Realizar esta función con un pequeño micro es casi trivial, suponiendo que tenga un nivel fundamental de experiencia de diseño con tales dispositivos. Si no lo haces, sería un buen micro proyecto para principiantes.
Por último, y dependiendo de su fondo, puede usar un FPGA ("array de puertas programables de campo") o CPLD ("dispositivo lógico programable complejo"). Esta sería la solución más elegante en términos de conteo mínimo de piezas. Sería el chip FPGA, los botones y los LED y no mucho más. El inconveniente es reunir las herramientas de diseño necesarias y aprender a usarlas. Además, es probable que tengas que aprender el lenguaje de diseño de programación VeriLog o VHDL FPGA. Este es un muro alto para escalar para principiantes. Especialmente si no sabes mucho sobre diseño de lógica fundamental para empezar.
En resumen, depende de dónde vienes y hacia dónde te diriges.
¡Buena suerte!