Timer2 Interrupt

Gast #874951
Lesenswert?

Hallo,
habe ein Problem bei meinem Projekt. Hier soll mit dem 80c535 ein 
PWM-Signal erzeugt werden. Wie ich mein Compare Register einstelle ist 
mir klar. Allerdings möchte ich dass beim Timer2 Overflow ein Interrupt 
erzeugen. Habe dazu das ET2 Bit gesetzt. Der Interrupt wird jedoch nur 
einmal ausgeführt. Der Timer startet nach abarbeitung der 
Interrupt-Routine zwar wieder von vorn, allerdings wird bei einem 
Overflow kein Interrupt ausglöst. Welche Bit muss ich setzten, damit 
dies wieder funktioniert? Ich hoffe mir kann jemand dabei weiterhelfen. 
Vielen Dank
#874998
Lesenswert?

user227 wrote:

> Der Interrupt wird jedoch nur einmal ausgeführt.

Vielleicht hast Du den Interrupt nicht mit RETI beendet, dann befindet 
sich die CPU noch im Interruptmodus und kann natürlich keinen weiteren 
Interrupt gleicher Priorität ausführen.


> Der Timer startet nach abarbeitung der
> Interrupt-Routine zwar wieder von vorn,

Nein, der startet direkt nach dem Überlauf bzw. stop garnicht erst.
Wann Du den Interrupt abarbeitest, ist völlig unerheblich.

Dieses Verhalten ist ja gerade der Witz bei Hardware-Timern, daß nämlich 
die Ausführungszeit irgendwelcher Software keine Rolle mehr spielt.


Peter

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren