Hallo Forum, Ich bin derzeit dabei einen Bootloader für einen AtMega2560 zu schreiben, das Programm entspricht dem in dem Mikrocontroller-Artikel AVR Bootloader in C - eine einfache Anleitung Zusätzlich dazu frage ich lediglich den EEPROM auf eine Flag ab und resette am Ende eines erfolgreichen Flash-Vorgang mithilfe des Watchdogs. Allerdings würde ich hier nicht posten, wäre kein Problem aufgetreten und da der Fehler sehr seltsam ist, bin ich auch relativ ratlos: Der Flashvorgang wird erfolgreich ausgeführt (Der Parser des Bootloaders meldet keine Fehler beim Empfang der HEX über UART), ABER: Die ersten Zeichen des Flash werden nicht beschrieben, sie lauten alle 0xFF, das heißt, der Botloader löscht diese Zeichen, aber beschreibt sie nicht wieder. Dazu kommt, es ist immer das selbe Muster (das ich nachreichen werde, sobald ich nochmal Zeit dazu habe den Fehler zu reproduzieren) und ich habe keine Hinweise darauf gefunden, was der Fehler sein könnte, ich vermute mal es ist irgendwas dämliches, aber Fakt ist ich komme nicht drauf. Ich habe nichts im Internet gefunden, was mein Problem umschreibt. Es wurde nur irgendwo darauf hingewiesen, man solle doch die Brownout Fuse setzen, was das Problem ebenfalls nicht behoben hat. Ich habe auch mit der Optimierung rumgespielt, ebenfalls ohne Erfolg... Wie hoch stehen die Chancen, das das Problem nicht 50cm vorm Monitor sondern im AVR-GCC Compiler liegt? Das einzige was ich mir vorstellen kann (da ich die Funktion zum beschreiben des Flash nicht verändert habe) das ich irgendwo nen Overflow produziert habe, aber da bis auf die ersten Zeilen der Rest korrekt beschrieben wird, halte ich das für unwahrscheinlich. Wie wahrscheinlich ist es, das das auslesen des EEPROM am Anfang des Bootloaders und das beschreiben des EEPROMs am Ende des Bootloaders Einfluss auf den Flash hat? Würde mich sehr freuen, wenn mir jemand helfen könnte
Gut hast du deine "Problembeschreibung" nicht in Versform verfasst - Es hätte glatt die Scroll-Möglichkeiten meines Laptops überfordert. ;-)
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.