Electronic – the difference between Microchip and ICD and PICKit


I understand that Microchip has In-Circuit debuggers (ICD) which gives insight into a running PIC (or dsPIC for that matter) in real time. Then we have the ICE which goes a step ahead by replacing the microcontroller within the board and emulate it. The ICE gives full view of what would be happening inside the PIC had there been a real microcontroller on that board there.

Microchip also has something called the PICKit. It can be used to program a PIC. Can it also be used to replace the ICD? I am specifically referring to PICKit 3.

For Easy PIC PRO v7 here is a section for "Programming with ICD2/ICD3". Can the PICKit be used instead or shall I have to buy an ICD?

Best Answer

There is a nice comparison between the PICKit 3, ICD 3, and Real ICE here.

The big difference between the PICkit 3 and ICD 3 is speed -- the PICKit run at USB 1.1/Full Speed (12 Mbs), and the ICD runs at USB 2.0/High Speed (480 Mbs) as does the Real ICE. This really does make a difference.

Otherwise, the PICKit and ICD are similar in features, except the ICD allows for more complex breakpoints, including software breakpoints.

The main difference between the ICD 3 and the Real ICE is that the latter uses the trace capability (like JTAG) built into chips like the PIC32 series. The Real ICE does not replace the microcontroller on the board with one inside the Real ICE (although the name seems to imply that).

The chart says the PICKit is not suitable for production programming, whereas the ICD and Real ICE are. I'm not quite sure what they mean by that, except perhaps the interface to the board is more failure proof. The interface for the Real ICE is on its own little daughterboard, so if you blow the output circuitry, you only have to replace that piece.

I strongly suggest you get an ICD 3 if you can afford it.