Zitat Zitat von Hanni
Zitat Zitat von cipoint
Ist das programmiertechnisch und stilistisch richtig?
Anstatt:
Code:
   ldi temp, 0b00000001
   out TCCR0, temp   

   ldi temp, 0b00000001
   out TIMSK, temp
würde ich in dem Teil das folgende schreiben:
Code:
   ldi temp, (1<<CS00)
   out TCCR0, temp   

   ldi temp, (1<<TOIE0)
   out TIMSK, temp
Das ganze ist meiner Ansicht nach vor allem besser lesbar.
Aber wenn ich CS00, CS01 und CS02 manipulieren will, und zwar getrennt voneinander? Bleibt mir da nur die Möglichkeit, den kompletten Register auszulesen, mit OR oder AND zu bearbeiten und zurückzuschreiben?
Für I/O Register gibt es ja sbi und sbi. Und für "normale" Register?