# Debuggen

## De debugger starten

Debuggen is mogelijk bij Assembly, SDCC en Microbe, als ze als tekstdocument zijn geopend. Hierin, kunt u de stappen regelen via het Debug menu. Er zijn twee manieren om de debugger te starten.

Als het PIC programma al in een circuit is opgestart, dan zal als u op het PIC component dubbelklikt, het programma openen. Bij assembly PIC programma's, zal de debugger voor dat tekst document worden gelinkt met het PIC component. In dit geval, zal het debug menu het PIC programma niet kunnen stoppen - omdat het nu eigendom is van het PIC component.

Als het assembly-bestand al is geopend, dan kunt u de debugger opstarten via het Debug menu. Na de compilatie van het programma, staat de debugger klaar, met het PIC programma gepauzeerd op de eerste instructie. Merk op dat bij het debuggen van high level talen, u het gemarkeerde executie point niet te zien krijgt als er geen regel is dat overeenkomt met de eerste uit te voeren assembly instructie. Klik in dat geval op Volgende om het executie point naar de eerste regel van het programma te brengen.

## De debugger besturen

De debugger kan in een van de volgende twee modus zijn: lopend, en stappend. Tijdens het lopen, zal het PIC programma in realtime worden gesimuleerd. Om te kunnen stappen, moet het PIC programma worden gepauzeerd - naar keuze door te klikken op Onderbreken in het Debug menu, of door te klikken op de pause-knop van het PIC component.

Bij de stap-mode, geeft een groene pijl in de kantlijn van het tekstdocument de volgende uit te voeren regel aan (bekend bij gebruikers van KDevelop). Het kan handig zijn om de kantlijn in te schakelen via het Weergave menu (u kunt het permanent inschakelen via het dialoog voor Bewerken instellen).

Er zijn drie typen voor stappen:

- Stap - Dit voert de geselecteerde instructie uit. De groene pijl gaat daarna naar de volgende uit te voeren instructie.

- Stap over - Als de volgende uit te voeren instructie een call is, of dergelijk, dan zal het een "stap over" de call doen, terugkerend naar de stapmode nadat de call is geëindigd. anders zal over een instructie stappen net zoals een normale stap zijn. Technisch uitgedrukt - de start stack level is recorded, en de uitvoer van het programma is gepauzeerd nadat de stack level terug gaat naar zijn start level.

- Stap uit - Als de geselecteerde instructie in een call is, of dergelijk, dan zal het wachten totdat de call eindigt. Vergelijkbaar met de stap over, dit is vergelijkbaar met het wachten totdat de stack level een niveau lager is dan het start level, als het start level groter is dan nul.

Met breakpoints kunt u de uitvoering van het PIC-programma pauzeren als het een bepaalde instructie heeft bereikt. Om een breakpoint op de door de cursor gemarkeerde regel in te schakelen, gebruikt u naar keuze het Debug menu, of u klikt op de kantlijn van het tekst document.

De Symboolviewer zijbalk rechts toont de waarden van de Special Function Registers. Om de waarde van een variabele in de General Purpose Registers uit te vinden, kan u met uw muis boven de in de instructie voorkomende variabelenaam dat dit register bewerkt. Merk op dat de radix instelling bij de SymboolViewer ook regelt hoe de waarde wordt getoond als de muis boven een variabele zweeft.