Go Down

Topic: Problema com attachInterrupt() dentro da classe (Read 468 times) previous topic - next topic

LucasPhill

Olá galera!
Estou com um problema com attachInterrupt() em chamar a função que esta logo abaixo, ambos dentro da classe:

Code: [Select]
class Estacao
{
  public:
  void anemometroPin(int pinoAne);

          double  velVento();
  void anemometerClick();
   
  private:
          int pinoAne;
};


e as funçoes:

Code: [Select]
void Estacao::anemometroPin(int pinoAne)
{
int pino1 = 0;
pino1 = pinoAne;
pinMode(pino1, INPUT);
attachInterrupt(pino1,anemometerClick(),FALLING); //Quando a tensão cai (FALLING) no pino (pino1) executa a função anemometerClick()
}

void anemometerClick()
{
long thisTime=micros()-anem_last;
anem_last=micros();
if(thisTime>500)
{
anem_count++;
if(thisTime<anem_min)
{
  anem_min=thisTime;
}
}
}


Esta função faz a contagem de tempo em relação ao numero de clicks. Como eu poderia fazer este código funcionar? E chamaria ele no Setup()? Agradeço desde já!

bubulindo

Attachinterrupt pede uma função...

Tu estás a passar um método.  Parece a mesma coisa, mas não é.

This... is a hobby.

Go Up