Hallo Leute, ich versuche, beim Attiny44A die Fuses auf einen externen 16MHz Quarz zu setzen, aber ich hantiere überhaupt zum ersten mal mit einem AVR ISP MKII (Programm hochladen klappt schon über avrdude) und ich möchte nix falsch machen (bricken). Zuvor hab ich immer nur mit der Arduino IDE gearbeitet. Könnte mir da jemand auf die Sprünge helfen? Ich hab auch solche Online Rechner von AVR fürs Fuse setzen gefunden, allerdings komm ich nicht ganz dahinter, wie ich die Fuse setzen muss, weil ich die Bedeutung/den Unterschied von diesen Startup Times nicht kenne bzw. nicht weiss, ob das für mich überhaupt relevant ist. Das Programm selber ist äußerst überschaubar, vielleicht 50 Zeilen Code. Bin sehr dankbar für alle Tipps!!
Lieber Jörg, vielen Dank für die Hilfe. Ich habs mal ausprobiert und scheint auch zu klappen aber danach lässt er mich den Code mit der Fehlermeldung
1 | avrdude: stk500v2_command(): command failed |
2 | avrdude: stk500v2_command(): unknown status 0xc9 |
3 | avrdude: stk500v2_program_enable(): cannot get connection status |
4 | avrdude: initialization failed, rc=-1 |
5 | Double check connections and try again, or use -F to override |
6 | this check. |
nicht mehr draufspielen. Immerhin hab ich rausgefunden, wofür "lfuse:w:0xef:m" steht :) Grüsse, Christian
Ach, Verzeihung... nach Strom an- und abziehen klappts doch wieder. Is das immer so?
Christian schrieb: > Ach, Verzeihung... nach Strom an- und abziehen klappts doch wieder. Is > das immer so? Könnte sein, dass man das zum Anwerfen des Oszillators braucht?
Ich habe hierzu noch eine andere Frage: Über die Arduino IDE hab ich mir die Timer für drei Ausgänge schneller gesetzt, um höhere PWM Frequenzen zu erreichen. Wenn ich den Code via Arduino IDE aufspiele, muss ich jedoch erst den Bootloader installieren, ansonsten scheinen die Timer unverändert. Der fragliche Code lautet:
1 | TCCR0B = TCCR0B & 0b11111000 | 0x01; //Clockdivider Clock0 = 1 -> Clockspeed = 62,5KHz |
2 | TCCR1B = TCCR1B & 0b11111000 | 0x01; //Clockdivider Clock1 = 1 -> Clockspeed = 31,25KHz |
Diesen Vorgang ca. 250 mal für 250 zu programmierende Attinys zu wiederholen ist mir zu viel. Ich denke aber, wenn man das aus dem Programmcode rausnehmen würde und die entsprechenden Fuses gleich in der Kommandozeile (i.e. avrdude) mitsetzen würde, sollte es doch auch klappen oder nicht? Vielen Dank für die Hilfe!
Ha! Jetzt hab ichs doch noch hingekriegt! Fuses setzen + die .hex Datei inkl. funktionierender 'Fast PWM' flashen in einer Codezeile, hurra! :D
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.