Forum: Mikrocontroller und Digitale Elektronik ATMEGA8, Timer1, Mode 1,2,3 vs. 11


von Tino K. (blumengiesser)


Lesenswert?

Ich komme grad beim Mega8 und dem Timer1, also PWM, nicht ganz hinter 
den Unterschied zwischen den Modi 1,2,3 und dem Modus 11. Sprich Phase 
Correct PWM mit den 8,9 oder 10 bit Werten für den TOP Zählzustand für 
Modi 1,2,3 und dem OCR1A Wert für TOP bei Modus 11. Sprich der Timer 
interagiert mit dem OC1x Pin (clear oder set) doch immer bei Match mit 
OCR1A. Wenn dies gleichzeitig für den TOP Wert genutzt wird, dann kann 
man doch das PWM Signal gar nicht mehr verändern? Oder habe ich das 
falsch verstanden oder soll das etwa so?

von Karl H. (kbuchegg)


Lesenswert?

Tino Kühn schrieb:

> dann kann
> man doch das PWM Signal gar nicht mehr verändern? Oder habe ich das
> falsch verstanden

Das hast du schon richtig verstanden.

> oder soll das etwa so?

Es gibt ja auch noch den OCR1B

von Tino K. (blumengiesser)


Lesenswert?

Karl Heinz Buchegger schrieb:
> Tino Kühn schrieb:
>
>> dann kann
>> man doch das PWM Signal gar nicht mehr verändern? Oder habe ich das
>> falsch verstanden
>
> Das hast du schon richtig verstanden.
>

OK, und wozu benutzt man diese Betriebsart?


Was ich auch noch nicht ganz kapiert habe, was der Unterschied zwischen 
dem Phase Correct und Pase + Frequency Correct ist. Das Setzen und 
clearen von OC1x erfolgt immer beim Match mit OCR1x. Ich habe nur 
gelesen, daß das Verhalten anders ist wenn OCR1x auf TOP gesetzt wird. 
Da bleibt der Ausgang dann beim Pase + Frequency Correct auf low/high 
(inverting/ non-inverting) wenn der Zähler wie grad beschrieben TOP 
erreicht und OCR1x auf TOP gesetzt ist. Richtig? Oder gibs noch mehr?

von Karl H. (kbuchegg)


Lesenswert?

Tino Kühn schrieb:
> Karl Heinz Buchegger schrieb:
>> Tino Kühn schrieb:
>>
>>> dann kann
>>> man doch das PWM Signal gar nicht mehr verändern? Oder habe ich das
>>> falsch verstanden
>>
>> Das hast du schon richtig verstanden.
>>
>
> OK, und wozu benutzt man diese Betriebsart?

irgendein Register muss die Obergrenze festlegen.
Und soviele hat man da nicht zur Auswahl.
Immerhin gibt es 2 Möglichkeiten
  entweder du gibst ICR1 auf und benutzt das als Top Wert (Modus 10)
  oder du gibst OCR1A auf und benutzt dieses als Top Wert (MOdus 11)

Je nachdem, ob du ICR1 oder OCR1A nicht verwendest, hast du die Wahl.
(ICR1 ist das Input Capture Register. Musst du also mit dem Timer 1 
gleichzeitig noch ein Signal ausmessen, dann kannst du ICR1 nicht als 
Top Wert nehmen. Also bleibt dann nur OCR1A, mit dem Nebeneffekt, dass 
du damit auch eine PWM aufgeben musst.)

> Was ich auch noch nicht ganz kapiert habe, was der Unterschied zwischen
> dem Phase Correct und Pase + Frequency Correct ist.

1
It is recommended to use the Phase and Frequency Correct mode instead
2
of the Phase Correct mode when changing the TOP value while the
3
Timer/Counter is running. When using a static TOP value there are
4
practically no differences between the two modes of operation.
1
The main difference between the phase correct, and the phase and
2
frequency correct PWM mode is the time the OCR1x Register is updated
3
by the OCR1x Buffer Register,

Datenblatt Mega8, Seiten 91, 92

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.