Um den Nebel etwas zu lichten: Es gibt verschiedene Quellen für Interrupts. Eine dieser Quellen, die hier verwendete, ist eine Übereinstimmung der Output-Compare-Einheit von Timer 2. Aus der Konfiguration von Timer 2 (Vorteiler und Vergleichswert) ergibt sich das Zeitintervall zwischen zwei Übereinstimmungen, und mit der entsprechenden Frequenz wird dann die entsprechende ISR auch aufgerufen. Die ISR zählt die Variable, auf die die sleep-Schleife wartet, hoch. Damit kann sleep also erst beendet werden, wenn die ISR time Mal aufgerufen wurde.
mfG
Markus
Lesezeichen