mit diesen Sketch bekomm ich auch (handgedrückte) kleinere Werte z.B. 60, 100, 110:
unsigned long myTimeDZMImpuls = 0;
unsigned long myTimeZeitIm = 0;
double Drehzahl = 0;
unsigned int impulszz = 0;
unsigned int zeitimpuls = 0;
void ImpulsLesen() {
if (micros() - myTimeDZMImpuls > 2) {
impulszz = impulszz + 1;
myTimeDZMImpuls = micros();
}
}
void setup() {
pinMode(3, INPUT);
attachInterrupt(digitalPinToInterrupt(3), ImpulsLesen, FALLING);
Serial.begin(115200);
}
void loop() {
if (impulszz > 1610) {
zeitimpuls = millis() - myTimeZeitIm;
Drehzahl = (60000 / zeitimpuls);
Drehzahl = Drehzahl * 10;
Serial.println(Drehzahl);
impulszz = 0;
myTimeZeitIm = millis();
}
}