OC1A Output Compare wann gesetzt?

Gast #3518206
Lesenswert?
• ▲
▼
Hallo,

ich arbeite mit einem Atmega8 und Timer1 im Output Compare Mode, sodass 
OC1A high oder low gesetzt wird.
Ob high oder low lege ich durch COM1A0 bzw. COM1A1 im TCCR1A fest. Das 
ist soweit auch klar. Aus dem Datenblatt ist mir alles klar, bis auf 
eine Sache.
Was nicht ganz klar ist, ist die Triggerung. Immer wenn der Zählerstand 
(TCNT1) den Wert von OCR1A wird das Output Compare geschaltet. Ist dies 
wirklich nur durch den Vergleich abhängig?
Was ist, wenn ich keinen Interrupt Vektor dazu programmiere und damit im 
Register TIFR das OCF1A gesetzt wird, aber nicht gelöscht (durch 
Ausführung des Interrupts). Wird OCR1A von diesem Interrupt Flag OCF1A 
getriggert oder tatsächlich rein durch den Vergleich von Zählerstand und 
Comparematch-Wert?

Danke.

LG
Sven
Gast #3518215
Lesenswert?
• ▲
▼
IF und Output sind 'normalerweise' völlig unabhängig.
So kann man den output nutzen ohne recourcen für IRQs zu opfern, oder 
eine TimeX_IRQ mit dem OC IRQ machen ohne tatsächlich den OC Output 
dafür zu nutzen.

Also:
Wenn aktiviert setzt compare match output und IF.
IF bleibt bis Du was damit machst, aber IF setzt nicht Output.

Würde mich sehr wundern wenn das beim ATmega8 anders wäre.

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

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.