Forum: Mikrocontroller und Digitale Elektronik MSP430-Programmierung: Mit CC430F5137 starten?


von Dan N. (dan1824)


Lesenswert?

Hi, nabend zusammen!


Aller Start ist ja bekanntlich schwer, aber auch eine schöne 
Herausforderung.

Was würdet ihr raten, wenn man mit der Programmierung eines CC430F5137 
starten möchte.

Was wird benötigt?

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Datenblatt, User's Manual und die Codebeispiele von TI für diese 
MSP430-Variante. Natürlich ein Compiler und ein JTAG- bzw- 
SBW-Interface.

Oh, und eine Idee, was Du eigentlich machen möchtest.

von Dan N. (dan1824)


Lesenswert?

Danke für Deine schnelle Response!

Das sind doch gute Startpunkte.

Was sind aus Erfahrung für Linux/Unix gute
Compiler / IDEs ?

Und welches JTAG-Interface lohnt sich anzuschaffen, wenn man wenig ärger 
haben möchte und dass das nicht sofort nach 4 Wochen im Müll landet 
(Stichwort: Fehlkauf)

von Dan N. (dan1824)


Lesenswert?

Gibt es eine Programmierumgebung von TI?

Sowas wie Atmel Studio?

von Sebastian S. (amateur)


Lesenswert?

Wenn Du nur die MSP430-Serie kennenlernen willst, hol' Dir doch den:
"MSP430 Value Line LaunchPad Development Tool".
Das ist die Abteilung: "Kost fast nix".

Zum Programmieren gibt’s von TI das: Code Composer Studio ?.?.?. Ist 
aber ein ganz schönes Trumm. Würde mich aber wundern, wenn's rund um das 
Gnu nicht auch was gäbe. Und natürlich auch bei den üblichen 
Verdächtigen.

von ./. (Gast)


Lesenswert?

> Gibt es eine Programmierumgebung von TI?

Soll die mit einem rosa Schleifchen drumrum sein?

von Dan N. (dan1824)


Lesenswert?

Sebastian S. schrieb:
> Wenn Du nur die MSP430-Serie kennenlernen willst, hol' Dir doch
> den:
> "MSP430 Value Line LaunchPad Development Tool".
> Das ist die Abteilung: "Kost fast nix".
>
> Zum Programmieren gibt’s von TI das: Code Composer Studio ?.?.?. Ist
> aber ein ganz schönes Trumm. Würde mich aber wundern, wenn's rund um das
> Gnu nicht auch was gäbe. Und natürlich auch bei den üblichen
> Verdächtigen.

Ja, das ist eine gute Idee. Ich werde Deine Ansätze als guten Startpunkt 
nehmen.

Ziel ist natürlich die Programmierung des CC430F5137

Mal sehen, über welche Umwege ich dorthin gelange.

Die Tipps kommen da wie gerufen!

Danke!

von Sebastian S. (amateur)


Lesenswert?

Bin mir nicht ganz sicher, aber wenn mich nicht alles täuscht gibt’s 
beim Code Composer eine Code-Beschränkung, bei der nicht lizensierten 
Version. Sollte aber beim "Üben" kein Problem darstellen.

von Dan N. (dan1824)


Lesenswert?

Sebastian S. schrieb:
> Bin mir nicht ganz sicher, aber wenn mich nicht alles täuscht
> gibt’s
> beim Code Composer eine Code-Beschränkung, bei der nicht lizensierten
> Version. Sollte aber beim "Üben" kein Problem darstellen.

Genau, erstmal nur ein paar erste Gehversuche, um rein zu kommen.

Deine Tipps sind wirklich gut und ich habe mich sehr darüber gefreut.

Schönen (Rest-)Abend noch ;)

DANKE

von Clemens L. (c_l)


Lesenswert?

Sebastian S. schrieb:
> "MSP430 Value Line LaunchPad Development Tool"

TI sagt "The MSP-EXP430G2 LaunchPad is not supported by the Mac or Linux 
versions of the Code Composer Studio™ Integrated Development". Und mit 
diesem Launchpad kann eventuell keine neueren MSPs programmieren.

Nimm besser ein neueres LaunchPad, z.B. MSP-EXP430F5529LP oder 
MSP-EXP430FR6989.

von Clemens L. (c_l)


Lesenswert?

Sebastian S. schrieb:
> Würde mich aber wundern, wenn's rund um das Gnu nicht auch was gäbe.

http://www.ti.com/tool/ccstudio-msp430:
> A free license will be generated that supports a 16KB code size limit
> for the optimized TI compiler on MSP430 ... A 90-day full featured
> evaluation license is also available.

http://www.ti.com/tool/iar-kickstart:
> IAR Embedded Workbench Kickstart for MSP is a complete debugger and
> C/C++ compiler toolchain for building and debugging embedded
> applications based on MSP430 ... microcontrollers. The code size
> limitation of C/C++ compiler is set to 8 KB for MSP430 devices.

http://www.ti.com/tool/msp430-gcc-opensource:
> This free GCC 4.9 compiler supports all MSP430 devices and has no
> code size limit. In addition, this compiler can be used standalone or
> selected within Code Composer Studio v6.0 or later.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Dan N. schrieb:
> Und welches JTAG-Interface lohnt sich anzuschaffen

MSP-FET. Der Nachfolger des MSP-FET430UIF.

http://www.ti.com/tool/msp-fet

http://www.ti.com/tool/MSP-FEt430UIF


Clemens L. schrieb:
> TI sagt "The MSP-EXP430G2 LaunchPad is not supported by the Mac or Linux
> versions of the Code Composer Studio™ Integrated Development". Und mit
> diesem Launchpad kann eventuell keine neueren MSPs programmieren.

Mit diesem Launchpad kann man selbst einige Varianten aus der 
MSP430G-Reihe nicht programmieren, so zum beispiel keine, deren Nummer 
auf 5 endet. Die Firmware in diesem Launchpad ist wohl recht kastriert, 
bedenkt man, daß die Hardware bis auf die fehlenden 4-Draht-JTAG-Treiber 
und ein paar Stromversorgungsspielereien der des MSP-FET430UIF 
entspricht, das die entsprechenden Controller sehr wohl programmieren 
kann.

von Johnny B. (johnnyb)


Lesenswert?

[ALT]
Den GNU-Compiler für den MSP430 kann man meiner Meinung nach vergessen, 
der taugt höchstens für veraltete Typen oder wenn man viel Zeit und 
Interesse hat, sich auch um die Tools zu kümmern und sich damit 
rumzuärgern.
Ich würde daher das "Sorglospacket" Code-Composer-Studio nehnem, aber 
läuft halt unter Windows.

Wenn Du auf Linux bestehst, wärst Du mit dem MSP432 wohl besser bedient, 
da hier der weit verbreitete und stehts aktuelle GNU-Compiler für ganz 
normale ARM Cortex M4F verwendet werden kann.
Aber vom MSP432 gibts halt derzeit nur ein einziges Derivat bzw. kommt 
erst dieses Jahr richtig raus. Bisher sind nur Vorseriencontroller 
(XMS432...) erhältlich, welche derzeit auch auf den LaunchPads verbaut 
sind.
[/ALT]

Korrektur: Hab gerade gesehen, dass TI wohl Geld in die Finger genommen 
hat und nun auch eine Professionelle Portierung vom GCC für den MSP430 
vorhanden ist, sogar mit offiziellem Support:
http://www.ti.com/tool/msp430-gcc-opensource

: Bearbeitet durch User
von Klaus R. (klara)


Lesenswert?

Dan N. schrieb:
> Was würdet ihr raten, wenn man mit der Programmierung eines CC430F5137
> starten möchte.

Ich arbeite schon seit bald 10 Jahren mit Prozessoren der MSP430 F201x 
Reihe. Ich war durchweg sehr zufrieden. Anfangs gab es nur den IAR, dann 
hat TI selber mit dem CCS nachgelegt. Beide sind sehr gut, der CCS war 
mir hinterher doch lieber. TI dokumentiert auch gut. Samples sind auch 
da, in der Regel rudimentär.

Dann wollte ich jetzt etwas mit Funk machen und bin auf den CC430F5137 
und das Olimex-Board gekommen. Dazu habe ich den MSP430-JTAG-TINY-V2 von 
Olimex für ca. 50€ gekauft. Zum Einsatz kam der aktuellste CCS.

Nach ein paar selbst verschuldeten Anfängerfehlern hatte ich doch 
unerklärliche Probleme mit der Umsetzung des I2C-Bus obwohl der mir gut 
bekannt war.

Ein Tipp im Forum war mal, lies Dir mal den Errata zum CC430F5137 durch.
Danach war ich noch unsicherer. Der I2C - Bus hatte wohl im Debug-Mode 
Probleme. TI beteuert, im Normalmode wäre alles OK. Nur so ein Profi bin 
ich auch nicht. Ohne Debuggen komme ich nicht weiter. Das kannte ich von 
TI so nicht!

Den I2c-Bus bekam ich dann doch halbwegs zum Laufen.

Dann zum Funk. Die ganz simplen Sampels liefen so weit. Aber dann ging 
es wieder mit den Merkwürdigkeiten im Debugg-Mode los. Ich kürze mal ab. 
Aus Verzweiflung habe ich mal den IAR verwendet und die Olimex Samples 
genommen. Es lief! Keine Probleme mit dem Debugging!

Leider kann der kostenlose IAR nur 8K Byte verarbeiten, der CCS 
wenigstens 16K Byte. Der CC430F5137 scheint veraltet zu sein, was das 
Funkmodul angeht. TI bietet einige sehr interessante Helfer an, z.B. 
Grace. Man unterstützt dort allerdings nur G2xx, F2xx und FR5xx Typen. 
Unter Grace kann man z.B den I2C-Bus wesentlich robuster betreiben. Und 
schau mal nach aktuell unterstützen Funkmodulen. Unter denen läuft es 
auch einfacher.

Beitrag "OLIMEX MSP430-CCRF und I2C"
Beitrag "CC430F5137 (OLIMEX MSP430-CCRF) und I2C"
https://www.olimex.com/forum/index.php?topic=4923.0
mfg klaus

von Jan S. (db8jo)


Lesenswert?

Code Composer Studio 6 läuft auch unter Linux und es gibt sogar eine Mac 
Version. Für Win und Linux lässt sich zusätzlich zum TI Compiler der 
TI/Redhat GCC compiler integrieren, damit entfällt die Code 
Beschränkung.
Die G2 Launchpads werden tatsächlich von CCS unter linux und Mac nicht 
supported, wie weiter oben schon jemand erwähnt hat - mit dem FR4311 
Launchpad z.B funktioniert es aber.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Jan S. schrieb:
> Die G2 Launchpads werden tatsächlich von CCS unter linux und Mac nicht
> supported

Das wiederum ist merkwürdig, bedenkt man, daß das G2-Launchpad den 
Innereien des MSP-FET430UIF bis auf die Ausgangstreiber für 4-Draht-JTAG 
und Versorgungsspannungsspielereien entspricht. Im wesentlichen bestehen 
beide auf einer USB-UART-Bridge von TI (für die man Devicetreiber 
benötigt) und einem übertakteten MSP430F1612.

> mit dem FR4311 Launchpad z.B funktioniert es aber.

Das sieht TI anders (ich nehme an, daß 4311 ein Typo ist und Du 4133 
meinst):

http://processors.wiki.ti.com/index.php/Linux_Host_Support_CCSv6#Not_Supported_2

von Jan S. (db8jo)


Lesenswert?

Hallo Rufus,

TI listed die G2 Launchpads ja in dem Link auch als unsuported. Ich 
glaube in der Tat liegt das an den Devicetreibern die in der Linux- und 
OSX-Version fehlen. Möglich, dass man da irgendwie tricksen kann, 
schließlich lassen sich die G2 Launchpads ja auch mit mspdebug 
ansprechen. Nach der normalen CCS Installation funktionierte es bei mir 
auf jeden Fall nicht.

Ja, natürlich 4133. Funktioniert definitiv mit der OSX Version von CCS. 
Was Linux angeht, bin ich mir jetzt grade nicht mehr sicher ob ich die 
Konstellation wirklich getestet habe. Eventuell habe ich das falsch in 
Erinnerung und es funktioniert nicht. Werde ich bei Gelegenheit noch mal 
ausprobieren.
Merkwürdig, ich dachte eigentlich der FET Teil auf dem 4133 Launchpad 
wäre der gleiche wie auf den anderen neueren Launchpads.

von Roland E. (roland0815)


Lesenswert?

Die Codebeschränkung vom IAR lässt sich gut unterlaufen, in dem man 
Assembler einsetzt. Der Code zählt nicht mit rein. Geht gut für 
Konstanten, Tabellen und Strings.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Jan S. schrieb:
> TI listed die G2 Launchpads ja in dem Link auch als unsuported.

Ja, das ist ja gerade das bizarre. Warum soll die eine Inkarnation einer 
im wesentlichen identischen Hardware sich anders verhalten als eine 
andere Inkarnation?

MSP-FET430UIF, G2-Launchpad und EZ430 sind sehr nahe Verwandte und 
unterscheiden sich auf der PC-Seite nur durch die Firmware (die aber 
munter durch CCS oder auch andere Tools aktualisiert wird).

von MSP430 User (Gast)


Lesenswert?

Da noch keiner Energia als Alternative zu IAR/CCS erwähnt hat:
http://energia.nu/
Ich weiss allerdings nicht, ob es den CC430F5137 unterstützt.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Naja, das ist eine Arduino-Umgebung für MSP430 (und anderes). Dahinter 
steckt zwar ein gcc, aber ob man sich die doch sehr ... einfach 
gestrickte IDE antun möchte, und vor allem auf jede Möglichkeit des 
Debuggens verzichten will?

Denn gerade das ist ein großer Vorzug der MSP430-Reihe, daß praktisch 
jedes Programmierinterface auch gleichzeitig ein Debuginterface ist (von 
BSL mal abgesehen), mit dem man dem Prozessor auf die Bits schauen kann. 
Aus Anwendersicht verhalten sich hier SBW und 4-Draht-JTAG identisch, 
nur unterschiedlich schnell.

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.