7.
Frequently Asked Questions
Look here for answers to frequently asked questions about the MPLAB PICkit 4 In-Circuit Debugger system.
7.1
How Does it Work?
What's in the silicon that allows it to communicate with the MPLAB PICkit 4 In-Circuit Debugger?
MPLAB PICkit 4 In-Circuit Debugger can communicate with Flash silicon via the ICSP
™
interface. It uses the debug
executive downloaded into program or test memory.
How is the throughput of the processor affected by having to run the debug executive?
The debug executive doesn't run while in Run mode, so there is no throughput reduction when running your code,
that is, the debugger doesn’t ‘steal’ any cycles from the target device.
Does the MPLAB PICkit 4 In-Circuit Debugger have complex breakpoints like other in-circuit emulators/
debuggers?
No. But you can break based on a value in a data memory location or program address.
Does the MPLAB PICkit 4 In-Circuit Debugger have complex breakpoints?
Yes. You can break based on a value in a data memory location. You can also do sequenced breakpoints, where
several events have to occur before it breaks. However, you can only do two sequences. You can also do the AND
condition and do PASS counts.
Is the MPLAB PICkit 4 In-Circuit Debugger optoisolated or electrically isolated?
No. You cannot apply a floating or high voltage (120V) to the current system.
Will the MPLAB PICkit 4 In-Circuit Debugger slow down the running of the program?
No. The device will run at any device speed as specified in the data sheet.
Is it possible to debug a dsPIC DSC device running at any speed?
The MPLAB PICkit 4 In-Circuit Debugger is capable of debugging at any device speed as specified in the device’s
data sheet.
7.2
What's Wrong?
Things to consider:
Performing a Verify fails after programming the device. Is this a programming issue?
If
Run Main Project
icon (
)is selected, the device will automatically run immediately after programming.
Therefore, if your code changes the Flash memory, verification could fail. To prevent the code from running after
programming, select
Hold in Reset
.
My computer went into power-down/hibernate mode and now my debugger won’t work. What happened?
When using the debugger for prolonged periods of time, especially as a debugger, be sure to disable the Hibernate
mode in the Power Options Dialog window of your computer’s operating system. Go to the
Hibernate
tab and
uncheck the “Enable hibernation” check box. This will ensure that all communication is maintained across all the USB
subsystem components.
I set my peripheral to NOT freeze on halt, but it is suddenly freezing. What's going on?
For dsPIC30F/33F and PIC24F/H devices, a reserved bit in the peripheral control register (usually either bit 14 or 5)
is used as a Freeze bit by the debugger. If you have performed a write to the entire register, you may have
overwritten this bit (the bit is user-accessible in Debug mode).
To avoid this problem, write only to the bits you wish to change for your application (
BTS
,
BTC
) instead of to the entire
register (
MOV
).
Frequently Asked Questions
©
2020 Microchip Technology Inc.
User Guide
DS50002751D-page 36