www.mikrocontroller.net

Forum: Compiler & IDEs Studio 4.11 Debuggen im Single Step


Autor: Martin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo!

Studio 4.11 / ATMEGA 64 und sicherlich auch andere Derivate


Wenn man Einzelschritte abfahren möchte (mit "Step over" oder "Step
into") und es sind Interupts anhängig, so wird man stets in die
Interruptroutine hineingezwungen, und man hat Mühe, wieder an die alte
Stelle im Hauptprogramm zurückzufinden.

Hat jemand einen Tip, wie man dem Studio dieses abgewöhnen kann?

Gruß Martin

Autor: Boris (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Martin,
deaktiviere doch im SREG das I-Register. Somit sollte kein Einsprung
mehr in die Int-Routinen erfolgen

Gruß
Boris

Autor: Martin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für den Tip - eigentlich naheliegend!

Funktioniert erstmal prima und ist auch oftmals ausreichend.

Das Dumme ist nur, dass man damit die die Interrupt-Ausführung
unterbindet. Die Krönung wäre ein Auführen der Interrupts und trotzdem
ein Single Step auf die folgende Quelltextzeile. Aber das dürfte wohl
nicht möglich sein?

Autor: Michael Wilhelm (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Probiere es doch mal mit der Option "Run to cursor". Platziere den
Cursor dahin, wo du debuggen willst und starte die Option. Da angelangt
stehen natürlich wieder Interrupts an und gehe nicht im Single step
weiter. sondern platziere den Cursor strategisch günstig auf die
nächste zu untersuchende Anweisung oder bedingung.

MW

Autor: Martin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hmmm..

für eine sequentielle Liste kein Problem.

aber oft steht man vor einer switch case anweisung, die viele
verzweigungen hat und obendrein noch im kopf einen funktionsaufruf
enthält.



switch( funktion() )
{
  case 5: ..... break;
  case 7: ..... break;
  case 9: ..... break;
  case 3: ..... break;
  case 1: ..... break;
  default: ....break;
}

Dummerweise kann man aber nur 2 oder 3 breakpoints setzen.

d.h. man kann nur hoffen, dass man die Verzweigung vorhersagen kann....

Autor: Frank Simon (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Letzteres löst du, in dem du die Optimierung im Makefile auf 0 setzt.
Mit freundlichem Gruß
Frank

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.