MSP430/IAR/C - keine Arrays?

Gast #5325501
Lesenswert?

Ich bastle nach längerer Zeit mal wieder mit einem MSP430 herum. Bisher 
hat auch alles gut geklappt, aber sobald ich Arrays verwende, stoße ich 
auf ein Problem - laut Debugger sind die Arrays immer <unavailable>. 
Egal wie angelegt:
1
uint8_t rec_buffer[] = {0xAA, 0xAA};
2
unsigned char rec_buffer[2];

Woran liegt das? Bisher kannte ich das nur von Variablen, die der 
Compiler wegrationalisiert wird. Aber mein rec_buffer[0] etc. wird 
definitiv verwendet. Auch static o.ä. ändert nichts. Wenn ich einen 
einfachen Typ wie char draus mache, gehts ja. Passiert mir bei jedem 
Code, auch den trivialsten Tutorials/ANs. Was übersehe ich denn?
Gast #5325588
Lesenswert?

Ich muss vorausschicken, ich habe keine Erfahrung mit MSP430 Debugging, 
aber hast du mal im Assembler geschaut, ob das Array in Registern 
angelegt wird. Vielleicht hat der Debugger damit ein Problem.

Wenn du das Array testweise einmal deutlich größer definierst, ist das 
Problem dann immer noch vorhanden?
Gast #5325724
Lesenswert?

Vielen Dank! Mit volatile UND mit mehr Elementen definiert geht es 
jetzt. (Nur volatile hatte ich früher auch schon, das geht aber trotzdem 
nicht. static hätte doch zumindest bei init mit = 0xAA auch klappen 
müssen, oder?) Bei einem Kollegen geht der gleiche Code ohne volatile, 
obwohl wir beide am IAR nichts gemacht haben (selbe Version, Compiler 
nicht anders konfiguriert...).

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