Atmel Studio 6 beim Einzelschritt Debuggen asynchron

Gast #3230290
Lesenswert?

Habe mich jetzt mal ein Projekt unter Atmel Studio 6.0 auf einem XMega 
gestartet.
Debugger ist ein AVRICE MKII, angeschlossen über PDI. Es handelt sich um 
eine eigene Hardware, außerdem nutze ich das ASF. Gcc Optimierungsstufe 
q1.

Mich wundert, dass beim Debuggen im Einzelschritt "Step over" bzw F10 
die Ansicht (Programm-Cursor) in der IDE stark dem tatsächlichen 
Programmlauf hinterherhinkt.
Kann eine Zeile sein, sind auch manchmal bis zu drei, d.h. der uC hat 
u.U. schon die nächsten drei Unterfunktionen abgearbeitet.

An Breakpoints hält das Programm zuverlässig an, aber der "Step over" 
ist kaum zu gebrauchen und "Step into" / F11 unter der zerklüfteten ASF 
wenig sinnvoll.

Hatte jemand ähnliche Probleme, kann man das unkontrollierte "Vorlaufen" 
irgendwie verhindern?

Mit einefachen Megas unter Studio4 habe ich am gleichen Debugger sowas 
nie gesehen.
Gast #3230425
Lesenswert?

Habe die Optimierung ganz ausgestellt, bringt aber nichts.

Anbei ein kleiner Code-Auschnitt als Screenshot:
Der Programmcursor steht am gelben Pfeil, aber es wurde schon die 
Routine
lcd_command(0x01) abgearbeitet. Sieht man eindeutig an angeschlossenen 
Geräten.
Die Unterroutinen haben etliche Zeilen Code. Prefetch oder so kommt 
nicht in Frage.

Und wenn man im Einzelschritt weitergeht, springt die IDE plötzlich 
unvermittelt an die absurdesten Stellen im Code.

Wie gesagt, Breakpoints gehen einwandfrei.
Angehängte Dateien:
Gast #3234789
Lesenswert?

Habs nicht im Kopf, aber bei den Einstellungen für Simulator gabs
die Optionen das das Unterprogramme nicht einzel angesprungen werden.
Das ist per deault an.

Siehst du schön am PC der Springt dann lustig rum...

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren