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?
Hi
>Ist dann der Wert im TCNT1 auf 0 oder noch auf xyz?
XYZ.
MfG Spess
@ 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.
Hi
>Ist das irgendwo im Datenblatt ersichtlich?
In den Datenblättern steht nicht drin, das TCNT gelöscht wird. Ergo
wird TCNT nicht gelöscht.
MfG Spess
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.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.