Forum: Mikrocontroller und Digitale Elektronik ATXMega DFU USB Bootloader + Application via JTAG


von Emanuel L. (eleicht)


Lesenswert?

Hallo zusammen,

ich programmiere zum ersten Mal einen Bootloader auf einen Chip und habe 
bezüglich der Programmierung eine Frage.

Ich nutze einen XMega256A3U und steuere ihn über ein Terminal via USB. 
Aus diesem Terminal springe ich per Software in den DFU USB Bootloader 
(Version 1.04 von Atmel).
1
void(* jump_to_bootloader)(void) = (void (*)(void))(BOOT_SECTION_START/2 + 0x1FC/2);
2
udc_detach();
3
udc_stop();      
4
EIND = BOOT_SECTION_START>>17;
5
jump_to_bootloader();

Das funktioniert soweit, aber nur, wenn ich den Bootloader per JTAG 
aufspiele, meine eigentliche Applikation dann über den Bootloader selbst 
(via FLIP).
Meine Frage: Ist es möglich, sowohl den Bootloader, als auch mein 
Programm über JTAG aufzuspielen?

Zur Erklärung: Wenn ich es auf diese Weise mache, habe ich entweder 
keinen Bootloader (bzw. wird nicht erkannt), oder ich habe keine 
Applikation drauf - je nach Reihenfolge der Programmierung.
Ich hatte irgendwo gelesen, dass Atmel Studio erkennt, wohin das 
hex-File geschrieben werden muss, d.h. in den Bootloader-Sektor oder in 
den Programm-Bereich. Ich weiß aber nicht, ob ich hierfür noch etwas 
einstellen muss.

Wäre jemand so freundlich, mich aufzuklären?

Danke und viele Grüße

P.S.: Setting: Atmel Studio 7.0, Atmel ICE 3

von Emanuel L. (eleicht)


Lesenswert?

Hat niemand eine Idee?

von Marc V. (Firma: Vescomp) (logarithmus)


Lesenswert?


von Emanuel L. (eleicht)


Lesenswert?

Marc V. schrieb:
> Emanuel L. schrieb:
>> Hat niemand eine Idee?
>
>  So vielleicht ?
> Beitrag "Re: AVR Bootloader + Hauptprogramm zusammenfügen"

Danke! Das werde ich mir mal zu Gemüte führen.

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
Noch kein Account? Hier anmelden.