METRON – METRÔNOMO SIMPLES COM PIC 16F628A

Para os que gostam de música, o uso de um metronomo é essencial para um bom aprendizado de tempos musicais. Tem muitas versões ‘on-line’, com excelente desempenho e facilidades. Mas , se seu computador está sendo compartilhado com outros? Foi por isso que resolvi criar este projetinho, que poderá ter seu uso ‘stand alone’ ou seja, sem necessidade de um PC , (para alegria do restante da familia). Quer saber mais….

Veja o esquema abaixo:

Trata-se de um equipamento bem simples, com um visor com 3 display de 7 seguimentos, sendo multiplexados para ganhar pinos do PIC. A temporização correspondente as batidas por minutos, é obtida a partir de tabelas com valores obtidos através de cálculos matemáticos (para facilitar tantos cálculos, usei um pequeno programa em Visual Basic, para evitar ‘ a fadiga’).
Possui 2 botões para controlar o número de batidas por minutos. O botão ‘up’ incrementa o mostrador e o botão ‘down’ decrementa. Se forem apertados por mais de 3 segundos, irão para a função ‘rápido’, para facilitar o ajuste. Para obter o som, é usado um pequeno altofalante ( do tipo de radinho de pilhas), com dois transistores em par complementar como amplificador de saida. Foi colocado mais um transistor para acionar um led em estilo de ‘flash’ a cada batida. A indicação visual também ajuda muito, complementando o som.
Foi usado a interrupção do timer 1 para obter tempos de multiplexação dos displays e para gerar os tempos entre batidas. O timer 0 foi usado para desligar a saida de som em intervalo predeterminado. A alimentação pode ser obtida de uma fonte externa de 9 a 12 volts ou diretamente de um carregador de celular com tensão de 5 volts . Pode-se usar 4 pilhas AA com um diodo em série.
Trata-se de um protótipo, sendo montado em protoboard apenas. A faixa de uso vai de 40 a 250 batidas por minuto.

Segue abaixo o arquivo ASM:

METRONOMO_ASM

Segue abaixo o arquivo HEX:

METRONOMO_HEX

Segue abaixo o código para o Visual Basic, que gera as tabelas tab_1 e tab_2:

VB_CALCULAR_TABELA

Até o próximo artigo!!!

Links técnicos:

datasheet Pic16f628a

Curiosidades:
hydraulus
Instrumentos Musicais A.C.
Universo cheio de surpresas
Universo – obra do acaso?
Nosso inigualável sistema solar
Mapeamento do céu
Qual a origem do universo e a vida?
Ponte da Torre – Entrada para Londres
O planeta vivo

Outros assuntos:
Quatro dicas para lidar com problemas financeiros e dívidas
Como lidar com sucesso com os sogros
Como reagir a um assédio sexual
Como parar de adiar as coisas

27 comments on “METRON – METRÔNOMO SIMPLES COM PIC 16F628A

  1. amigo é masi oumenos isso , pode ser com 1 digito de 0 a 9 , este ci tda trabalha com variação de tensão de 0a 5 V , o que eu faço no caso se eu quizese usar um controle ht6p20b , para fazer sata função volume e mute usando os 3 botões .

    1. Olá Liliano!
      Normalmente, usamos controle remoto por infravermelho para controlar funções de aparelhos de som. Qual o motivo que você deseja fazer por RF?
      Claudio

  2. é muito verdade , mas tenho pouco tempo e certos circuitos testo antes mas ja tive problemas com o proteus , pois simulava e não funcionava ai na pratica dava certo , mas eu queria usar este projeto seu para outra finalidade , o que tenho que mudar para ele virar um controlador de volume , eu ia utilizar o display como mostrador , os botões para volume + e – , o problema é que teria que ter uma saida que variasse a tensão de 0V a 5V , pois iria usar o tda8199 para controlar o audio , sei que vc é fera e sabe como fazer . abraço e muito sucesso

    1. Olá Liliano!
      Não sei se usar o Asm do Metron facilitaria. Acho que seria melhor fazer um projeto novo, especifico para isto. O que você quer, que eu entendi, é usar um botão para aumentar o volume e outro para reduzir, sendo apresentado no display de 2 digitos (1 digito), o valor do volume ( de 0 a 99 em 2 digitos???? De 0 a 9, em 1 digito ????). A saida seria um possível sinal PWM, de 0 até 5 volts, mas que teria que ser bem tratada para não atrapalhar o funcionamento do ci TDA8199. Ou opcionalmente, pode se usar uma rede 2RC para gerar as escalas de tensão, já não precisando tratar esta saida. O valor precisaria ser salvo em EEprom ao desligar??? Onde seria usado este controle de volume, visto que a maioria dos equipamentos comerciais já vem com controles de volume digitais (com raras excessões)?
      Cláudio

  3. ola amigo , sobre este projeto do metronomo , montei o circuito no proteus mas o 3 displays ficam acesos 888 , os botões não operam e o audio não sai , com a finalidade de ajudar as pessoas que forem montar gostaria de saber , sera que tem a ver com a frequencia do oscilador , a multiplexação ta funcionando certo ? , ou apenas um problema de simulação do proteus peço sua ajuda para rever o projeto pois tenho intenção de montar o circuito mas gosto de simular antes , obrigado e perdoe minhas perguntas como te disse sou leigo em programação mas bem pratico em montagens , gosto muito de desafios igual a vc e por isso estou procurando aprender assembler para te pertubar um pouco menos rrsrs , abraço .

    1. Olá Liliano!
      Eu fiz apenas a montagem em protoboard com componentes reais. Não uso proteus para desenvolvimento, porque tem circuitos que não consigo faze-lo funcionar. Para não perder tempo, vou na montagem física (mais divertido).
      Claudio

  4. oi claudio , em relação a porta serial do pc , está funcionando certo pois uso o ic-prog e funciona certinho .
    eu até procurei na internet um circuito simples para acender um led ( li em seu post do gravador de avr ) mas só achei o código fonte do programa , mas não consegui compilar ( só sei compilar .asm e .c ) . é muito complicado o atmega8 .
    mas na hora de gravar ,eu acho que o pony prog grava certo pois quando gravo sem o atmega ele dá erro e com ele não dá erro . to achando agora que é essas palavras de configurações ou estou travando esses atmegas que tenho sem saber .

    1. Ola Michael! Se você consegue ler o chip com o PonyProg é sinal que não está travado. Quando você programa um Hex no chip, o PonyProg confere no final, se houve erros de gravação. Se não houve mensagem de erro, é sinal que gravou bem. Quanto a palavra de configuração, a maioria dos arquivos Hex já vem definido corretamente a palavra de configuração de forma embutida, exceto se o autor pedir para configurar manualmente. Pode estar ocorrendo erro na montagem fisica . Tente comparar o esquema com a montagem a procura de erros.
      Claudio

  5. olá claudio , lembra que te perguntei sobre um circuito de joystick usb . achei alguns mas me interessei por este aqui :

    http://vusb.wikidot.com/project:mamepanel

    sendo que montei , gravei com o programador de atmega 8 que você postou e não funcionou .

    to achando que estou gravando errado , uma configuração do pony prog 2000, ou alguma ligação que ficou faltando , não sei mais o que fazer .

    tem como você dar uma olhada no circuito e me ajudar ??

    montei o circuito da pasta V-USB_Mame_Panel_Atmega8 .

    1. Olá Michael! Sugiro que primeiro voce confira se o gravador que voce fez está funcionando corretamente. Para isto, monte um circuito simples do tipo “acende um led em uma porta” (de preferencia, pegue um na internet) e tente envia para o chip. Se funcionar, passe a analizar o seu circuito ou seu software. Nos AVR, a maioria das vezes ocorre problemas com as palavras de configuracões, que são muitas. Se voce nunca usou nada ligado a serial do seu PC, verifique se não precisa de algum programa para liberar as portas para os programadores como IC-Prog,Winpic e Ponyprog ( o Windows impede o uso das portas por outros programas ).
      Cláudio

Comments are closed.

Back To Top