Tabla de contenido:

Metrónomo CPE 133: 3 pasos
Metrónomo CPE 133: 3 pasos

Video: Metrónomo CPE 133: 3 pasos

Video: Metrónomo CPE 133: 3 pasos
Video: 3/4 METRONOME 132 BPM △ 2024, Noviembre
Anonim
Metrónomo CPE 133
Metrónomo CPE 133

Para nuestro proyecto final en Cal Poly creamos un dispositivo de mantenimiento de tempo llamado metrónomo, elegimos este proyecto por interés en la música y el diseño digital. Usamos laboratorios anteriores en CPE 133 para ayudar a diseñar nuestro código y tutoriales en línea para ayudar en la construcción del circuito LED en la placa de pruebas.

Paso 1: Arquitectura del sistema

Arquitectura del sistema
Arquitectura del sistema
Arquitectura del sistema
Arquitectura del sistema
Arquitectura del sistema
Arquitectura del sistema

Implementamos este diseño usando una placa FPGA Basys 3, placa de pruebas, LED, resistencias y puentes para la conexión.

El propósito de este diseño es aumentar y disminuir la velocidad a la que los LED parpadean hacia adelante y hacia atrás. El ritmo al que parpadean se denomina tempo. El tempo deseado se logró utilizando los botones de la placa FPGA Basys 3 para aumentar o disminuir el tempo de la luz.

Si se presiona el botón de arriba, las luces aumentan de velocidad, si se presiona el botón de abajo, la velocidad disminuye.

Paso 2: Arquitectura del circuito

Arquitectura del circuito
Arquitectura del circuito
Arquitectura del circuito
Arquitectura del circuito

Arquitectura del sistema: Botón de rebote: implementamos un botón de rebote en el circuito para asegurarnos de que al hacer clic en un botón, aumentemos el tempo en un intervalo. Sin el rebote, una sola pulsación del botón aumentaría con la frecuencia del reloj.

Cambiador de tempo: el cambiador de tempo se usó para aumentar o disminuir el valor MAX_COUNT usado por el divisor de reloj para controlar la salida de reloj que impulsa el LED.

Registro: se usó un registro para contener los valores de nuestro nuevo MAX_COUNT que se emitió desde el cambiador de tempo. Se agregó un CLR al registro para restablecer MAX_COUNT a un valor correspondiente a una frecuencia de reloj de 1 segundo.

Divisor de reloj: Se usa un divisor de reloj para ralentizar los pulsos de reloj de la placa BASYS 3, esto se hace dividiendo la frecuencia del reloj por el valor MAX_COUNT que se ha cambiado en el cambiador de tempo.

Registro de cambio: se usó un registro de cambio de 4 bits modificado para dar salida a un '1' o un valor alto a nuestro circuito LED en la placa en el borde ascendente del pulso de reloj. Con 4 LED en la placa de prueba, pudimos emitir solo a 1 de los 4 LED a la vez, en sucesión, haciendo una secuencia repetida de 4 tiempos. El registro de desplazamiento se modificó de modo que la salida de 4 bits solo contenía 1 valor alto, es decir, "0001" o "0100".

Recomendado: