sexta-feira, 11 de março de 2016

Frequencímetro

Materiais

  • Arduino;
  • Display de LCD 16x2;
  • 2 Potenciometria .

Circuito eletrônico 




Código fonte

/*Frequencímetro com Arduino e LCD

   
blog: http://projetosarduino321.blogspot.com.br/
contado: kleytonxavier31@gmail.com

*/


#include <LiquidCrystal.h> //inclui biblioteca lcd



#define inFreq   2  //entrada para medir a frequência no pino digital 2


// --- Hardware do LCD ---
LiquidCrystal disp(9,8,6,5,4,3);


// --- Variáveis Globais ---
long freq, counter;
int pulseCount;
boolean pulse;



void setup() 
{
  
  pinMode(inFreq,INPUT);    //Configura como entrada
  
  disp.begin(16, 2);        //Display lcd 16 x 2
  disp.setCursor(2,0);      //Posiciona cursor na coluna 3, linha 1
  disp.print("Frequency");  //Escreve no display
  
  pulse = 0x01;             //Seta variável de controle
  
}


// --- Loop Infinito ---
void loop() 
{
  
  counter = millis();      //counter recebe o valor do tempo em ms
  
  if(digitalRead(inFreq)){  //Entrada de frequência em nível alto?
                       
  
    if(pulse) pulseCount++;  //incrementa pulseCount se variável de controle for verdadeira
     
    pulse = 0x00;            //limpa variável de controle

  }
  
  else                     
  {
    pulse = 0x01;          //Seta variável de controle
  }


  if(counter%200 == 0x00) {  //Passaram-se 200 ms?
                         
    freq = pulseCount*4;   //Atualiza frequência (200 x 5 = 1000ms)
    disp.setCursor(5,1);   //Posiciona cursor na coluna 6, linha 2
    disp.print(freq);      //Imprime valor atual da frequência
    disp.print("Hz");      //Imprime "Hz"
    
    pulseCount = 0x00;     //Reinicia contador
  }
  
  


← Postagem mais recente Postagem mais antiga → Página inicial

0 comentários:

Postar um comentário

Copyright © Projetos Arduino 3-2-1 | Powered by Blogger Design by ronangelo | Blogger Template Mais Template