Jump to content
Alistair George

Idc Header Solution Needed For Debugging W/pickit 2

Recommended Posts

Hi I wish to debug PIC12F683/PIC10F206/PIC16f684, which require a header part ICD Header, AC162059 etc which is quite expensive.

 

Does anyone have any information for clone or alternatives which enable debugging the various chips that need header connectors?

Thanks vm,

Al.

Share this post


Link to post
Share on other sites

The PICs you listed each require a separate ICD header

PIC		  HEADER	 ICD bondout PIC
---------	--------   ---------------
PIC12F683	AC162058   PIC12F683-ICD
PIC10F206	AC162059   PIC16F505-ICD 
PIC16F684	AC162055   PIC16F684-ICD

 

The problem is the critical debug bondout chips are only available from Microchip and they only sell them with a header. That gets real expensive real fast and unless you are developing commercially, is hard to justify. The -ICD PICs are no more robust than an ordinary PIC so you had better be ***ing careful to avoid blowing one.

 

There is a workaround for parts with the 14 bit core.

If you read TB020 then TB033 you will see that it was possible to develop for PIC12C671/672 (OTP 8 pin 14 bit core) using a PIC16C72 emulator which itself may be emulated by a PIC16F873 for which a PIC16F873A is a drop in replacement and is easily available and supported for PICkit 2 debugging.

 

A similar approach will let you develop on a PIC16 with built in ICD for the PIC12F683. The key is to choose a PIC with build in ICD that is a good match to the peripherals and register map of the target device then work around the differences by jumpering ADC pins and some conditional code.

You *may* need to use some conditional defines to remap registers and bit names. It could be easier to 'hack' a copy of PIC12F683.h then include *that*

instead of system.h e.g.

#include "emulate12F683.h"
#include <boostc.h>

 

For the PIC10F206 target you are S.O.L. as there is *NO* 12 bit core support in the current SourceBoost package nor any plans announced for future support. As it isn't code compatible with the 14 bit core developing on a PIC16 for it is not really a useful option, though you could work in assembler sticking religiously to the 12 bit instruction set then port the debugged result.

 

For the PIC16F684, the same cross development approach described above is usable.

 

Personally I usually avoid the low pin count parts. If you stick to 18/28/40 pin pics there is always a reasonably code compatible part that will drop into the same socket and support ICD. Unless you are going to volume production the extra cost is negligible compared to the time saved. A SSOP PIC16F88 is still hand solderable but is pretty small . . .

 

The extra pins allow you to dedicate the ICSP/ICD pins and have hassle free development. At 20 units, I *might* consider using a cheaper non-ICD capable part with the same footprint. At 200 units its probably time to look at low pin count parts again :(

Edited by IanM

Share this post


Link to post
Share on other sites

Hi Ian.

Its a requirement for the lower pin count because there will be several thousand devices used.

It looks like the only method thats practical at the moment is to take part of your suggestion of using an alternate part, and workaround by defining the different parameters. Using a self built debug board which plugs into a development board using DIP socket. Thanks for confirming there are no alternatives.

Cheers,

Al.

Edited by Alistair George

Share this post


Link to post
Share on other sites

With that sort of quantity to be built, after getting the rough 'proof of concept' debugging done on a suitable PIC16, probably on a development board for convenience, I'd invest in the proper header. No point in fighting the quirks of the cross development approach once you have managed to get the holy smoke to stay *IN* the PIC. One header amortised over 1000 units is less than 2p each so is worth it for a commercial user even if it just doesn't make sense for the hobbyist.

 

Headers for all the parts you mentioned + the Pickit 2 RJ12 adaptor (though you can make that up as a 6 pin header to RJ45 RJ12 plug cable easily enough) won't come to the price of a decent dinner for two and will save you many late nights . . . .

Edited by IanM

Share this post


Link to post
Share on other sites
Headers for all the parts you mentioned + the Pickit 2 RJ12 adaptor (though you can make that up as a 6 pin header to RJ45 plug cable easily enough) won't come to the price of a decent dinner for two and will save you many late nights . . . .

Yes, I guess your are right; its just the Scots ancestry in me and a penchant for DIY :-(

Share this post


Link to post
Share on other sites
Headers for all the parts you mentioned + the Pickit 2 RJ12 adaptor (though you can make that up as a 6 pin header to RJ12 plug cable easily enough) won't come to the price of a decent dinner for two and will save you many late nights . . . .

Yes, I guess your are right; its just the Scots ancestry in me and a penchant for DIY :-(

I was less than pleased myself when I discovered that the -ICD pics were'nt advertised anywhere. Note, its RJ12 above, not RJ45. Definitely the 6 pin connector . . .

I reckon one can do a neater job of the lead than the official offering. Its a adaptor board with a 6 pin 0.1" header on one end and a RJ12 socket on the other that you then use an ICD2 style RJ12 to RJ12 lead with. If one cant do a nice strain-relived job of splicing a 0.1" header plug onto a cable, one shouldn't be in this game and that avoids the need for the little board. Keep it SHORTER than the official cable - there is a known cross talk problem for which the official cure is strip the sleeve and spread the wires out some.

Share this post


Link to post
Share on other sites

Your content will need to be approved by a moderator

Guest
You are commenting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoticons maximum are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

×