Forum: Compiler & IDEs Debugger geht nicht weiter!


von Christian (Gast)


Lesenswert?

Hallo ich habe folgendes Problem. Ich versuche ein Programm zu debuggen. 
Doch beim Step(F11) geht der debugger nicht weiter und bleibt in der 
ersten Zeile, der Program Counter bleibt bei 0x0001C und zählt nicht 
weiter.

das programm zum testen ist

#include <avr/io.h>
int main (void)
{
  int i=1;
  for (;;)
    {
       i=2;
    }
   return 0;
}

von Εrnst B. (ernst)


Lesenswert?

Ist vermutlich nicht die schuld des Debuggers, sondern der Compiler ist 
einfach zu schlau:

Auf "i" wird nur schreibend zugegriffen, der Wert wird nie gelesen. 
Warum sollte sich der Computer dann die Mühe machen, extra Speicher für 
"i" bereitzuhalten?

Also, Lösungen wären z.B.:
- Mach i "volatile"
- Verwende "i" irgendwo lesend
- Schalte die Compileroptimierungen alle aus.
- Verwende ein "realeres" Beispiel zum Debugger-Testen

von Christian (Gast)


Lesenswert?

Danke Ernst, du hast recht. Ich habe PORTB=i eingefügt und die 
Compileroptimierung ausgeschlalten und nun läuft es.

Danke nochmals.

lg

Christian

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.