CTC Mode - Vergleichswert ändern

Gast #2741992
Lesenswert?

Hi,

ich habe eine Frage zum CTC-Modus der AVRs. Und zwar benutze ich den 
Timer in meinem Rahmen, um zwischen einem Backpuffer und einem 
Frontpuffer zu wechseln. Der Frontpuffer wird dann ausgegeben. Effektiv 
kann ich damit die Bilder pro Sekunde steuern. Das funktioniert auch 
wunderbar.

Jetzt möchte ich verschiedene Animationen anzeigen können und dabei 
jeweils die Bilder pro Sekunde variieren. Dafür muss ich den 
Vergleichswert für den CTC-Modus dynamisch zur Laufzeit verändern. Gibt 
es dafür ein sich bewährtes Vorgehen?

Nach meinem Verständnis des Datenblatts sind die OCRxn Register im 
CTC-Modus nicht doppel-gepuffert. Dadurch kann es dann zu einem "Glitch" 
kommen, wenn der neue OCRxn Wert kleiner als der alte ist, und sich der 
Zähler zwischen dem neuen und alten Wert befindet. Dann muss der Zähler 
einmal "überlaufen".

Jetzt habe ich mir gedacht, dass ich erst den neuen OCRxn Wert setze, 
und anschließend den Zähler TCNTn auf 0 setze. Ich bin mir nur nicht 
sicher, ob dass jetzt in jedem Fall "richtig" ist, oder ob ich etwas 
übersehe?

Wie handhabt ihr so etwas?

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