Hallo, ich habe eine Frage, bei der ihr mir vllt. helfen könnt. Ich habe bei einem Experimentierboard mit einem AT90USB1286 irgendwie den Booatloader zerschossen. Eigentlich habe ich die Fusebits zerschossen, aber um die wieder zu resetten, musste ich vorher den ganzen Chip löschen. Nun versuche ich ihn neu aufzuspielen und habe dabei Probleme. Ich benutze zum Programmieren einen USBasp (selbstbau) und das Programm extreme Burner. Das Programmieren funktioniert einwandfrei und wenn ich selbst geschriebene Software draufspiele, tut die wie gewünscht (sie benutzt auch die USB-Schnittstelle korrekt). Wenn ich aber den DFU-Bootloader draufspiele so startet der nicht. Mir ist aufgefallen, dass der Code das Bootloaderes an der Adresse 0xE000 beginnt. Das ist sowohl im Programm (extreme Burner) zu sehen als auch aus dem Hex-File zu lesen. Jedoch startet die Boot-Section des At90USB128x (je nach Wahl der BOOTSZ-Fuses) frühestens ab der Wordadresse 0xF000, was der Byteadresse 0x1E000 entspricht. Ich habe also die Vermutung, dass der Bootloader an eine falsche Stelle im Flash geschrieben wird. Allerdings steht meiner Ansicht nach im hex-File von Atmel genau diese falsche Stelle drin. Wo ist mein Denkfehler? Oder nutze ich die falschen Tools? Nativ unterstützt das Programm extreme Burner die At90USB-Chips nicht aber ich habe eigene Definitionen in die chips.xml und die fuselayout.xml hinzugefügt. Diese scheinen gut zu funkionieren. P.S.: Wenn andere extreme-Burner Nutzer Bedarf haben, werde ich hier bei Gelegenheit die Definition für alle Chips der At90USB-Reihe einstellen.
Ich glaube ich habe die Ursache selbst gefunden. Das Hex-File startet mit der Zeile: :020000021000EC Was laut Wikipedia (http://de.wikipedia.org/wiki/Intel_HEX) ein Extended Segment Address Record (Typ 02) ist. Das heißt diese Zeile sollte für alle nachfolgenden Zeilen die Adresse um 0x10000 verschieben. Somit würde aus 0xE000 die Adresse 0x1E000 was eben die korrekte Startadresse der Bootsection ist. Ich werde einen Bugreport an den Autor von extreme Burner schreiben. Kennt jemand derweil an anderes Tool, das ähnlich komfortabel zu intsallieren und zu bedienen ist und mit dem USBasp arbeitet?
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.