DebuggingUSB-to-UART Configuration Speed ICSP Cable Software for NSDSP Supported Devices
NSDSP On-Chip Debugging (OCD)
NSDSP can only be used for debugging with NSDS and does not support MPLAB or any other third-party debugging software.
Before debugging, NSDS builds a special debugging version of your project and programs it onto your PIC device. This special version allows debugging with NSDSP support.
NSDSP uses on-chip debugging hardware (referred in Microchip documentation as ICD®). Different PIC devices have different OCD capabilities, namely different number of hardware breakpoints. Some PIC devices do not support OCD at all. Please refer to the list of supported devices to see if your device can be debugged with NSDS.
NSDSP supports two different types of breakpoints.
Fixed breakpoints are injected by NSDS before the code is programmed on the chip. Each breakpoint requires space for one extra instruction. The number of fixed breakpoints is virtually unlimited - the only limit is the size of the program memory.
Fixed breakpoints cannot be added, changed, moved, or deleted during debugging session. They can be disabled. However, even if a fixed breakpoint is disabled, it still halts the CPU for a short period of time.
Hardware breakpoints are supported by debugging hardware inside the PIC. Consequently, the number of hardware breakpoints is strictly limited by the hardware.
Hardware breakpoints are more flexible. They may be triggered not only by the execution of the selected point in the code, but also by read or write memory access at the specified location. They can be added, chaged, moved, deleted or disabled as needed.
NSDS uses hardware breakpoints for debugging operations such as stepping in and out of functions. Therefore, if all hardware breakpoints are used up, such operations become unavailable.
NSDSP allows watching unlimited number of variables in data memory while the processor is halted, as well as changing these variables.
NSDSP does not provide any access to program memory while debugging. NSDS maintains a copy of the code programmed into program memory and uses this copy. If program memory changes during debugging, these changes are not synchronized with NSDS data.
|Run||Start code execution at current location.|
|Pause/Halt||Halts the CPU as soon as possible. Periphery may be frozen or keep running depending on the settings.|
|Stop||Stops the program execution and keeps the PIC in reset state.|
|Step In||Executes one instruction and halts.|
|Step Over||If current location is a function call, then sets a breakpoint at the next position and starts execution. The breakpoint will be hit and CPU will halt once the function returns. If current posision is not a function call, acts the same as Step In.|
|Step Out||Sets a breakpoint at the return point of current function. The breakpoint will be hit and CPU will halt once the function returns.|
|Run To Cursor||Sets a breakpoint at the location if cursor in the source file. The breakpoint will be hit and CPU will halt once this line of the source file gets executed.|
© 2007-2017 Northern Software Inc. All Rights Reserved.