Clock Select Bits auf 0 - Ist nun Timerwert 0?

OP #1865458
Lesenswert?

Ich verwende den ATtiny45:
http://atmel.com/dyn/resources/prod_documents/doc2586.pdf
Alle Infos zum Timer/Counter 1 ab Seite 86.

Wenn ich den Timer/Counter 1 anhalte, indem ich die CS-Bit im TCCR1 alle 
auf 0 setze, wird dann der Wert des Timer gelöscht, oder bleibt der im 
TCNT1 gespeichert, bis ich den Timer wieder laufen lasse?
Mit anderen Worten:

Nach der Zeile:

TCCR1 = (TCCR1 & 0xF8);      // Timer wird angehalten


Ist dann der Wert im TCNT1 auf 0 oder noch auf xyz?
#1865461
Lesenswert?

@  Thomas B. (thomas1)

>Wenn ich den Timer/Counter 1 anhalte, indem ich die CS-Bit im TCCR1 alle
>auf 0 setze, wird dann der Wert des Timer gelöscht,

nein.

>oder bleibt der im TCNT1 gespeichert, bis ich den Timer wieder laufen lasse?

ja.

>Ist dann der Wert im TCNT1 auf 0 oder noch auf xyz?

xyz.
#1865501
Lesenswert?

Du kannst statt
1
TCCR1 = (TCCR1 & 0xF8);      // Timer wird angehalten
auch
1
TCCR1 &= 0xF8;
schreiben, das ist genau das gleiche, nur eine andere Schreibweise. Und 
am besten benutzt du gleich die vordefinierten Bit-Bezeichner:
1
TCCR1 &= ~((1<<CS12) | (1<<CS11) | (1<<CS10));
Das ist die übliche Schreibweise für AVR-GCC und erleichtert das 
Verständnis des Codes auch, wenn man gerade das Datenblatt nicht zur 
Hand hat.

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