int pinEncoder=2;
long giri=0;  // corrente
long giri0=0; // precedente
long giri_dt=0;  // giri fatti nel dt
long giri_dt0=0;  // giri fatti nel dt precedente
long dt_giri= 2000;  // intervallo per valutare giri fatti

void setup() {
  Serial.begin(9600);
    attachInterrupt(digitalPinToInterrupt(pinEncoder),contaGiri,FALLING);
    //pinMode(salida_conmutacion_mosfet,OUTPUT);  
}


long t0=0;

void loop() {
  
  long dt=millis() - t0; 
  if (dt> dt_giri) {
    t0= millis(); 
    
    float rpm= (1000.0* giri_dt / dt_giri)*60;
    
    //if (giri_dt != giri_dt0) {
      giri_dt0= giri_dt;
      Serial.println(rpm); 
    // }

     giri_dt= 0;  // azzero giri fatti nel dt
   };

}

void contaGiri() { giri++; giri_dt++;}