*.elf != *.hex - warum läuft der Bootloader unterschiedlich?

Gast #1928091
Lesenswert?
• ▲
▼
Hallo Leute!

Ich versuch mich gerade mit dem "universal bootloader" siehe auch:
http://sites.google.com/site/shaoziyang/Home/avr/avr-universal-bootloadere

Hier wird zwar ein Makefile usw. mitgeliefert, aber ich will das Projekt 
trotzdem im AVRStudio & debuggen (JTAG ICE MKII ).

uC: ATMEGA1281
Bootloader-Adresse: 0xF000 (für 4k Worte Code)

Um den Bootloader auf den gewünschten Bereich zu setzen, hab ich dem gcc 
diese Optionen noch mit auf den Weg gegeben:
-Ttext=0x1E000
-nostartfiles

Nun also über den "Build and Run"-Button im AVRStudio per JTAG aufs 
Target laden und das Programm läuft. Applikation per Bootloader laden 
geht - alles prima.

Problem:
Wenn ich das gleichzeitig erzeugte *.elf nutzen will, um das gleiche mit 
einem AVRISP MKII zu flashen - dann sieht man am LED-Blinken zwar, dass 
der Bootloader läuft, aber er reagiert einfach nicht mehr auf das 
XModem-Protokoll.

Das Komische ist also, mit Debugger laden funktioniert - mit ISP laden 
funktioniert nicht :(

Was macht das elf anders als der Debugger?

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.