mikrocontroller.net

Forum: Compiler & IDEs Konstanter Pointer/Array


Autor: Benedikt (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kann man in WinAVR ein Array an eine feste Adresse (externes SRAM)
legen, ohne einen Pointer verschwenden zu müssen ?
Dieser belegt 2 Bytes und muss extra geladen werden, wo mir doch eine
feste Adresse ausreichen würde.

Wie sage ich dem Compiler, dass z.B. das Array
werte[1024] bzw. der pointer werte auf Adresse 1024 zeigen soll, so
dass ich die Werte über werte[i] adressieren kann ?

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

Bewertung
0 lesenswert
nicht lesenswert
Wenn der Zeiger eine Konstante ist, muss er keineswegs
extra geladen werden.  Der Compiler kann dann die für
ihn günstigste Implementierung auswählen.

Wenn du Variablen auf feste Adressen einfach binden
willst (ohne dich mit Linkerscripts oder sowas
rumärgern zu müssen), musst du wohl zu Ada wechseln.

Autor: Patrick Dohmen (oldbug) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe mal ein Linkerscript um die section .extmem erweitert, das
müsste hier im GCC-Forum irgendwo rumfliegen.

Falls Du es nicht findest, kann ich das heute Abend nochmal hier
posten...

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.