Hallo,
für ein Projekt an meiner FH soll ich einen MSP430 Controller
programmieren. Als Compiler wurde MSPGCC vorgegeben. Von meinem
Professor habe ich ein kleines Entwicklungsboard erhalten
(MSP-FET430P140). Zu dem Entwicklungsboard gehört ein JTAG-Programmer
für den Parallelport. Auf dem Board befindet sich ein MSP430F169
Controller.
Ich habe bereits ein kleines Beispiel Programm (leds aus dem
MSPGCC\examples Ordner) für den Controller angepasst und erfolgreich
compiliert. Jetzt möchte ich das Programm in den Controller schreiben.
Leider bricht das makefile immer mit folgender Meldung ab:
Wie im MSPGCC Handbuch (http://mspgcc.sourceforge.net/manual/x1467.html)
beschrieben habe ich den Befehl "msp430-gdbproxy --debug msp430" in der
Eingabeaufforderung eingegeben und folgende Meldung erhalten:
Die Installation des giveio Service lief ohne Fehlermeldung ab.
Für das Entwicklungsboard nutze ich eine externe 3,3V
Spannungsversorgung, den 0 Ohm Widerstand R8 habe ich dazu wie im
Handbuch angegeben ausgelötet und auf R9 plaziert.
Parallel zu MSPGCC habe ich WinAVR auf meinem WinXP Rechner installiert
(WinAVR war zuerst installiert). Ein MSPGCC Projekt konnte ich erst
erfolgreich compilieren nachdem ich die Datei "cygwin1.dll" im
WinAVR\bin Ordner umbenannt habe. Möglicherweise liegt mein Problem,
dass ich nicht den MSP430 Controller programmieren kann ebenfalls an der
bereits vorhandenen WinAVR Installation. Möglicherweise liegt das
Problem auch ganz woanders...
Hat vielleicht jemand eine genauere Ahnung wo mein Problem liegen
könnte?
Gruß
Sebastian
Das deutet eher auf ein Hardware-Probem auf dem Target-Board hin. Sind
wirklich die JTAG-Anschlüsse richtig belegt? Ich weiß jetzt nicht aus
dem kopf, wie die R8 und R9 waren, du musst aber auf jeden Fall den
Parallelport-Debugger vom MSP-Board aus mit Strom versorgen, in den
allermeisten Fällen reicht das bissl Saft vom Par-Port nicht aus.
Hmm, das Programmiergerät ist von TI. Alle Steckverbindungen sind so
ausgelegt, dass sie nicht verkehrt angeschlossen werden können. Die
Widerstände R8 und R9 habe ich, wie im Schaltplan angegeben, für eine
externe Stromversorgung umgelötet (s. Anhang).
Als Stromversorgung nutze ich den USB Port und einen 3,3V
Spannungsregler (MAX882), so habe ich mir erhofft, dass ich den
Controller auch in der FH programmieren kann, ohne jede Menge Zeugs
(Kabel und Netzteil) rumschleppen zu müssen. Zwischen USB Vcc und
Spannungsregler habe ich einen 18 Ohm Widerstand gepackt. So sollte der
Regler bis zu 50mA liefern können und im Kurzschlussfall sollte mein USB
Port überleben.
Allerdings habe ich einmal die externe Spannungsversorgung am Board
angeschlossen gehabt, BEVOR ich die Widerstände R8 und R9 umgelötet
habe. Könnte dadurch dass Programmiergerät beschädigt worden sein?
Ich bin mir auch nicht 100%-ig sicher ob ich den Controller richtig in
die Fassung eingesetzt habe. Das Chip Gehäuse hat 3 Markierungen
(kreisförmige Vertiefungen) wobei eine Markierung kleiner ist als die
anderen beiden. Da diese kleinere Markierung einzigartig ist, habe ich
sie als Pin 1/64 Ecke angenommen. Ich kenne mich mit diesen PM64
Gehäusen nicht so besonders aus...
Schon mal vielen Dank für Deine Unterstüzung!
Gruß
Sebastian
Ich habe alles mal durchgemessen:
25-pol Sub-D Kabel -> OK
14-pol JTAG Kabel -> OK
Ich habe auch noch die Verbindungen auf dem Board überprüft und folgende
Abweichungen vom Schaltplan, den ich bei meinem letzten Beitrag
angehängt habe, festgestellt:
JTAG Pin 6 sollte mit XOUT von LFXTCLK verbunden sein
JTAG Pin 10 sollte mit XIN von LFXTCLK verbunden sein
Beide JTAG Anschlüsse werden aber auf dem Board nicht verwendet (keine
Verbindung).
Liegt hier vielleicht der Hund begraben?
Kann ich einen Konflikt mit WinAVR ausschließen?
Gruß
Sebastian
Am WinACR kanns meiner Meinung nach nicht liegen, denn der gdb-proxy
bzw. das JTAG Toll findet den Prozessor nicht mal. Das ist nur ein
Perl-Script, das hat nicht viel mit Cygwin zu tun.
Die beiden Leitungen zu den Quarz-Anschlüssen sind nicht mehr aktuell,
steht aber im User Guide des FET.
Richtig rin sollte er sein, die 1 ist da, wo das tiefere Loch ist, was
auch so bissl glänzt. Wenn du die Schrift lesen kannst, ist die 1 unten
links.
Hast du GiveIO richtig installiert? Wird beim Installationsprozess des
mspgcc Paketes gemacht, dazu muss man Administrator-Rechte haben.
Was passiert, wenn du den GDB-Proxy über das Startmenü startest? Findet
er dann den Prozessor? Das msp430-jtag geht manchmal nicht richtig, aber
finden tut er den Prozzi eigentlich immer.
Hast du mal probiert, die esterne Stromversorgung wegzulassen und über
das FET zu versorgen? Bei wenig Last sollte das auch gehn.
Hallo,
ja GiveIO sollte richtig installiert sein, ich habe vorsichtshalber die
Datei giveio.sys aus dem Windows Ordner gelöscht und anschließend die
"Install GiveIO Service" Batch Datei ausgeführt.
Starten des GDB-Proxy aus dem Startmenü ändert leider auch nichts an der
Fehlermeldung.
Die Fehlermeldung erhalte mit FET- und externe Stromversorgung und
entsprechend umgelöteten Widerstand R8/R9.
Wie ESD empfindlich sind die Controller eigentlich?
Habe den Controller ausgetauscht, bringt leider auch nichts.
Ich habe mehr und mehr den Eindruck, dass das Programmiergerät defekt
ist.
Werde mich wohl mal daran machen müssen, selbst eins zu basteln. Eine
Anleitung dazu habe ich bereits gefunden.
Gruß
Sebastian
ESD-empfindlich sind sie eigentlich weniger, auf Überspannung reagieren
sie aber mit Rauchzeichen.
Der Programmer könnte natürlich auch noch kaputt sein. Ich hab so einen
ganz einfachen mal von Ebay für 10€, da lohnt der Selbstbau nicht. Zumal
man dann ja wieder Fehlerquellen hat.