Рабочий код тахометра
Код:
//********************************************************************
unsigned long micros_th;
volatile int tz; //счетчик обнуления
volatile int th; //импульсы тахометра
//********************************************************************
void setup(){
Serial.begin(115200); //инициализация ком порта
attachInterrupt(1, tahometr, RISING); //прерывание тахометра по фронту импульса
}
//********************************************************************
void loop(){
Serial.print (th);
tz = tz - 1;
if (tz == 0){
th = 0;
}
delay(50);
}
//********************************************************************
void tahometr(){ //измеряем частоту на входе тахометра по прерыванию
th=(900000.0/(micros() - micros_th));
micros_th = micros();
tz = 30;
}