AVR STUDIO Simulation Program Counter

Gast #1094015
Lesenswert?

Hallo Leute,

probier mich das erste mal mit AVR Studio in Verbindung mit WinAVR.

Zunächst mal kontrolliere ich meinen Code nur über eine Simulation. Das 
Kompilieren klappt wunderbar, und der Simulator setzt den Zeiger auch 
richtig an den Anfang der Mein() Funktion. Ab da an geht's aber nicht 
richtig. Mach ich nen einzelnen Step springt das Programm sonst wo hin, 
aber nicht zum nächsten Befehl.

Weiß einfach nicht wo der Fehler liegt. Auf alle Fälle Danke im 
Vorhinein.

Gruß

fox
#1094037
Lesenswert?

Ahlso meine erste Vermutung wären die Compileroptimierungen. Wenn du wie 
du sagtest nur eine sehr einfache Funktion hast, dann kann es sein dass 
diese vom Compiler wegoptimiert wurde.

AvrStudio geht beim debuggen her und nimmt sich für die Zeilenreferenzen 
den generierten Assemblercode. Wenn also der Compiler deine einfache 
Funktion von zB 3 Zeilen auf eine optimiert hat dann würde auch beim 
debuggen alles wie eine einzelne Zeile übersprungen.

Zum Testen kannst du die Optimierungen ausschalten. Das machst du indem 
du unter "Project->Configuration Options" im Dropdown bei Optimization 
anstatt -Os einfach -O0 auswählst, dann sollte alles exakt übernommen 
werden beim compiliern.

lg,
Gerald

edit: ah seh grad deinen code im anhang ... ja genau das ist ein 
beispiel dafür was beim compiliern wegoptimiert wird ;)
Gast #1094044
Lesenswert?

Vielen Dank. Das war das Problem. Über die Optimierung bin ich auch 
schon drübergeflogen und dachte -Os bedeutet Optimierung aus. Mit -O0 
klappt alles wunderbar.

Vielen Dank für eure Hilfe.

Gruß Marco

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