Índice:

Metrônomo CPE 133: 3 etapas
Metrônomo CPE 133: 3 etapas

Vídeo: Metrônomo CPE 133: 3 etapas

Vídeo: Metrônomo CPE 133: 3 etapas
Vídeo: 130 BPM 3/4 Wood Metronome HD 2024, Novembro
Anonim
Metrônomo CPE 133
Metrônomo CPE 133

Para o nosso projeto final na Cal Poly, criamos um dispositivo de controle de ritmo chamado metrônomo. Escolhemos este projeto por causa de um interesse musical e design digital. Usamos laboratórios anteriores no CPE 133 para ajudar a projetar nosso código e tutoriais online para auxiliar na construção do circuito de LED na placa de ensaio.

Etapa 1: Arquitetura do Sistema

Arquitetura do Sistema
Arquitetura do Sistema
Arquitetura do Sistema
Arquitetura do Sistema
Arquitetura do Sistema
Arquitetura do Sistema

Implementamos esse projeto usando uma placa FPGA Basys 3, placa de ensaio, LEDs, resistores e jumpers para conexão.

O objetivo deste projeto é aumentar e diminuir a taxa na qual o LED pisca para frente e para trás. O ritmo em que eles estão piscando é chamado de tempo. O tempo desejado foi alcançado usando os botões na placa Basys 3 FPGA para aumentar ou diminuir o tempo da luz.

Se o botão para cima for pressionado, a velocidade das luzes aumentará, se o botão para baixo for pressionado, a velocidade diminuirá.

Etapa 2: Arquitetura do Circuito

Arquitetura de Circuito
Arquitetura de Circuito
Arquitetura de Circuito
Arquitetura de Circuito

Arquitetura do sistema: Botão de-bounce: Implementamos um botão de-bounce no circuito para garantir que, quando clicamos em um botão, o andamento aumenta em um intervalo. Sem o de-bounce, um único toque no botão aumentaria com a frequência do relógio.

Tempo Changer: O tempo changer foi usado para aumentar ou diminuir o valor MAX_COUNT usado pelo divisor de clock para controlar a saída de clock que aciona o LED.

Registro: Um registro foi usado para manter os valores de nosso novo MAX_COUNT que foi gerado pelo alterador de tempo. Um CLR foi adicionado ao registro para redefinir o MAX_COUNT para um valor correspondente a uma frequência de relógio de 1 segundo.

Divisor de relógio: Um divisor de relógio é usado para desacelerar os pulsos do relógio da placa BASYS 3, isso é feito dividindo a frequência do relógio pelo valor MAX_COUNT que foi alterado no modificador de tempo.

Registro de deslocamento: um registro de deslocamento de 4 bits modificado foi usado para emitir um valor '1' ou alto para nosso circuito de LED na placa de ensaio na borda ascendente do pulso de clock. Com 4 LEDs na placa de ensaio, fomos capazes de produzir apenas 1 dos 4 LEDs por vez, em sucessão, fazendo uma sequência de 4 batidas repetida. O registro de deslocamento foi modificado de modo que a saída de 4 bits contivesse apenas 1 valor alto, ou seja, "0001" ou "0100".

Recomendado: