Timer Interrupt des 8051 Mikrocontrollers

Zu den wichtigsten Aufgaben eines Mikrocontrollers gehören Steuerungs-, Regelungs- und Messaufgaben.

Sehr häufig müssen in diesen Aufgabenstellungen Zeiten sehr genau eingehalten werden, um zeitkritische Abläufe zu messen und zu steuern .

Aus diesem Grund sind Mikrocontroller häufig mit mehreren Timern ausgestattet, die unabhängig voneinander programmiert werden können.

Bei Ablauf eines Timers wird dann beispielsweise eine Interrupt Service Routine aufgerufen, die so also genau zu dem gewünschten Zeitpunkt zuschlägt. 😉

Heute geht es darum, wie die Timer eines 8051 Mikrocontrollers programmiert werden und welche Register man zur Programmierung benötigt.

Konfiguration eines Timers

Die Konfiguration eines Timer Interrupts ist etwas aufwändiger als beim externen Interrupt.
Im ersten Video zeige ich also zunächst einmal die wichtigsten Register zur Konfiguration eines Timers.

Im zweiten Video zeige ich dann die Konfiguration des Timers und die Programmierung der Interrupt Service Routine am Emulator.

Timer Interrupt Programmierung.flv

Deine Aufgabe

Heute gibt es keine spezielle Programmieraufgabe, in der Du eine bestimmte Aufgabe lösen sollst.

Du solltest Dich aber bis zur nächsten Folge mit dem Timer beschäftigen. So könntest Du beispielsweise das Beispiel nachprogrammieren, oder dieses Beispiel auf den Timer 1 übertragen.

Wichtig ist hierbei, dass Du die zu verwendenden Register kennenlernst. Also: Mit welchem Register gibt man den Timer frei, wie startet man einen Timer, wie schreibt man eine Interrupt Service Routine, usw.

Man muss die Befehle einmal selbst eingetippt haben, die Register einmal selbst gesetzt und gelöscht haben, um ein Gefühl dafür zu bekommen.

Also: Programmiere das Beispiel einmal nach und setze es anschließend für den Timer 1 um.

Die Priority Order für den Timer 1 ist übrigens 3.

Also: void ISR_Timer1(void) interrupt 3

{}

Dieser Artikel ist Teil des Mikrocontrollerkurs auf ET-Tutorials.de.
Hier geht es zurück zur Übersichtsseite des Mikrocontroller-Kurses .

weitere Videos

August 9, 2012

Oktober 6, 2012

September 6, 2010

November 8, 2010

März 24, 2012

März 15, 2010

>