cambiamonete problema con impulsi da lettore banconote

Beh, intanto che ci sei, prova pure questo

const byte coinSelectorPin = 3;
volatile byte coinPulseCount = 0;
volatile unsigned long pulseTime;
volatile unsigned long pulseTimeA;

void setup()
{
  Serial.begin(9600);
  pinMode(coinSelectorPin, INPUT_PULLUP);
  attachInterrupt(digitalPinToInterrupt(coinSelectorPin), coinacceptor, FALLING);
}

void loop()  {
  if (coinPulseCount == 40 )  // 40 impulsi
  {
    Serial.print("milliSec  ");
    Serial.println(pulseTime - pulseTimeA);
    coinPulseCount = 0;
  }
}

void coinacceptor() {
  if (coinPulseCount == 0 ) {
    pulseTimeA = millis() ;
  }
  coinPulseCount++;
  pulseTime = millis() ;
}