RuiViana

Medidor_de_Fluxo

Jul 9th, 2016
176
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. float vazao = 0;                            //Variável para armazenar o valor em L/min
  2. unsigned long contaPulso;                   //Variável para a quantidade de pulsos                            //Variável para contagem
  3. unsigned long time = 1000;
  4. //-----------------------------------
  5. void setup()
  6. {
  7.   Serial.begin(9600);                        //Inicia a serial com um baud rate de 9600
  8.   pinMode(2, INPUT);
  9.   attachInterrupt(0, incpulso, RISING);      //Configura o pino 2(Interrupção 0) para trabalhar como interrupção
  10.   time = millis();                           // Define tempo inicial
  11. }
  12. //-----------------------------------
  13. void loop ()
  14. {
  15.   if (millis()  > (time +1000))             // Faça a cada segundo
  16.   {
  17.     vazao = contaPulso / 5.5;                //Converte para L/min
  18.     Serial.print(vazao);                     //Imprime na serial o valor da vazão
  19.     Serial.println(" L/min ");               //Imprime L/min
  20.     time = millis();                        // Restaura time
  21.     contaPulso = 0;                         // zera contagem de pulsos
  22.   }
  23. }
  24. //-----------------------------------
  25. void incpulso ()
  26. {
  27.   contaPulso++;                              //Incrementa a variável de contagem dos pulsos
  28. }
RAW Paste Data