Forum: Compiler & IDEs mspgcc Speichergröße vom F2274


von Timo (Gast)


Lesenswert?

Hallo.

Ich habe hier einen msp430f2274 Mikrocontroller der laut Datenblatt 1k 
RAM besitzen sollte. Mein Programm nutzt davon meiner Meinung nach nicht 
sehr viel. Zur Überprüfung hab ich mal msp430-ram-usage main.elf 
ausgeführt. Hier das Ergebnis:

RAM usage summary:
250 of 256 bytes used (6 free)
the stack can grow up to 4 bytes (continous memory at end of RAM)

Ist das nun ein Problem von ram-usage, dass er glaubt, ich hätte nur 256 
Bytes? Interpretiere ich das irgendwie falsch? Muß ich noch irgendwo was 
einstellen, dass er die richtige Größe erkennt? Im makefile ist steht 
MCU=msp430x2274 drin, dass sollte es doch tun!?

Zumindest würden die 4 Bytes für den Stack klären, warum der Controller 
immer abstürzt.

Vielen Dank für eine Antwort, hab nämlich irgendwie keine Idee, was ich 
sonst versuchen kann.

Gruß, Timo

von Christian R. (supachris)


Lesenswert?

Timo wrote:

> Ist das nun ein Problem von ram-usage, dass er glaubt, ich hätte nur 256
> Bytes? Interpretiere ich das irgendwie falsch? Muß ich noch irgendwo was
> einstellen, dass er die richtige Größe erkennt? Im makefile ist steht
> MCU=msp430x2274 drin, dass sollte es doch tun!?

Weiß das auch der Linker, oder nur der Compiler? Hab gerade mal ein 
kleines Testprojekt in Eclipse für denn F2274 gemacht, da klappt das.

*** Build of configuration Debug for project Test ****

**** Internal Builder is used for build               ****
msp430-gcc -IC:\mspgcc\msp430\include -O0 -g3 -pg -p -Wall -c 
-fmessage-length=0 -mmcu=msp430x2274 -omain.o ..\main.c
msp430-gcc -mmcu=msp430x2274 -oTest.elf main.o
msp430-ram-usage Test.elf
RAM usage summary:
2 of 1024 bytes used (1022 free)
the stack can grow up to 1022 bytes (continous memory at end of RAM)
Build complete for project Test
Time consumed: 624  ms.

von kirika (Gast)


Lesenswert?

Danke erstmal für die Antwort.

Habs auch nochmal mit nem leeren Projekt (int main(void){return 0;}) 
versucht und mit den gleichen Switches Kompiliert und gelinkt, wie du's 
gemacht hast. Gleicher Fehler, immernoch nur 256 Byte Ram. Vielleicht 
ist's dann doch irgendwo nen Fehler beim GCC!? msp430-gcc -v bringt:

Reading specs from 
/cygdrive/c/mspgcc/bin/../lib/gcc-lib/msp430/3.2.3/specs
Configured with: ./configure --target=msp430 
--prefix=/cygdrive/c/Local/liechtic
/mspgcc/sf/packaging/build/installed --enable-languages=c,c++
Thread model: single
gcc version 3.2.3

War eigentlich die letzte Win32 Version, die ich da rausladen konnte.

von kirika (Gast)


Lesenswert?

Hab jetzt nochmal wirklich die letzte Version rausgeladen und damit wird 
die Größe richtig angezeigt freu. Hab's zwar noch nicht auf dem 
Controller getestet, aber sieht schonmal besser aus...

von Christian R. (supachris)


Lesenswert?

Hast du wenigstens jetzt die 2008-06-05 Test, die nicht mehr mit Cygwin 
kompiliert ist?

von Timo (Gast)


Lesenswert?

Ja, die hab ich jetzt tatsächlich, hätte ich vorher ja eigentlich auch 
mal drauf kommen können. Und das Programm läuft jetzt auch anständig. 
Hab den gleichen Quelltext mit beiden Versionen kompiliert, beim neuen 
stürzt es nicht mehr ab. Danke nachmal für den Tipp.

Gruß, Timo.

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.