hallo, ich habe gemäß der anleitung "MSP430 eclipse helios mspgcc4 gdb-proxy" auf http://www.mikrocontroller.net/articles/MSP430_eclipse_helios_mspgcc4_gdb-proxy#Windows_USB_Treiber_f.C3.BCr_Olimex_JTAG_ISO_installieren eclipse aufgesetzt. allerdings benutze ich weder den TI MSP-FET430 noch den Olimex MSP430-JTAG-ISO, sondern den TI EZ430 USB-Adapter der Chronos Uhr. Hat mit dieser kombination jemand erfahrungen? Das debuggen in eclipse funktioniert nicht. gibt es bei mspgcc4 wie bei mspgcc3 die möglichkeit über die kommandozeile zu flashen? (mspgcc3: msp-jtag -epv test.elf) (mspgcc4: hier gibt es kein msp-jtag.exe im verzeichnis mspgcc4\bin) ist der verwendete msp430f2274 auch zu mspgcc3 kompatibel?
Ist schon ein halbes Jahr her, aber WIMRE hat der GDB Server bei mir mit dem der Uhr beiliegenden USB-Adapter funktioniert. Flashen muesste über den MSP430-gdb funktionieren (vorausgesetzt, der GDB server läuft). ZiZi
msp430-jtag ist im mspgcc 4 nicht drin. Das müsstest du vom 3er nehmen. Und dann musst du ja beim Debugger auch das SpyBiWire Kommando nehmen, nicht nur das normale USB Kommando. Vielleicht liegts schon daran. Der F2274 an sich wird selbst vom 3er schon unterstützt, vom 4er ebenfalls. Aber beim mspgcc 4 braucht man den msp430-gdbproxy vom 3er, sonst läuft da auch nix.
vielen dank für die antworten. ich bin zwischenzeitlich auf den TI code composer essential 4 umgestiegen. funktioniert soweit alles (debuggen) einwandfrei. da ich bereits geschriebenen code verwende, der mspgcc-headerfiles einbindet gibt es allerdings wieder probleme. zur einbindung von mspgcc-headerfiles in code composer gibt es aber vermutlich schon einige threads... @ supachris: im worst case fall werd ich deinen vorschlag mal ausprobieren
Florian Kromer schrieb: > da ich bereits geschriebenen code verwende, der > mspgcc-headerfiles einbindet gibt es allerdings wieder probleme Dafür gibts ja #ifdef Anweisungen. Ich schreib den MSP430 Code immer so, dass er mit CCE und GCC kompilierbar ist. Ist eigentlich nur bei den ISRs nötig, ansonsten ist ja alles kompatibel.
Christian R. schrieb: > Dafür gibts ja #ifdef Anweisungen. Ich schreib den MSP430 Code immer so, > dass er mit CCE und GCC kompilierbar ist. hast du ne empfehlung für ne quelle, wo man das nachlesen kann? oder könntest du ein schematisches beispiel posten?
1 | #if defined(__GNUC__) && defined(__MSP430__)
|
2 | interrupt (TIMERA0_VECTOR) Timer_A (void) |
3 | #else
|
4 | #pragma vector=TIMERA0_VECTOR
|
5 | __interrupt void Timer_A (void) |
6 | #endif
|
7 | {
|
8 | //ISR Code
|
9 | }
|
Und natürlich dementsprechend mal an passender Stelle
1 | #if defined(__GNUC__) && defined(__MSP430__)
|
2 | #include <signal.h> |
3 | #endif
|
Zum flashen nehm' ich http://mspdebug.sourceforge.net/index.html. Als Compiler MSPGCC4 läuft alles prima, debuggt habe ich damit noch nie, weil ich es nicht brauche. Damit entwickle ich meine eigene Firmware für die Chronos
@ supachris: vielen dank für den tipp. muss man den verwendeten compiler dann innerhalb des codes noch irgendwie definieren? (bezogen auf die abfrage _GNUC_ bzw. _MSP430_) oder wird der compiler automatisch erkannt? gibt es in diesem fall auch eine #if defined(...) abfrage für den compiler der iar workbench? (falls man standardmäßig den mspgcc oder den msp430 verwendet.)
Wenn du den MSPGCC verwendest sind die deklariert. Leider kriegt Eclipse nichts davon mit, deswegen zeigt der die Code-Blöcke falsch an. Aber naja. Für IAR musst du mal in der IAR Doku schauen, aber ist eigentlich nicht nötig, da der IAR die gleiche Syntax wie der CCE verwendet. Da passt das schon. Wird halt durch den else Zweig mit erschlagen.
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.