Gast
#39832
geht das hier: TIMSK = 1<<TOIE1; aber das nicht?: TIMSK |= TOIE1; danke, markus
|
Anzeige
|
wieso...
Gast
#39832
geht das hier: TIMSK = 1<<TOIE1; aber das nicht?: TIMSK |= TOIE1; danke, markus
Gast
#39833
Weil Du bei letzterem die 1<< vergessen hast, die ist dort latürnich genauso nötig. Als TIMSK |= 1 << TOIE1; geht es. Wenn Du keinen Wert auf Portabilität zu anderen AVR-Compilern legst, kannst Du auch TIMSK |= _BV(TOIE1); schreiben, das kann gerade dann, wenn die rechte Seite etwas mehr als nur ein Bit umfaßt, bißchen übersichtlicher aussehen (meine Meinung). Logischerweise ist _BV() nichts anderes als das »1 <<«, eben nur schon vordefiniert.
Gast
#39834
mhh versteh ich net so ganz. gehen wir mal davon aus das folgender wert im TIMSK steht: 00000000 und wir das ganze mit 0x07 verodern. dann sollte doch letzendlich 01000000 im TIMSK stehen. code: TIMSK = TIMSK | 0x07; tuts aber nicht :( mit normalen registern gehts ja auch.
Gast
#39835
totaler denk fehler ..:).. sorry hat sich erledigt... Antwort schreiben |
Anzeige
|