OpenOCD Raspberry |ATMEL programming|BOOT and APP

OP #5063335
Lesenswert?

Hallo zusammen,

ich möchte mit den Open OCD meinen Atmel SAMD20E15 flashen, zum flashen 
benutze ich das Raspberry Pi. Wenn ich meine APP in die Adresse 0x0 lade 
funktioniert das ganze gut.

Ich möchte jedoch noch einen Bootloader flashen. Wenn ich den Bootloader 
in den Atmel auf 0x0 flashe ist soweit alles okay und der uC geht normal 
in den run modus.

Wenn ich dann die APP auf die Adresse 0x2000 programmiere funktioniert 
nichts mehr und der uC führt nichts mehr aus.

Wenn ich den Bootloader und die APP von AtmelStudio flashe funktioniert 
es. Wenn ich die Daten im Flash mit meinem APP und der BOOT vergleiche, 
sind diese nicht mehr mit dem original identisch.

Ich hoffe sehr das ihr mir eine antwort habt.


Beste Grüße

DDMW
#5064192
Lesenswert?

Neben dem Linkerscript muss sehr wahrscheinlich noch der Offset der 
Vektortabelle im Code angepasst werden. Dafür gibt es bei den Cortex-M 
das "Vector Table Offset Register" (VTOR). Häufig gibt es in der 
SystemInit einen Abschnitt der per #define aktiviert werden kann, dann 
kann man das auch ins Makefile auslagern (sofern man eines nutzt) und 
muss nicht jedesmal am Code rumdoktorn wenn man eine andere 
Konfiguration bauen möchte.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren