Searching \ for '[PIC]: Development Programmer for ICSP with Vpp-fi' in subject line. ()
Make payments with PayPal - it's fast, free and secure! Help us get a faster server
FAQ page: www.piclist.com/techref/microchip/devprogs.htm?key=programmer
Search entire site for: 'Development Programmer for ICSP with Vpp-fi'.

Exact match. Not showing close matches.
PICList Thread
'[PIC]: Development Programmer for ICSP with Vpp-fi'
2005\10\18@103615 by Ian Chapman

flavicon
picon face
I need to obtain a low-cost development programmer which can programme
PIC16F688 devices in-circuit *without* allowing them to enter run mode.
I'm using internal MCLR, so it's essential that the programmer supports
Vpp-first entry to program/verify mode.

I have a production programmer, but it doesn't support ICSP.  I have an
ICD2, but judging from the limitations displayed by the MPLAB help page,
it doesn't support Vpp-first mode.  I also have a PICkit 1 which appears
to support Vpp-first programming, but which powers up the PIC and allows
code to run normally when programming operations aren't in progress (not
really surprising as PICkit 1 is primarily intended as a demo board).

I'd appreciate pointers to a development programmer which meets these
criteria (and, indeed, a production programmer which can do the same
thing once the project gets further down the line).  Unfortunately, the
spec sheets that I've seen so far don't answer all of these points.

Here's the background to my requirement...

I'm using a PIC16F688 in a 3.3V circuit.  Another device in the circuit
is driven by the PIC, but cannot tolerate more than +3.9V (absolute max)
on its inputs.  The PIC normally runs at 3.3V off the same supply as the
other device, but I've made provision to isolate the PIC VDD supply for
programming as the PIC16F688 requires VDD of 4.5-5.5V for erases/writes
to program memory (see parameter D132 on page 143 of the data sheet).  I
therefore cannot allow the PIC to execute code and activate its outputs
while VDD is in the 4.5-5.5V range for programming.

I think this issue can be overcome completely using an ICSP programmer
which always holds VPP at ~12V whenever VDD is applied, and meets the
relevant VPP hold times when VDD is powered up/down.  As I understand
it, the PIC will never execute code if these conditions are fulfilled.

Many thanks in advance for any suggestions.
--
Ian Chapman
Chapmip Technology, UK

2005\10\18@110351 by Maarten Hofman

face picon face
> I need to obtain a low-cost development programmer which can programme
> PIC16F688 devices in-circuit *without* allowing them to enter run mode.
> I'm using internal MCLR, so it's essential that the programmer supports
> Vpp-first entry to program/verify mode.

I have had no problems doing ICSP programming of a 16F688 with the
simple JDM Olimex programmer. Of course, when using JDM, make sure you
have an IBM compliant serial port first (Dell Lattitude doesn't, MSI
motherboards do). I also tried the USB PicKit 2 programmer that I won,
and it can do ICSP on the 16F688 out of the box as well (it actually
has a power on/off checkbox in the software, so you can make sure the
power remains off before programming). I also used internal MCLR,
though I can't guarantee that either programmer will work in your
project, I just know they did in mine.

Greetings,
Maarten Hofman.

2005\10\18@112614 by Mark Rages

face picon face
On 10/18/05, Ian Chapman <spam_OUTpicTakeThisOuTspamchapmip.demon.co.uk> wrote:
> I need to obtain a low-cost development programmer which can programme
> PIC16F688 devices in-circuit *without* allowing them to enter run mode.
> I'm using internal MCLR, so it's essential that the programmer supports
> Vpp-first entry to program/verify mode.
>
> I have a production programmer, but it doesn't support ICSP.  I have an
> ICD2, but judging from the limitations displayed by the MPLAB help page,
> it doesn't support Vpp-first mode.  I also have a PICkit 1 which appears
> to support Vpp-first programming, but which powers up the PIC and allows
> code to run normally when programming operations aren't in progress (not
> really surprising as PICkit 1 is primarily intended as a demo board).

Which firmware revision does your PICkit 1 have?

The PICkit 1 powers up with Vpp on.   However, you could shut off
power, connect to your circuit and program / verfify, then disconnect
it.  I'm not sure if the M'chip-supplied Windows software
automatically turns on Vdd after programming, but over on the
pickit-devel list at google groups, we have alternative software, or
you could modify the Microchip host software, which is open-source.
But you still must avoid connecting the PICkit to the circuit then
plugging in the PICkit.

Regards,
Mark
markrages@gmail
--
You think that it is a secret, but it never has been one.
 - fortune cookie

2005\10\18@125052 by olin piclist

face picon face
Ian Chapman wrote:
> I need to obtain a low-cost development programmer which can programme
> PIC16F688 devices in-circuit *without* allowing them to enter run mode.
> I'm using internal MCLR, so it's essential that the programmer supports
> Vpp-first entry to program/verify mode.

I just checked, and my programmers use the Vpp before Vdd method for the
16F688.  I think they should do what you want, but haven't verified this
with a scope.  Information about my programmers is at
http://www.embedinc.com/products.  I think you want the EasyProg.

> (and, indeed, a production programmer which can do the same
> thing once the project gets further down the line).

This sounds like a good description of the ProProg.


*****************************************************************
Embed Inc, embedded system specialists in Littleton Massachusetts
(978) 742-9014, http://www.embedinc.com

2005\10\19@122311 by Ian Chapman

flavicon
picon face
Maarten Hofman wrote:
>I have had no problems doing ICSP programming of a 16F688 with the
>simple JDM Olimex programmer. Of course, when using JDM, make sure you
>have an IBM compliant serial port first

OK -- thanks.  That's certainly a low-cost and generally useful option,
but I'm nervous about using a programmer that tries to tap power from the
serial lines with my laptop.  It has a power-saving serial interface that
produces voltages around +/-5V but won't supply much current and enters a
shutdown mode when it doesn't think anything is happening.

Mark Rages wrote:
>Which firmware revision does your PICkit 1 have?

Version 2.0.2

>The PICkit 1 powers up with Vpp on.   However, you could shut off power,
>connect to your circuit and program / verfify, then disconnect it.

I didn't check the behaviour on power-up, but the PICkit 1 definitely
releases VPP and applies VDD after reading or programming the device
using the PICkit 1 Classic software.  That's reasonable behaviour when
it's being used as a demo board, but not in my case.

>... over on the pickit-devel list at google groups, we have alternative
>software, or you could modify the Microchip host software, which is
>open-source.

Thanks for the tip.  I didn't realise before that the source code for the
PICkit 1 is openly available.  I've now downloaded AN258/AN258A and taken
a look.  It looks feasible to hack it to do what I want, although there's
the complication that control of VDD and VPP appears to be shared between
the PICkit 1 firmware and the Windows software.

I'll keep this in mind as my backup option.

Olin Lathrop wrote:
>I just checked, and my programmers use the Vpp before Vdd method for the
>16F688.  I think they should do what you want, but haven't verified this
>with a scope.  Information about my programmers is at
>http://www.embedinc.com/products.  I think you want the EasyProg.

Thanks -- I'm going to try that.  Even if it doesn't do the job, it'll be
useful to have another programmer which can handle dsPICs (using ICSP) as
well.  I didn't realise that there was a low-cost programmer out there
that did that -- obviously I haven't been paying enough attention.  :-)

I assume that I'll need to use the non-dsPIC firmware (PRG17) with the
PIC16F688 as per the comment on the EasyProg page that the "alternate"
version is needed for this device.  In any case, I'll burn a couple of
PIC16F648As with versions 16 and 17 because I'm likely to use both at
some stage.

I'll report back if it solves my problem with the PIC16F688 board.

Many thanks.
--
Ian Chapman
Chapmip Technology, UK

2005\10\19@145804 by olin piclist

face picon face
Ian Chapman wrote:
> I assume that I'll need to use the non-dsPIC firmware (PRG17) with the
> PIC16F688 as per the comment on the EasyProg page that the "alternate"
> version is needed for this device.

The alternate firmware comment was meant to apply to the list below, not
above, although I can see how it was ambiguous.  I've updated the page to
make this clearer.

To be specific, PRG17 is the current "normal" firmware.  It supports all the
listed PICs except 30Fs.  PRG16 is the current alternate firmware which is
intended for 30Fs.  The reason for two firmware versions is that all
algorithms together don't fit in a 16F648A.  To make room for the 30F
support, I had to toss out the 12 bit core and 18F support.  Both firmware
versions contain 16F support.  I'm hoping all versions will be able to
contain 16F support so that any firmware can program a new 16F648A.  You can
use either firmware to program a 16F688.


*****************************************************************
Embed Inc, embedded system specialists in Littleton Massachusetts
(978) 742-9014, http://www.embedinc.com

2005\10\19@150959 by Ian Chapman

flavicon
picon face
Olin Lathrop wrote:
>The alternate firmware comment was meant to apply to the list below, not
>above, although I can see how it was ambiguous.  I've updated the page to
>make this clearer.

Ah... okay.  That makes perfect sense now.

>Both firmware versions contain 16F support.  I'm hoping all versions
>will be able to contain 16F support so that any firmware can program a
>new 16F648A.

That's a good point!

Thanks for the clarifications.
--
Ian Chapman
Chapmip Technology, UK


'[PIC]: Development Programmer for ICSP with Vpp-fi'
2005\11\08@174139 by Ian Chapman
flavicon
picon face
This is a follow-up to a problem that I posted three weeks ago (copy below).
I'm pleased to say that, thanks to help from the PIClist, it has now been
solved.  I'd like to share the outcome in case it assists someone else.

As I hoped, a PIC16F688 can be prevented from running its code during or
after programming/verification/reading by using a programmer which always
drives Vpp to ~12V before Vdd is applied, holds Vpp at this voltage until
after Vdd is removed, and doesn't apply Vdd without Vpp at any time.

This might seem like a straightforward requirement for an ICSP programmer,
but neither the Microchip MPLAB ICD2 nor the Microchip PICkit 1 meets it as
standard -- hence my question about programmers with this feature.

Olin Lathrop pointed me in the direction of his low-cost EasyProg design at
http://www.embedinc.com/products.  I've tried the latest version (with PRG18
firmware and Nov 2005 PC software) and it meets these requirements entirely.
Earlier versions almost did so as well, but allowed code to run for a few
milliseconds on exit from program/verify mode -- a glitch which Olin has
kindly fixed.

I expect there are other programmers out there which also work in this way,
but it's difficult to be sure about this detail of their operation without
trying them, as it's something that's unlikely to appear on a spec sheet.

The PIC16F688 (and others in the new 14-pin family) are handy devices, but
in-circuit programming in a low-voltage circuit is complicated by the need
for a Vdd of 4.5V-5.5V for erase/write cycles.  My own design isolates Vdd,
Vpp/MCLR, and the two serial programming lines on the PIC from the rest of
the circuit during programming using a special header.  However, this would
not be sufficient protection if I/O lines connected to 3.3V components that
are not spec'd for 5V tolerance were allowed to energise with a higher Vdd.
I'm glad to discover that a suitable programmer such as the EasyProg can
prevent this from happening.

I hope that this may be useful information for anyone planning a similar
design.  Many thanks to Olin in particular for his help with the EasyProg,
and to others who offered alternative solutions which I didn't take up on
this occasion but which I've noted for future reference.

On October 18th, 2005, I wrote:
{Quote hidden}

All the best.
--
Ian Chapman
Chapmip Technology, UK

More... (looser matching)
- Last day of these posts
- In 2005 , 2006 only
- Today
- New search...