Variablenverwaltung MSP430

Gast #2153113
Lesenswert?

Hallo zusammen,

Benutzte den MSP430F2074...
Wollte mal nachfragen, wie die Variablen abgespeichert werden.

Wenn ich Variablen global deklariere, also Variablen sollen nach 
Unterprogrammsprung gespeichert bleiben, werden sie im RAM abgelegt.

Wenn ich Variablen nur in einem Unterprogramm benötige und diese dort 
deklariere, wo werden da die Variablen abgelegt?

Wenn ich z.B. ein BYTE-Array mit 1000 werden deklarie, beschwert sich 
der
Compiler nicht...

Wo kann ich das im USERGUIDE nachlesen?
Wäre sehr dankbar, wenn Ihr mir helfen könntet...

Grüße
Claudia
Gast #2153181
Lesenswert?

Im erzeugten MAP-File wird aber nichts angezeigt, d.h. ich habe noch ca. 
150 Byte frei aufn RAM, wenn ich jetzt mein Unterprogramm erzeuge und 
dort ein byte-Array von ca. 150 Werten beschreibe, ändert sich nichts an 
der Anzeige im map-file ??
Gast #2153379
Lesenswert?

Variablen in Unterprogrammen, sofern (in C) nicht als "static" 
deklariert, werden auf dem Stack angelegt und
erscheinen deshalb nicht im MapFile. Sie haben keine festen
Adressen und werden relativ zum Stackpointer adressiert.

Zu grosse lokale Variablen werden mit Stacküberlauf zur laufzeit
bestraft...

ZZ.

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