Hallo,

Eine Frequenzmessung wird im unteren Bereich recht ungenau oder du brauchst eine lange Torzeit!

Vernünftiger ist es die Periodendauer zu messen.

MfG Peter(TOO)

- - - Aktualisiert - - -

Den Timer kann man so konfigurieren, dass er den Zählerstand über einen Eingang per Hardware speichert. Es spielt dann keine Rolle wie lange die Zeitverzögerung bis zur Abarbeitung der ISR dauert. Diese Zeit geht nicht in die Messung ein.

Die Zeit bis die ISR aufgerufen wird ist nicht konstant. Grundsätzlich hängt sie vom gerade aktuellen Befehl ab. Dieser wird zuerst abgearbeitet. Einzelne Befehle können aber sehr viele Takte benötigen.
Treten Interrupts gleichzeitig auf, kommt der mit der höchsten Priorität zuerst dran. Werden Interrupts von dieser ISR nicht frei gegeben, kommt der nächste erst dann dran, wenn diese ISR fertig ist.

Das nächste ist noch, dass man überall im Programm die IRQs sperren kann. Sowas braucht man manchmal.

Die Timerhardware ist davon aber nicht betroffen.