Hallo, ich bin leider etwas durcheinander geraten, mit invertierter logik usw.. Ich möchte einen ATMega8 mit einem Standartquarz 3,6848 MHz betreiben: genau wie es auf dieser seite beschrieben ist, ganz unten: http://s-huehn.de/elektronik/avr-prog/avr-prog.htm leider habe ich nur linux und avrdude ;-) das ist der aktuelle Zustand: avrdude: safemode: lfuse reads as E1 avrdude: safemode: hfuse reads as 99 avrdude: safemode: Fuses OK Wenn ich also meinen Möchtegern Zustand auf diesen Rechner: http://palmavr.sourceforge.net/cgi-bin/fc.cgi übertrage werden diese Werte errechnet: Current: 0xBF 0x99 Damit hätte ich die gewünschte Einstellung + SPI und aktiven Watchdog Timer (war ursprünglich ja auch aktiviert) Stimmt das? Würde mich nur gern vergewissern bevor ich flashe. Vielen Dank mfG Stefan
Stimmt. Deine Einstellung benutzt allerdings die "Ext. Crystal/... High Frequency" Einstellung für den Quarz, die erst für Quarze ab 8 MHz notwendig ist. Du bräuchtest für den 3,6848 MHz Quarz nur die "Ext. Crystal/... Medium Frequency" Einstellung. Es schadet aber nicht, den Quarz mit mehr Power zum Schwingen anzuregen (manche Leute bevorzugen das sogar). Bist du sicher mit dem Watchdog? Viele Demoprogramme z.B. hier im Wiki berücksichtigen den Watchdog im Programmcode nicht. Du wirst dich bei denen wundern, dass das Programm nicht das macht, was beschrieben ist und was du erwartest, weil der AVR sich nach kurzer Zeit selbst resettet.
Danke für die Bestätigung und die nette Erklärung! Ist der Watchdog standardmäsig aktiviert? Ich habe noch keine Fuses geschrieben und meine ausgelesenen werte sind ja: avrdude: safemode: lfuse reads as E1 avrdude: safemode: hfuse reads as 99 Habe ich es richtig verstanden? wenn die Demoprogramme richtig funktionieren sollen, dann sollte ich ihn lieber nicht aktivieren (obwohl er bisher aktiviert war) und deshalb diese Werte nehmen: Current: 0xBF 0xD9 Mein Programm, eine kleine Zahnputzuhr, funktioniert auch soweit. Nur das die Zeit manchmal von alleine losläuft obwohl die Start Taste noch nicht gedrückt wurde.. Ist vielleicht der aktive Watchdog dir Ursache?
Ich denke nicht, dass das Loslaufen von alleine durch den Watchdog kommt. Mehr könnte man vielleicht durch die Analyse des Quelltextes deines Programms und ggf. des Schaltplans von angeschlossenen Bedienelementen sagen. Du kannst an dieser Stelle bei den Gusebits auch nichtS kaputt machen, wenn du mal mit beiden Einstellungen für den Watchdog experimentierst. Du kannst dich nur mit diesem einen Fusebit nicht "aussperren". Eine gesunde Vorsicht ist bei anderen Fuses angebracht (s. AVR Fuses. Du wirst ziemlich schnell sehen, ob dein Programm bei beiden möglichen Einstellungen unterschiedlich arbeitet oder nicht. Und die "richtige" einstellung kannst du dann weiter benutzen.
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.