Hallo,
wenn er im gesamten Sketch Timer 0 gegen Timer 1 getauscht hat, passiert
gar nichts, rein absolut nichts. Nur seine Timer Initialisierung sollte
er nochmal überdenken. Mit Register-Veroderung anfangen ist selten gut.
Hier lautert die echte Falle.
Ich lösche bei der Initialisierung grundsätzlich immer zuerst TCCRnB.
Damit ist der Timer gestoppt und kann keinen weiteren "Unsinn" machen.
Auch setze ich die Prescaler erst ganz zum Schluss der Initialisierung.
Ansonsten würde er zu zeitig loslaufen mitten in der noch
unvollständigen Konfiguration. Alle Bits der anderen Register werden
Zeilenweise verodert, dann kann man weniger Blödsinn machen. Schon rein
optisch wegen. Außer man möchte jedes Bit kommentieren. Aber selbst da
fängt man ohne Veroderung an.
1 | TCCR1A = (1<<COM1B1) // Kommentar
|
2 | | (1<<WGM11) // Kommentar
|
3 | | (1<<WGM10) // Kommentar
|
4 | ;
|
Man darf auch nicht vergessen Register zu löschen die man selbst gerade
nicht benötigt, z.Bsp. TIMSKn.