Forum: Mikrocontroller und Digitale Elektronik MSP-USB-FET, FlashPro430, IAR und Breakpoints


von Walter Ego (Gast)


Lesenswert?

Hallo,

ich habe seit heute ein wirklich merkwürdiges Problem mit meiner 
Entwicklungsumgebung. Der Reihe nach: Ich arbeit seit geraumer Zeit an 
einem MSP430F5437 unter IAR (Kickstart 4.irgendwas) und alles lief prima 
- bis heute. Als Debugger verwende ich den USB-FET von TI.

Heute habe ich - wie so oft - mein Programm geflasht und musste mich 
plötzlich wundern, warum die Status-LED's keinen Mucks mehr machen. Also 
ich versucht der Sache auf den Grund zu gehen und musste feststellen, 
dass in einigen Registern plötzlich falsche Werte (genau genommen alles 
0) standen. Dieser Fehler trat jedoch nur dann auf, wenn ich einen 
Breakpoint setzte (egal wo) - wenn ich das Progamm ab dem Breakpoint 
weiter laufen ließ und wieder (in diesem Fall händisch) anhielt, waren 
die Register futsch. Wenn ich keine Breakpoints gesetzt habe lief das 
Programm ganz wunderbar. Ein großes Fragezeichen tauchte plötzlich über 
meinem Kopf auf - denn bis gestern Abend funktionierte debuggen 
einwandfrei.

Also kurzerhand einen anderen USB-FET rausgekramt und es mit dem 
versucht - gleiches Fehlerbild. Also die neueste Version von IAR 
(5.irgendwas) gesaugt und damit losgelegt - gleiches Fehlerbild. Das 
Fragezeichen wurde nicht kleiner.

Als nächstes habe ich einen FlashPro430 von Elprotronic hergenommen und 
es damit versucht: Und siehe da, es ging. Aaaaber: Er sprang die 
Breakpoints nur einmal an, danach lief er immer wieder vorbei. Man 
musste die Breakpoints neu setzen (oder deaktivieren/aktivieren) damit 
er sie neu anspringt. Keine Anhnung ob dieses Verhalten beim FlashPro 
normal ist, ich habe den noch nie zum Debuggen benutzt.

Das einzigste was ich seit gestern Abend anders gemacht habe als sonst 
ist, dass ich das erste mal überhaupt den Cycle Counter im IAR (in der 
4er Version) angeschmissen habe. Nun ist es ja so, dass der schon in der 
Hardware vom 5er-MSP lebt und IAR den bloß bedient. Kann es sein, dass 
ich durch den Counter unbewusst irgendwas umgebogen habe und das 
Debug-Interface nicht mehr richtig geht? Habe den MSP natürlich mehrmals 
händisch resettet, hat nix gebracht - komplett stromlos habe ich ihn 
noch nicht gemacht, dazu müsste ich erst eine Batterie auslöten. Die 
Errata kennt diesen Fehler scheinbar nicht (nein, die DMA habe ich nicht 
in Benutzung).

Oh Gott oh Gott, schwall schwall - entschuldigt. Wer kennt dieses 
Fehlerbild?

von Jörg S. (joerg-s)


Lesenswert?

An der Code-Optimierungsstufe hast du nicht zufällig gedreht?

von Walter Ego (Gast)


Lesenswert?

Hallo,

nein, die ist unverändert geblieben. Kann mir aber auch nicht 
vorstellen, dass es damit zu tun haben könnte. Es ist so, dass wenn ich 
ab einen Breakpoint durch das Programm "steppe" sofort die Register 
gecrasht werden. Also sowas:

dint
mov.b  foo, bar       ; 1. Breakpoint
nop                   ; 2. Register okay
nop                   ; 3. Register crashed

von Walter Ego (Gast)


Lesenswert?

Komplett stromlos hat auch nichts gebracht und auf einem anderen Board 
habe ich das selbe Verhalten.

von Walter Ego (Gast)


Lesenswert?

Kurios kurios. Nachdem ich eine etwas ältere Version ausgecheckt habe, 
ging diese anstandslos. Ein Rückbau der neuen Version auf den Stand der 
alten hatte nichts gebracht. Aber ein erneuter Checkout der neuen 
Version brachte die Wende: Es geht wieder mit der neuen Version. Soll 
mir das mal einer erklären.  :-D   1 1/2 Tage verschwendet...

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.