Enhanced Event Breakpoints

Last modified by Microchip on 2023/12/20 19:02

For a definition of event breakpoints, see the MPLAB® X IDE Help, “New Breakpoint Dialog”. Additional events for emulation headers are:

  • Break on MCLR reset
  • Break on execution out of bounds
  • Break on trigger in signal

When creating a new breakpoint or customizing an existing breakpoint using an emulation header, additional actions are available for each event breakpoint:

ActionDescription
Breakbreak (halt) execution per option specified
Trigger outemit a trigger out pulse per option specified
Break and trigger outbreak (halt) execution AND emit a trigger out pulse per option specified

Event breakpoints may be found and set up on the New Breakpoint Dialog (Debug > New Breakpoint) by choosing Event as the Breakpoint Type. After the breakpoint is created, it may be edited by right-clicking and selecting Customize.

Execution Out-of-Bounds Detection

An emulation header can be used to detect out-of-bounds execution of code. Out-of-bounds code execution is detected by an event breakpoint that watches for PC values that exceed the available program memory of the emulated MCU. The out-of-bounds code execution condition is typically caused by a computed GOTO or CALL that erroneously computes the index, or by loading PCLATH with an incorrect value. Once code is halted due to the execution out-of-bounds event breakpoint the ‘Previous PC’ functionality can be used to identify the offending instruction.

The Out-of-bounds break option may be found and set up on the New Breakpoint Dialog (Debug > New Breakpoint) by choosing Event as the Breakpoint Type and checking Break on execution out of bounds. After the breakpoint is created, it may be edited by right-clicking and selecting Customize.

Break on Trigger In/Emit Trigger Out

An emulation header can be set up to break on a trigger in. For details on this type of trigger, see “Trigger In/Out”.

Also, the emulation header may be set to trigger out or break and trigger out when an enhanced even breakpoint it hit. For details on this type of trigger, see “Trigger In/Out”.

Back to Top