Forum: Mikrocontroller und Digitale Elektronik AVR Studio - Breakpoints in ISR benutzen?


von Konrad (Gast)


Lesenswert?

Hallo Leute!
Verzweifle hier gerade vor meinem AVR Board. Wenn ich mit AVR Studio 
(mit WinAVR) Breakpoints in eine ISR (oder eine Funktion, die von der 
ISR aufgerufen wird) setze (egal wo, egal wie viele), und das ganze dann 
debuggen will (JTAG), bekomme ich immer folgende Fehlermeldung:

"One or more Breakpoints or Tracepoints could not be set and have been 
disabled.
The program has been stopped at the reset vector. Do you want to 
continue execution?"

Breakpoints die ich z.B. in die Main Funktion setze funktionieren 
hingegen tadellos!

Beim debuggen wurde der Breakpoint dann durch einen durchsichtigen Kreis 
mit Ausrufezeichen drin ersetzt.
Wenn man dort mit rechts draufklickt und sich die Properties anschaut, 
steht dort folgende Warnung:

"Unable to bind Line 113 in file main.c to a program memory address"

Dabei ist Line 113 die, in der der Breakpoint stehen sollte.

Beide Versionen von WinAVR und AVRStudio sind top aktuell.
Was mache falsch????

Danke!

von M. B. (mbode001)


Lesenswert?

Sieh mal in Dein Assembler Listfile, ob die Zeilen, auf die Du 
Breakpoints setzen möchtest im späteren Code überhaupt existieren oder 
nicht vom Compiler wegoptimiert wurden!
Ich debugge mit AVR-Studio + WinAVR + AVR-Dragon und habe keine Probleme 
mit Breakpoints in ISRs. Aber die Fehlermeldung habe ich auch schon 
gehabt, wenn ich auf einer wegoptimierten Zeile anhalten wollte.
Häng doch mal Deinen ISR Code an. Tut der überhaupt etwas?

von Konrad (Gast)


Lesenswert?

In dem Code tue ich nicht wirklich viel (nur dummy Zeugs). Etwa so:

char a = 0;
a++;
if( a > 0 )
{
  char b = a+1;
}
else
{
   a--;
}


Könnte natürlich sein, dass das wegoptimiert wird, weil es ja für den 
Rest des Programms überhaupt keine Auswirkungen hat. Ich werde dem mal 
nachgehen ^^

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.