Debugging
Wörtlich betrachtet bedeutet "Debugging" so viel wie "Entwanzen". Man könnte es auch als "Bugs" entfernen bezeichnen.
=> Fehler im Programmcode suchen bzw die Funktion sicherstellen
Funktionen:
- Steuerung des Programmablaufs, Einfügen von Haltepunkten (Breakpoints)
- Beobachten von Variablen und Registerinhalten
- Modifikation von Variablen und Registerinhalten
Das Debugging in Atmel Studio kann auf zwei Arten durchgeführt werden:
- Auf der Hardware (spezielle
Hardware, bspw. Xplained-Boards von Microchip)
Im Simulator in Atmel Studio
Bei der Verwendung von Arduinos ist allerdings nur die Verwendung des Simulators möglich, weshalb hier auch nur diese Möglichkeit erläutert wird.
Um das Programm debuggen zu können, muss unter Tools ein Simulator anstelle der Hardware ausgewählt werden.
Simulation:
- Kompilieren (Build Solution/F7)
- Start des Debuggens
- Debug-Menü "Start Debugging and Break"
- Funktionstaste "Alt+F5"
- Button in der Symbolleiste (blaues Symbol bestehend aus "Play" und "Pause"-Zeichen)
- Debug-Menü "Start Debugging and Break"
- Schritte in der Simulation (auszuwählen über die Pfeile neben der Brille)
- Abarbeiten der Schritte : Step Over / F10
- bis zum nächsten Breakpoint: Continue / F5
- genauere Detailschritte zu einem Schritt: Step Into / F11
- Detailschritte verlassen: Step Out / Shift+F11
Hier ein Screenshot vom Atmel Studio während des Debuggens:
Abb.:AtmelStudio - Debugging; Quelle: BBS2 Wolfsburg
Breakpoints lassen sich durch einen Rechtsklick auf Zeilenhöhe im grauen Streifen setzen.
Die aktuelle Position des Programms wird gelb hinterlegt im Programmcode angezeigt.
Um eine Variable beobachten zu können, muss sie mit einem Rechtsklick im Editor-Fenster ausgewählt werden.
Die Registerinhalte kann man sich im rechten Teil des Fensters anzeigen lassen. Im selben Fester kann durch einen Wechsel über die unteren Tabs auch der Prozessor mit den verschiedenen Registern angezeigt werden.
Hier noch ein Video dazu: