Hallo,
zum Programmieren eines MSP430FG4619 verwende ich derzeit Eclipse in
Verbindung mit mspgcc. Das Compilieren und Flashen klappte anfangs recht
gut.
Mit dem wachsenden Code treten nun immer häufiger Probleme auf.
Inzwischen ist es mir nicht mehr möglich, mein Programm auf den MSP430
zu flashen.
Mit der Entwicklungsumgebung IAR kann ich weiterhin problemlos den Code
zum COntroller herunterladen.
Das Problem stellt sich folgendermaßen dar:
1) compilieren -> ok
2) msp430-gdbproxy starten -> msp430xG461x wird erkannt
3) per msp430-gdb das Programm hochladen
-> Fehlermeldung "Memory access error while loading section .text."
Im verbose-Modus gibt mir der gdb noch folgende Details:
1 | monitor erase all
|
2 | @"Erasing target flash - all..."
|
3 | @" Erased OK\n"
|
4 | 39^done
|
5 | (gdb)
|
6 | load Debug\foo
|
7 | 27+download,{section=".text",section-size="5264",total-size="47534"}
|
8 | 27+download,{section=".text",section-sent="988",section-size="5264",total-sent="988",total-size="47534"}
|
9 | 27+download,{section=".text",section-sent="3935",section-size="5264",total-sent="3935",total-size="47534"}
|
10 | &"Memory access error while loading section .text.\n"
|
11 | Memory access error while loading section .text.
|
12 | 40^error,msg="Memory access error while loading section .text."
|
13 | (gdb)
|
In diesem Beispiel wurde der Download nach der Übertragung von 3935
Bytes abgebrochen. Somit wurde der Code nicht vollständig kopiert.
Die Anzahl der übertragenen Bytes variiert mit jedem Durchlauf -
erfolgreich abgeschlossen wurde die Übertragung in der letzten Zeit
jedoch nicht mehr.
Zu meiner Hardware:
* der MSP wird extern durch 3.3V stabil versorgt
* der JTAG-Controller ist an den Parallport angeschlossen
Meine Software:
* Windows XP
* Eclipse v3.3
* mspgcc - sowohl das Release von Februar 2007, als auch von Mai 2006
Meine gdb-Einstellungen:
1 | target remote localhost:3333
|
2 | set remoteaddresssize 16
|
3 | set remotetimeout 9999
|
4 | set download-write-size 512
|
5 | set remote memory-write-packet-size 512
|
6 | set remote memory-write-packet-size fixed
|
7 | set remote memory-read-packet-size 512
|
8 | set remote memory-read-packet-size fixed
|
9 | target remote localhost:3333
|
10 | monitor erase all
|
11 | load Debug\Foo
|
Das ganze Vorgehen habe ich mit zwei verschiedenen JTAG-Controllern auf
zwei Rechnern und mit zwei verschiedenen MSP-Controllern durchgeführt.
Per IAR klappt der Download - der gdb bricht jedoch immer ab.
Hat jemand Ideen, wo mein Problem liegen könnte?
Danke fuer eure Zeit!
Gruesse,
Lars