Watchpoint with S32 Design Studio for S32 Platform 3.3

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Watchpoint with S32 Design Studio for S32 Platform 3.3

Watchpoint with S32 Design Studio for S32 Platform 3.3

Watchpoints are Breakpoints for Data and are often referred to as Data Breakpoints. Watchpoints are a powerful aid to debugging and work by allowing the monitoring of global variables, peripheral accesses, stack depth etc. The number of watchpoints that can be set varies with the MCU family and implementation.

Watchpoints are implemented using watchpoints units which are data comparators within the debug architecture of an MCU/CPU and sit close to the processor core. When configured they will monitor the processor’s address lines and other signals for the specific event of interest. This hardware is able to monitor data accesses performed by the CPU and force it to halt when a particular data event has occurred.

The method for setting Watchpoints is rather more hidden within the IDE than some other debugging features. One of the easiest ways to set a Watchpoint is to use the Outline View. From this view you can locate global and static variables then simply select Toggle Watchpoints.

Outline.png 

Properties for C C++ Watchpoint.png

 

Once set, they will appear within the Breakpoints pane alongside any breakpoints that have been set.

Watchpoint in the breakoints view.png  

Watchpoints can be configured to halt the CPU on a Read (or Load), Write (or Store), or both. Since watchpoints ‘watch’ accesses to memory, they are suitable for tracking accesses to global or static variables, and any data accesses to memory including those to memory mapped peripherals. 

Note : To easily distinguish between Breakpoints and Watchpoints within the Breakpoint view, you can choose to group entries by Breakpoint type. From within the Breakpoints view, click the Eclipse Down Arrow Icon Menu, then you can select to Group By Breakpoint Types as shown below:

Group By Breakpoint Types.png 

As you can see from the above graphic, the option to set a Watchpoint is also available directly from the Breakpoint view.

Adding Watchpoints from Breakpoints View.png 

When set from here, you will be offered an unpopulated dialogue – simply entering an address will cause a watchpoint to be created, monitoring accesses to that location.

Using a Watchpoint on an Address.png 

 

Another place to set Watchpoints within the IDE is from the context sensitive menu within a Memory view.

Adding Watchpoints from Memory View.png 

Unfortunately, the conditional watchpoints in S32 Design Studio for S32 Platform 3.3 may not work in some cases.

Known issues and Workarounds.png

No ratings
Version history
Last update:
‎11-15-2020 01:58 AM
Updated by: