TINY VOLT-AMMETER – VOLTIMETRO E AMPERIMETRO C/ PIC 12F675 E LCD (REF220)

3

Facilitando as medições de tensão e corrente em um único LCD…

Esta montagem une o voltímetro publicado no artigo “TINY VOLTMETER – VOLTIMETRO CC COM PIC 12F675 E LCD (REF218)” com o amperímetro do artigo “TINY AMMETER – AMPERíMETRO CC USANDO PIC12F675 E LCD (REF219)”, fazendo que ambas leituras sejam feitas em um único LCD 16×2. Veja como ficou o esquema elétrico mostrado abaixo:

O usuário pode escolher a escala do voltímetro por alterar no arquivo “C” a opção que desejar e recompilar. Também deverá substituir o resistor de entrada (Rin) por um de valor correspondente para a faixa máxima selecionada.
A calibração é feita comparando as leituras desta montagem com um voltímetro padrão. Se houver diferença, deverá ajustar no potenciômetro (trimpot) de 10K.
Com respeito as leituras de corrente, poderá medir até 10 Amperes com o uso de um “shunt’ de 0,47 ohms (50 w).
Para calibrar o amperímetro, deverá colocar o jumper na posição de programação, unindo os pontos 1 e 2 mostrado no esquema. Depois, deverá apertar o botão “CALIBRAR” até aparecer a mensagem “Calibrar Amp:”. Apertando no botão “UP” irá incrementar lentamente o valor medido. Já o botão “DOWN” para reduzir o valor da leitura também lentamente. Após ajustar, aperte novamente o botão “CALIBRAR” para sair deste modo de programação. Coloque o jumper para a posição normal de leitura, unindo os pinos 2 e 3.
A fonte de alimentação deverá ser de 5 volts bem regulados, podendo ser usado fontes tradicionais ou mesmo pilhas em série. Obs. Esta montagem é experimental, sendo de caráter mais didático, montada apenas em placa experimental (do tipo Protoboard), sujeita a bug’s ainda não detectados. Está sendo fornecido os arquivos para que cada hobista possa alterar o programa segundo suas necessidades.

Segue pasta zipada com os arquivos da montagem:

Tiny_Volt_Ammeter_files

Manuais:

PIC 12F675

Curiosidades:

Você pode melhorar sua saúde
O mergulhão-do-norte — uma ave que encanta
O Dicionário Assírio — 90 anos de trabalho
O Cáucaso — a “montanha das mil línguas”
O segredo da borboleta bela-dama
A capacidade de armazenamento do DNA
Os desafios da menopausa

Outros assuntos:

Podemos confiar nos noticiários?
O que preciso saber sobre sexting?
Sou um fracasso?
O sofrimento precisa acabar
Quem são meus verdadeiros amigos?
Por que evitar a ostentação?
Como posso lidar com o estresse?
O impacto das notícias em seus filhos
Como vencer a obesidade infantil
Os perigos da impaciência

Vídeos:
Vejo a vida com as mãos
Quem é o Autor da Bíblia?
Será que é amor ou paixão?
Tenha mais paciência
Fale a verdade
Eu me cansei das religiões

Até o próximo artigo!

3

12 comentários sobre “TINY VOLT-AMMETER – VOLTIMETRO E AMPERIMETRO C/ PIC 12F675 E LCD (REF220)

    1. 0

      Olá Gladiel!
      O hex postado para a montagem ref220 está funcional. O erro citado nos comentários é em decorrência da versão do CCS C compiler usado na hora de compilar, especialmente quando deseja alterar alguma coisa no programa, para adaptar a alguma necessidade.
      A versão 3.200 aceita e compila a linha de código:
      printf(env_lcd_d(“Tiny VoltAmmeter”));
      As versões mais novas não aceita tendo que optar por:
      printf(env_lcd_d”Tiny VoltAmmeter”);
      Algumas versões mais modernas exigem também que se designe os bits que poderiam ser usado para uma saída serial rs232.
      Lembrando que os sistema de multiplexação usado no LCD (Lplex) não funcionará em simuladores de circuitos como o Proteus. Talvez em suas versões futuras.

      Cláudio

  1. 0

    Olá Larios!
    Estava tendo erro 132 ao recompilar o fonte, uso o
    CCS C Compiler v.5.015,segui sua dica no post mais abaixo,
    mas não consegui resolver, então pesquizando, encontrei a solução, segue abaixo como foi resolvido.

    =======================================
    Código Original
    Linha 247 printf(env_lcd_d(“Tiny VoltAmmeter”));//mostra o nome
    Linha 248 env_lcd_c(0xc0);//linha 2
    Linha 249 printf(env_lcd_d(“Larios.Tecnol.Ws”));// o blog

    Linha 266 if(f_cal){env_lcd_c(1); env_lcd_c(0x81); printf(env_lcd_d(“Calibrar Amp:”));}

    =======================================
    Código Corrigido, compilando 100%
    Linha 247 printf(env_lcd_d”Tiny VoltAmmeter”);//mostra o nome
    Linha 248 env_lcd_c(0xc0);//linha 2
    Linha 249 printf(env_lcd_d”Larios.Tecnol.Ws”);// o blog

    Linha 266 if(f_cal){env_lcd_c(1); env_lcd_c(0x81); printf(env_lcd_d”Calibrar Amp:”);}
    =======================================

    (Removido parentesis () dos nomes: Tiny VoltAmmeter, Larios.Tecnol.Ws e Calibrar Amp: )
    Isto funciona no CCS C Compiler v.5.015, para outras versões não posso afirmar.

    Larios, fico muito agradecida por você ter este Blog, com
    excelentes projetos, onde compartilha conhecimento, e soluções.

    Obrigada!.

    Milene

    .

    1. 0

      Olá Milene!
      Muito obrigado por compartilhar a solução a um problema encontrado. Já notei que conforme a versão usada do CCS C, algumas coisas mudam. Com certeza esta dica ajudará outros colegas que estão passando pelo mesmo problema. Por favor, continue dando mais dicas se tiver.

      Cláudio

    1. 0

      Olá Milene!
      É o lcd tradicional que pode ser configurado para envio em 8 ou 4 pinos. Eles tem de 14 a 16 pinos, conforme o esquema mostra. Já os lcd seriais, em geral, tem apenas 3 ou 4 pinos.
      Cláudio

  2. 0

    larios me dar um dica pois nao consigo copilar este programa da erro nessa parte

    printf(env_lcd_d(“Tiny VoltAmmeter”));//mostra o nome
    env_lcd_c(0xc0);//linha 2
    printf(env_lcd_d(“Larios.Tecnol.Ws”));// o blog

    meu copilador c copile ide pic c copile.

    1. 0

      Olá Morais!
      Você está usando qual compilador? CCS C Compiler? Quais erros estão sendo gerados?
      Poderá fazer o printf de forma manual, escrevendo:
      env_lcd_d(‘T’);
      env_lcd_d(‘i’);
      env_lcd_d(‘n’);
      env_lcd_d(‘y’);
      env_lcd_d(‘ ‘);
      env_lcd_d(‘V’);
      env_lcd_d(‘o’);
      env_lcd_d(‘l’);
      env_lcd_d(‘T’);
      env_lcd_d(‘A’);
      env_lcd_d(‘m’);
      ……

      Cláudio

  3. 0

    Estimado, Claudio Larios.
    Passei para deixar uma palavra de agradecimento.
    É louvável a sua obra(…) criatividade aliada ao profissionalismo, dedicação e uma elevada generosidade por todo o conhecimento que nos tem transmitido.
    Deus o abençoe e proteja sempre.
    Obrigado,
    M.Mota

    1. 0

      Olá Manuel!
      Meus sinceros agradecimentos a você por gentilmente enviar este comentário de apreço ao serviço prestado pelo blog. Acredito que compartilhar conhecimento adquirido seja bom para todos.

      Cláudio

Deixe uma resposta