Índice:
- Etapa 1: Obter Hardware / Software
- Etapa 2: Diagrama de blocos
- Etapa 3: Módulo de Projeto
- Etapa 4: restrições
- Etapa 5: teste
Vídeo: Cronômetro VHDL de um minuto: 5 etapas
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:39
Este é um tutorial sobre como construir um cronômetro de um minuto usando VHDL e uma placa Basys 3. Esse dispositivo é ideal para jogos em que cada jogador tem no máximo um minuto para fazer sua jogada. O cronômetro exibe com precisão os segundos e milissegundos no display de sete segmentos, começando em 0 segundos e 0 milissegundos, até 60 segundos e 0 milissegundos. Também são usados dois botões: o botão central, usado para iniciar, parar e continuar o cronômetro, e o botão direito, usado para reiniciar o cronômetro. Quando o dispositivo é comparado lado a lado com o cronômetro embutido de um smartphone, a precisão do relógio é perceptível.
Etapa 1: Obter Hardware / Software
1. Placa de treinamento Basys 3 Artix-7 FPGA da Digilent com cabo Micro-USB para USB
2. Vivado 2016.2 Design Suite da Xilinx
Etapa 2: Diagrama de blocos
Este circuito é construído comportamentalmente e usa componentes Xilinx embutidos, mas também pode ser descrito estruturalmente, conforme mostrado pelo diagrama estrutural geral acima. No diagrama, pode-se ver que o circuito é acionado por dois divisores de frequência. Um dos divisores de frequência funciona a 1 centissegundo e aciona o contador catódico que é usado como os números exibidos no display de sete segmentos. O segundo divisor de frequência funciona a 240 Hz e é usado para acionar o contador anódico que gira através dos anodos para que todos os números sejam exibidos corretamente no display de sete segmentos. O codificador pega a lógica do cátodo do contador do cátodo e a lógica do ânodo do contador do ânodo e a codifica para o cátodo e ânodo da saída que executa o display de sete segmentos. A função desse codificador é que a saída do cátodo mude toda vez que a saída do ânodo mudar. A saída do cátodo não pode ser executada independentemente do contador porque os ânodos devem girar nos 4 dígitos separados.
Etapa 3: Módulo de Projeto
Em primeiro lugar, um bloco de processo para CEN é feito de forma que quando um pressionamento de botão for detectado, o ENABLE irá alternar. Isso serve como parada / início do contador catódico.
No próximo bloco de processo, os sinais de relógio de centissegundos e 240 Hz são ajustados de forma que seus respectivos contadores aumentem em 1 toda vez que o relógio interno de 100 MHz atinge uma borda ascendente. Assim que o contador de centissegundos atingir 500000, ele será redefinido para 0. Enquanto isso, o contador de 240 Hz será redefinido quando a contagem atingir 41667.
Para a seção do cátodo do código, se ENABLE for '0', a contagem do cátodo será interrompida. Se o botão de redefinição for pressionado durante esse tempo, todas as contagens serão redefinidas para "0000". Enquanto isso, se ENABLE for '1', a contagem do cátodo continuará até que a contagem do cátodo chegue a 60,00, no qual ele aciona o sinal de parada para '1'. O sinal de parada é direcionado de volta ao bloco de processo CEN e faz com que ENABLE seja '0' enquanto o sinal de parada é '1' e não mudará até que o botão de reset seja pressionado.
Finalmente, o display de sete segmentos é configurado tendo os 4 anodos corretamente conectados com cada um de seus 8 catodos para exibir seus respectivos dígitos 0-9 simultaneamente.
Etapa 4: restrições
Este arquivo de restrições conecta as entradas e saídas especificadas do VHDL nas partes físicas necessárias da placa Basys. Para este projeto, os componentes incluem os quatro ânodos e cada um dos seus oito cátodos para o display de sete segmentos, o relógio interno de 100 MHz, o botão central e o botão direito.
Etapa 5: teste
Depois de concluir o código, você pode programar o FPGA por meio do cabo USB. O display de sete segmentos deve mostrar 0,00. Teste para ver se os botões funcionam pressionando o botão central para iniciar o cronômetro até atingir 60,00 e parar; a qualquer momento, você pode pressionar o botão central novamente para pausá-lo. Assim que estiver em pausa, pode premir o botão direito para repor o cronómetro de volta a 0,00. Se tudo estiver funcionando corretamente, parabéns, você acabou de construir um cronômetro de um minuto!
Recomendado:
Girar areia RELÓGIO a cada minuto usando servo motor - Arduino: 8 etapas
Girar Areia RELÓGIO A Cada Minuto Usando Servo Motor - Arduino: Neste tutorial, aprenderemos como girar um pequeno relógio de areia (1 minuto) a cada 60s usando servo motor e Visuino, Assista a um vídeo de demonstração
Cronômetro digital tudo em um (relógio, cronômetro, alarme, temperatura): 10 etapas (com imagens)
Cronômetro Digital All in One (Relógio, Cronômetro, Alarme, Temperatura): Estávamos planejando fazer um Cronômetro para alguma outra competição, mas posteriormente também implementamos um relógio (sem RTC). À medida que entramos na programação, nos interessamos em aplicar mais funcionalidades ao dispositivo e acabamos adicionando DS3231 RTC, como
O cronômetro de minuto baseado no MCU PIC16F88: 4 etapas
O cronômetro de minuto baseado no PIC16F88 MCU: Vamos dar uma olhada no projeto simples do cronômetro de minuto para iniciantes. O coração do projeto é o MCU PIC16F88 de 8 bits. A hora é mostrada no display de 7 segmentos e o cronômetro é operado usando 6 botões. O dispositivo é alimentado pelo bastão de 9 volts
Cronômetro básico usando VHDL e Basys3 Board: 9 etapas
Cronômetro básico usando VHDL e placa Basys3: Bem-vindo ao instrutivo sobre como construir um cronômetro usando VHDL básico e placa Basys 3. Estamos ansiosos para compartilhar nosso projeto com você! Este foi um projeto final para o curso CPE 133 (Design Digital) na Cal Poly, SLO no outono de 2016. O projeto que construímos
Cronômetro VHDL: 8 etapas (com imagens)
Cronômetro VHDL: Este é um tutorial sobre como fazer um cronômetro usando VHDL e uma placa de circuito FPGA, como uma placa Basys3 Atrix-7. O cronômetro pode contar de 00,00 segundos a 99,99 segundos. Ele usa dois botões, um para o botão iniciar / parar e outro para o