Enabling and using watch windows, Setting and running to breakpoints, Toolstick-ek – Silicon Laboratories TOOLSTICK EK User Manual

Page 4

Advertising
background image

ToolStick-EK

4

Rev. 0.2

Changing the values of registers does not require recompiling the code or redownloading the firmware. At any
time, the device can be halted and the values of the registers can be changed. The firmware will continue execu-
tion using the new values. This capability greatly speeds up the debugging process.

The debug windows for the other sets of registers are found in the View

→ Debug Windows → SFR’s menu.

5.4. Enabling and Using Watch Windows

The Debug Windows in the View menu are used to view and modify hardware registers. To view and modify vari-
ables in code, the IDE provides watch windows. Just as with register debug windows, variables in the watch win-
dows are updated each time the device is halted. This section of the User’s Guide explains how to add a variable
to the watch window and modify the variable. The variable T2_Overflow_Count is a counter that stores the number
of times the LEDs blink.

1. If the device is running, stop execution using the “Stop” button or use the Debug

→ Stop menu option.

2. In the File View on the left-hand side of the IDE, double-click on BLINK_LED.c to open the source file. The

source file might already be open.

3. Scroll to the bottom of the source file and right-click on the variable “T2_Overflow_Count”. In the context

menu that appears, select “Add T2_Overflow_Count to Watch” and then choose “Default.” On the right-
hand portion of the IDE, the watch window appears and the T2_Overflow_Count variable is added. The
current value of the variable is shown to the right of the name.

4. Start and stop the device a few times. See that the value of the T2_Overflow_Count is incremented each

time the LEDs blink.

5. When the device is halted, click on the value field in the watch window and change the value to 0. Then

click the Refresh button or select Debug

→ Refresh to write the new value to the device.

6. Start and stop the device a few times to watch the variable increment starting from 0.

Changing the values of variables does not require recompiling the code or redownloading the firmware. At any
time, the device can be halted and the values of the variables can be changed. The firmware will continue execu-
tion using the new values.

5.5. Setting and Running to Breakpoints

The Silicon Laboratories microcontroller devices support up to four hardware breakpoints. A breakpoint is associ-
ated with a specific line of code. When the processor reaches a hardware breakpoint, the code execution stops,
and the IDE refreshes all debug and watch windows. The on-chip debug hardware allows for breakpoints to be
placed on any line of executable code, including code in Interrupt Service Routines. This section provides steps to
set a breakpoint on the line of source code that increments the T2_Overflow_Count variable.

1. If the device is running, stop execution using the “Stop” button or use the Debug

→ Stop menu option.

2. Scroll to the bottom of the source file and right-click on the variable “T2_Overflow_Count”. In the context

menu that appears, select “Insert/Remove Breakpoint.” On the left side of the line in the editor window, a
red circle is added to indicate a breakpoint is placed on the source line.

3. Click the “Go” button or select the Debug

→ Go menu option.

4. After a short time, the IDE will show that the device is halted. A blue line will be placed in the editor window

to indicate where the code execution has stopped.

5. Start the processor a few more times. Notice that the LEDs blink once for every time the processor is

started and the T2_Overflow_Counter also increments by one.

Advertising