mikrocontroller.net

Forum: Compiler & IDEs Statische Endadresse für text section im makefile ?


Autor: Micro Mann (micromann)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Leute,

ist es eigentlich möglich die text section (oder auch ne andere) im 
makefile mit fester Endadresse vorzugeben, so dass der Anfang dynamisch 
ist ?

Ich möchte zwei Programme im MC haben, die quasi wie heap und stack 
aufeinander zulaufen, um den vorhandenen Platz maximal auszunutzen.

Dabei möchte ich fixe Stratadressen (hier wäre es beim zweiten Programm 
sozusagen eine fixe Endadresse).

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nein, das geht nicht.  Zumindest nicht auf einfache Weise.  Eine
Mehrpass-Variante wäre vielleicht denkbar: pass 1 ermittelt die
Größen in einem ersten Versuch, pass 2 linkt daraufhin noch einmal
mit neuen --section-start-Optionen (via Script etc. berechnet).

Sinnvoll erscheint mir das Ganze aber nicht, ich sehe keinen Vorteil
in dieser Vorgehensweise.

Autor: Micro Mann (micromann)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hab ich mir schon fast gedacht ;)

Da lass ich lieber die Finger davon.

THX

Autor: Rolf Magnus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Warum hängst du die Programme nicht einfach direkt hintereinander? Sie 
wachsen ja nicht zur Laufzeit.

Autor: Micro Mann (micromann)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Rolf

>> Sie wachsen ja nicht zur Laufzeit

Doch schon. Das erste flasht das zweite und umgekehrt.

Aber ich bin von der Idee mittlerweile abgekommen.
Ist zu kompliziert.

Gruß,
Andreas

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Doch schon. Das erste flasht das zweite und umgekehrt.

Geht sowieso nicht.  Du darfst nur aus dem Bootloader heraus
etwas anderes flashen.  (Ausnahme: ganz kleine ATtinys, die haben
keine explizite Bootload-Area.)

Autor: Micro Mann (micromann)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Geht sowieso nicht.  Du darfst nur aus dem Bootloader heraus
etwas anderes flashen.  (Ausnahme: ganz kleine ATtinys, die haben
keine explizite Bootload-Area.)


Ich glaube du verwechselst da was...

Das ist ein ARM und kein AVR.

Denn kann man sehr wohl im laufenden Betrieb umprogrammieren.
Was glaube ich nicht möglich ist, ist aus dem Flash zu operieren und 
gleichzeitig eine Page zu programmieren. Das würde mich aber nicht 
sonderlich stören.


Autor: Micro Mann (micromann)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Oh, sorry Jörg !

Ich sehe gerade, dass ich zuvor mit keiner Silbe erwähnt habe, dass es 
sich um einen ARM handelt ;)

War aber auch für das Problem irrelevant.

So long.

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> War aber auch für das Problem irrelevant.

Naja, mäßig. ;-)  In diesem Lichte erscheint es zumindest nicht
so unsinnig, wie es bei einem AVR wäre.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.