Ahoi, ich bin gerade dabei mit meinem MSP430 mit 8kb Flash ein Programm zu schreiben welches ueber einen ADC10 port daten liest und protokoliert. Via dem UART interface soll dann das protokoll ausgelesen werden koennen. z.b. koennte ein NTC an A0 angeschlossen sein der alle 5 minuten abgefragt wird und in den Flash via round robin verfahren die Messwerte ablegt. Mein Problem ist die Tatsache, dass ich keinen Anhaltspunkt habe wie man einen Speicherbereich im Flash reserviert um darauf spaeter im Programm zuzugreifen. Bei den "standard library functions" ist der befehl MALLOC gelistet, der mir zwar sehr seltsam im Bezug auf µC ohne jegliches Speichermanagement vorkommt, aber ich vermute mal, dass malloc() irgend etwas damit zu tun hat. Bye, Michael
Der mspgcc legt alle "const"-Variablen im Flash an, beschreiben musst du den Flash allerdings "von Hand", also wie in Assembler. Im Mspgcc-CVS, in der Mailingliste oder bei den Appnotes von TI findest du vielleicht auch schon ein Beispiel dafür.
Seltsam, ich lege ein "const char blah[256]" an und bekomme dennoch die "is not within region data" Meldung vom Compiler/Linker. Zu gross ist das File auch nicht, denn ohne blah ist das HEX file auch nur knapp 1kb gross. In der MSPGCC FAQ habe ich eine aehnliche Frage gefunden, die mir aber nicht wirklich weiter geholfen hat... http://mspgcc.sourceforge.net/faq/x71.html Wenn nichts hilft werd ich wohl doch wieder auf Assembler umsteigen und C bleiben lassen, auch wenn ich da schleifen, algorythmen,... besser erkennen kann! Bye, Michael
Hmm, steh genau vor demselben doofen Problem. nur kann ich leider -von wegen keine Ahnung wie - NICH auf Assembler umsteigen. wo find ich deshalb Angaben zu jenen ominösen Unterstrich-Kommandos wie "__inline__" "__attribute" und so??? Beste Grüße Christian
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.