AVR Compare Match OC1A Pin bei 2 gleichzeitigen Interrupts Verständnis

Gast #2861691
Lesenswert?
• ▲
▼
Hallo zusammen,

ich habe eine Frage, die sich mir aus dem Datenblatt nicht ganz 
erschließt.
Ich betreibe einen AVR ATmega8 Prozessor und verwende hauptsächlich 2 
Interrupts:
- Input Capture Interrupt
- Compare Match Interrupt

Bei letzterem ist die Konfiguration so, dass das COM1A1-Bit gesetzt ist, 
d.h. bei einem Compare Match wird der Port PB1 (OC1A) auf high gesetzt.

Was passiert nun, wenn beide Interrupts theoretisch gleichzeitig 
auftreten?
Welches wird zuerst ausgeführt? Soweit ich weiß, hat der AVR ja keine 
Interrupt Priorisierung oder geht es dann nach S. 46 Tabelle 18 im 
Datenblatt?

Angenommen beides tritt gleichzeitig auf, das Input Capture Interrupt 
wird zuerst ausgeführt (meinetwegen tritt dieses Ereignis 1 Takt zuvor 
ein, also nahezu gleich). Wird beim Erreichen des Compare Matches OC1A 
(was ja unmittelbar direkt 1 Takt später erfolgt oder ggf. direkt 
gleichzeitig) trotzdem direkt auf high gesetzt oder erst wenn das ICP 
Interrupt Vektor ausgeführt und der darin enthaltene Code abgearbeitet 
wurde und erst an dessen Anschluss der Compare Match Interrupt Vektor 
angesprungen wird?

Also die Frage ist, wird es direkt beim Erreichen des Timer Wertes OC1A 
gesetzt oder erst wenn der dazugehörige Interrupt Vektor angesprungen 
wird?

Danke.
Gast #2861706
Lesenswert?
• ▲
▼
Hi

>Welches wird zuerst ausgeführt? Soweit ich weiß, hat der AVR ja keine
>Interrupt Priorisierung oder geht es dann nach S. 46 Tabelle 18 im
>Datenblatt?

Datenblatt S.14:

The complete list of Vectors is shown in “Interrupts” on page 46. The 
list also
determines the priority levels of the different interrupts. The lower 
the address the higher is the priority level.

MfG Spess

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 14 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.