dsPIC30 Limitations
- General Debug Limitations.
- General Programming Limitations.
- The SLEEP instruction cannot be used when debugging.
- The Watchdog Timer (WDT) cannot be used when debugging.
- When debugging in a repeat loop via single stepping, the debugger or emulator cannot show that the repeat loop is active (RA = 1). Therefore, the watch window will show RA = 0.
- You cannot single step through an interrupt. Due to hardware restrictions, the debugger or emulator cannot jump to the interrupt vector memory location in Single Step mode.
- Incorrect Table Read when single stepping: If single stepping is attempted on a User mode table read operation, it may lead to unpredictable operation. Therefore, you should not single step through a table read instruction. Instead, you should place a breakpoint after the table read instruction and then execute a Run command, thereby “running” through such instructions, for correct debug operation.
- Incorrect Program Space Visibility (PSV) when single stepping: If single stepping is attempted on a User mode instruction that utilizes PSV for the source effective address, it may lead to unpredictable operation. Therefore, you should not single step through a PSV-based instruction. Instead, you should place a breakpoint after the PSV-based instruction and then execute a Run command, thereby “running” through such instructions, for correct debug operation.
Freeze on Halt Limitations
- Serial Peripheral Interface (SPI) module and Peripheral Freeze mode: If the SPI module is operating in Framed Master mode and is generating the serial clock on the SCK pin for an external system, the clock will discontinue in Peripheral Freeze mode.