Ein Timer besteht aus einem programmierbaren (voreinstellbaren)
Rückwärts-Zähler mit eigenem, vom Prozessor unabhängigen,Takt. Der Takt kann über Steuerregister freigegeben bzw. gesperrt werden.Der aktuelle Zählerstand kann jederzeit von der CPU ausgelessen werden.Bei Zählerstand 0 wird ein maskierbarer Interrupt erzeugt.Der Timer hat in der Regel mehrere Modi:
Rechteckgenerator: Beim Erreichen des Zählerstandes 0 wird ein Interrupt erzeugt und automatisch wieder der Startwert geladen. Somit erfolgt ein Interrupt in regelmäßigen Zeitabständen.
One-Shot: Nach Erreichen des Zählerstandes 0 wird ein Interrupt erzeugt und dann bleibt der Timer inaktiv, bis wieder ein Startwert geladen wird.
Frequenz- oder Periodendauermessung: Der Interrupt erfolgt, wenn die Freqenz bzw. Periodendauer eines an einem externen Eingang angelegten Signals längerdauert, als die Timerperiode. Durch Variation des Startwertes kann die Frequenz bzw. Periodendauer gemessen werden.
Rechtecksignal mit variablem Tastverhältnis I und andere ...
Anwendungen:
Erzeugen von Interrupts in festen Zeitabständen
Rechteckgenerator mit programmierbarer Frequenz
Monoflop mit programmierbarer Zeit
Pulsweiten-Modulation
"Watch-Dog" (Reseterzeugung, wenn nicht regelmäßig per Softwarenachgetriggert wird automatisches Rücksetzen bei Störungen)