Xmega multible section

Gast #6521965
Lesenswert?
• ▲
▼
Hallo liebes Forum,

Ich würde gerne mehre sections definieren uns statisch in den Flash 
legen

das geht ja so

-section-start=.customboot=0x40000
-section-start=.customboot2=0x40100
-section-start=.customboot3=0x40200
.....
und

__attribute__((noinline,  used, section(".customboot")))extern int 
my_fn(void);

__attribute__((noinline,  used, section(".customboot2")))extern int 
my_fn(void);

.......

So weit so gut das klappt auch alles und und in der .bin file passen auf 
die Adressen wenn ich den Flash auslese.

Alles schön und gut.
Nun wird es knifflig und zwar suche ich eine Möglichkeit das ich nicht 
mehr die Adressen der customboot2 und 3 selber definieren muss, sondern 
das mir der Linker sie nacheinander anordnet, heißt um customboot selber 
zu definieren klar komme ich nicht herum aber ich will nicht immer von 
hand die size der sections rausholen und die Adressen anpassen müssen.

fällt da jemand was ein konnte in der linker doku so nix finden ?

Grund für den Aufwand ich will den Bootloader und Application zusammen 
flachen weil ich zugriff auf die spm schreib Funktionen brauche.

Die Application soll später auch kleine Sachen in den Flash schreiben, 
das geht eben nur wenn der spm code an der richtigen stelle im Flash 
liegt.

liebe grüße Matthias

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.