PDA

View Full Version : ICSP from EPIC to Breadboard && 16f88



rdxbam
- 13th December 2008, 08:07
regarding the diagram on http://www.microengineeringlabs.com/support/icsp.htm


using the epic programmer and using the wiring schematics from the
page linked above i made up a ribbon cable/10-pin header to connect
to my breadboard so i can program my 16f88's without having to remove
them. i have a few questions...

1. But reading the doc, it looks like the icsp pin 4 should be connected to Vdd when programming, yes? although, i don't see that connection explicitly in the diagram.

2. and the Vpp/pin2 from the icsp header connected to the mclr/Vpp on the pic also in order to program icsp? what exactly is the RESET pullup?

3. and does RB3/PGM/CCP1 really need to be pulled low also?

4. and the breadboard circuit with the pic that is being programmed shouldn't have power on, yes?

Thanks

skimask
- 13th December 2008, 08:32
1. But reading the doc, it looks like the icsp pin 4 should be connected to Vdd when programming, yes? although, i don't see that connection explicitly in the diagram.
If you've got a simple schematic that doesn't draw much power (depends on the how much the programmer can supply), you could connect pin 4 to the PIC Vdd AND to the rest of the circuit to power it. But, it's better to isolate the PIC's Vdd from the programmer's Vdd


2. and the Vpp/pin2 from the icsp header connected to the mclr/Vpp on the pic also in order to program icsp? what exactly is the RESET pullup?
Yes, Vpp from the programmer is connected to MCLR on the PIC. The diode is there to keep the 12v on Vpp from feeding back into the 5v/Vdd line.
RESET pullup - if you don't have any voltage on MCLR at all (i.e. MCLR isn't connected), it'll 'float'...could go logic high, could go logic low. You never really know. So, you pull a little bit of current on a pin to hold it in either level, but no so much current that something else can't pull it in the opposite direction. Good plan for ANY unused inputs is to tie them high or low depending on the pin and it's function. It basically gives you a known logic level to work with.


3. and does RB3/PGM/CCP1 really need to be pulled low also?
Depends on the chip and the config bits. If you've got LVP enabled, then yes, you will. If not, then probably not. It's described in your particular PIC's datasheet.


4. and the breadboard circuit with the pic that is being programmed shouldn't have power on, yes?
You could have power on it...as long as whatever is going on doesn't interfere with the programmer, and the programmer doesn't interfere with whatever is going on. I have most of my projects 'hot' when I reprogram them. Isolate Vpp as described on that page, PGC/PGD are dedicated programming pins, PGM permanently pulled low whether I'm using them or not, the PIC's Vdd is isolated from the rest of the circuit with a diode to prevent the programmer from trying to power the rest of the circuit, Vss is tied with everything else.

That's about it...

rdxbam
- 14th December 2008, 20:13
Hey skimask,

thanks for the explanations...

1. i went ahead and isolated the PIC Vdd from the programmer's Vdd -- safer habit to get into.

2. i'll put a diode in the circuit. appreciate the explanation regarding the RESET pullup.

3. currently there is no need to have LVP enabled for this current project and i have that fuse set to off.

4. wasn't quite sure about having the board "hot" and programmer on at the same time. thanks for your input regarding this. i'll isolate Vdd and be good to go.