Zitat Zitat von toeoe
Aber eine Frag hab ich noch zu dem Programm TwinAVR: Da steht ja nun "AVR Clock 4000 KHz", das sind ja 4 MHz, oder? Heißt das, dass mein Chip auf 4 MHz läuft? Aber eigentlich hat mein Chip doch 16 MHz, wenn ich mich noch recht erinner? Wann muss ich denn dort ne höhere Zahl einstellen?

Und dann noch eine Frage zu den Lock und Fusebits? Also dass ich daran nichts rumstellen darf, weiß ich ja, aber wozu sind die denn genau da?
Werksmässig stehen die Fuses so, daß der interne RC-Oszillator einen Takt von 1MHz macht. Wenn du ein Programm hast, daß für 16MHz generiert ist, dann stimmt das nicht mehr.
Mein blinky blinkt mit 1Hz bei unveränderter Atmel-Fuse Einstellung.
Wenn du die Fuses so stellst, daß der Kristall zur Takterzeugung genommen wird, blinkt die LED mit 16Hz, also zu schnell. Um das anzupassen muss man zur Compilezeit die Frequenz wissen.
Den Internen RC-Oszillator kann man AFAIK mit 1MHz, 2MHz, 4MHz und 8MHz betreiben -- hier kann man also noch zur Laufzeit die Frequenz ändern.
Für externen Quarz /Keramik-Oszi/Takt-Generator/RC-Glied müssen die CKSELn-Fuses angepasst werden.
Für 16MHz Kristall hab ich alle CKSELn = 0, n=0..3