I recently picked up the PicKit 2 programmer and I want to make a programming board that will program DIP, SOIC, and SSOP chips of various sizes. For the DIP I will use a ZIF and for the SOIC/SSOP I will just have the outlines on a PCB and put the chip in the right spot and program.
Any tips for the design of this board? Has someone designed a board like this already?
yeah, skip straight to ICSP. I almost never bother with sockets. Consider what you will do, especially with SM packages, if you have to reprogram when the chip is mounted on the target board.
Whenever I deal with SM, the boards are never large enough to add ICSP, and I usually have the code finalized before I actually solder the chip down. The one time I needed to make a change, I soldered 5 wires to the SM and programmed it via ICSP.
here is a pic of a ZIF board I made for my PicKit2...
I've made a couple of different versions, to cater for different VDD / VSS locations on the various PIC chips I use.
Currently working on making a 40pin universal (jumpered) version..
You might try checking the P16PRO40 documentation?, which programs all sizes of PIC's in a single 40 pin ZIF - but uses two seperate Vpp lines switched in the software, you could do the same, but use an SPDT switch to select between them.
You might try checking the P16PRO40 documentation?, which programs all sizes of PIC's in a single 40 pin ZIF - but uses two seperate Vpp lines switched in the software, you could do the same, but use an SPDT switch to select between them.
The problem with the aging P16PRO40 (I have one) is that it's not pinned out for the 14-pin and 20-pin devices.
If it'll help, here's a layout I've used for "programming adapters" (below). You can install a ZIF socket on the 28-40 layout or use 3 inexpensive single-in-line machined pin sockets instead. The little 20 pin layout supports the 8-pin, 14-pin, 18-pin, and 20-pin devices. I have a different layout for 28-40 pin dsPIC devices.
The problem with the aging P16PRO40 (I have one) is that it's not pinned out for the 14-pin and 20-pin devices.
If it'll help, here's a layout I've used for "programming adapters" (below). You can install a ZIF socket on the 28-40 layout or use 3 inexpensive single-in-line machined pin sockets instead. The little 20 pin layout supports the 8-pin, 14-pin, 18-pin, and 20-pin devices. I have a different layout for 28-40 pin dsPIC devices.
I don't think I've got any 20 pin devices to try?, but certainly 14 pin ones work fine. But in any case, the P16PRO40 ZIF principle still holds, and you could easily use a three way switch to select even more devices if required.
if I need to update a box in the field, I much prefer to use a microcontroller that supports a serial boot loader. Using ICSP really limits the cable length a whereas a serial cable can be quite long.
I think I'll look into getting a 20 pin ZIF to program the DIPs and some various SOIC clips for SOIC programming. I'll deal with SSOPs when the time comes. I'm not sure I could even solder them in place.
here is a pic of a ZIF board I made for my PicKit2...
I've made a couple of different versions, to cater for different VDD / VSS locations on the various PIC chips I use.
Currently working on making a 40pin universal (jumpered) version..
If it helps, here's a layout I did using a 40-pin ZIF that's very similar to the ZIF-40 programming adapter from melabs. You place 28 and 40 pin devices in it one way, then turn it around 180 degrees and use the other connector to program 8, 14, 18, and 20 pin devices (even though it's labeled 8-18). The dual-row connectors are used with my melabs Serial Programmer and the single row connectors are used for my home made programmer. You may notice that this layout will also support using 3 single-in-line machined pin sockets instead of a 40-pin ZIF socket.