Forum: Mikrocontroller und Digitale Elektronik Globale Variablen


von Markus (Gast)


Lesenswert?

Hallo zusammen!
Ich bin zur Zeit bei der SW-Entwicklung mit dem Motorola MC9S12D64. Als
Entwicklungsumgebung benutze ich ICC12.
Mein Problem: Wenn ich globale Variablen deklariere, setzt mein
Programm diese in einen nicht als RAM deklarierten Speicherbereich.
Also: kein Schreibzugriff.
Kann mit jemand bei diesem Problem helfen?

von --- (Gast)


Lesenswert?

Hallo Markus,

hast du es schon mit der Linker-Direktive __attribute
section(".data")
versucht ?

von Markus (Gast)


Lesenswert?

Es werden ja bei mir nur die globalen Variablen - also die, die ich
außerhalb des Main-Programms deklariert habe - außerhalb des RAMs
angelegt. Alle sonstigen Variablen funktionieren.
Oder was meintest du mit der Linker-Direktive? Du meintest doch das
definieren des RAM-Bereichs?!?

von ---- (Gast)


Lesenswert?

Data-Segment nicht auf RAM-Adressen gelinkt?

Lokale Variablen landen ja normalerweise aufm Stack, d.h. hier fällt
nicht auf, daß dein Linkerfile evtl. falsch ist. (Ausnahme: lokale
static Variablen...)

Bzw. wie sieht überhaupt dein Linkerfile aus? (Gibt's sowas beim
ICC12?)

----, (QuadDash).

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.