Forum: Mikrocontroller und Digitale Elektronik Debug-Probleme mit AVR-Studio


von Elmi (Gast)


Lesenswert?

Hi,

ich versuche mein Projekt per JTAG aus dem AVR-Studio heraus zu 
debuggen. Leider ist das nahezu unmöglich, da mir das immer in der 
USB-ISR landet, sprich die Codestellen, durch die ich mich eigentlich 
debuggen will, bekomme ich praktisch nie zu sehen.

Gibt es irgend eine Möglichkeit, dem Studio mitzuteilen, dass es diese 
Interrupts ignorieren soll und nicht zum Code der ISR zu springen?

Elmi
von holger (Gast)


Lesenswert?

>Gibt es irgend eine Möglichkeit, dem Studio mitzuteilen, dass es diese
>Interrupts ignorieren soll und nicht zum Code der ISR zu springen?

Den USB Interrupt deaktivieren.
Debuggen per JTAG kann schon lästig sein.
Deshalb nehm ich entweder eine LED oder den UART;)
von Oliver J. (skriptkiddy)


Lesenswert?

Elmi schrieb:
> sprich die Codestellen, durch die ich mich eigentlich
> debuggen will, bekomme ich praktisch nie zu sehen.
Setz nen Breakpoint an die Stelle die du willst.

Gruß Oliver
von Elmi (Gast)


Lesenswert?

holger schrieb:
> Den USB Interrupt deaktivieren.

Naja, so lange der Code normal läuft möchte ich die Interrupts schon 
haben - sonst ist die gesamte Debuggerei sinnlos, weil mein Projekt ohne 
USB nix brauchbares tut.
von Muetze (Gast)


Lesenswert?

Ich kenne das Problem. die Timer laufen scheinbar beim Debuggen auch 
weiter und lösen Interrupts aus. So ist ein Debuggen nur schwer möglich.

Beim Debuggen starte ich mit der normalen Konfiguration (Interrupts 
aktiv) und einem Breakpoint. Wenn das System dann auf den Breakpoint 
aufläuft, setze ich den "Global interrupt enable" im "SREG – AVR Status 
Register" manuell zurück.
Dann kannst Du den Code Schritt für Schritt durchgehen. Wenn das 
Programm weiter laufen soll, dann aktiviere  ich "Global interrupt 
enable" im "SREG – AVR Status Register" wieder.

Hoffe geholfen zu haben.
Muetze
von holger (Gast)


Lesenswert?

>Naja, so lange der Code normal läuft möchte ich die Interrupts schon
>haben - sonst ist die gesamte Debuggerei sinnlos, weil mein Projekt ohne
>USB nix brauchbares tut.

Und wenn du an einem Breakpoint die CPU stoppst dann
läuft USB nicht mehr und wird am PC abgemeldet. Kannst
du also knicken USB und debuggen. Wie bereits gesagt
schaff dir andere Debug Möglichkeiten. So wird das nix.
von Bug (Gast)


Lesenswert?

Setze einen Breakpoint und gehe dann nicht Schritt für Schritt, sondern 
setze den Cursor auf die nächste interessante Zeile und sage "Ausführen 
bis Cursor"
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.