AVR STUDIO Simulation Program Counter

Gast #1094015
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
Gast #1094021
Probiers momentan nur mit ner einfachen main funktion, die zwei integer 
Variablen einen Wert zuweist. Und nicht mal des geht. Spring direkt ans 
Ende von main.
#1094037
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
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

Eine eigene Frage? Dieser Thread ist über 17 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.