|
by Phil Anderson
Start ı Humble
Beginnings ı Application Circuit Example
ı The End Result ı Sources
and PDF
HUMBLE BEGINNINGS
As I mentioned, when I first read all
of the selected datasheets and application notes on ICP, it seemed
confusing, so I took it step by step.
The notes say I have a choice: use high
or low voltage programming, depending on the state of the LVE configuration
bit. Whatıs that about? If I use low voltage (i.e., 5 V) then I wonıt
need to provide a high voltage. However, I see that if I use a low
voltage for programming I must dedicate an I/O line to control that.
In most cases, I donıt wish to do that.
Now, it started to make sense. If I
use a high voltage on pin 1, Iıll have to isolate the application
circuit from that pin to prevent damage. Also, I guess I need to keep
the application circuit from loading VDD supplied by the
chip programmer, because the programmer doesnıt supply much current.
And, I have to make sure the clock and data pins donıt have too much
capacitance on them, otherwise theyıll slow down the programming pulses.
In addition, one application note included
an ICP programming interface. I wondered, at first, if this was a
requirement for ICP. After some study, I saw that it depends.
If your circuit cannot be isolated from
the chip to be programmed, then a special programming interface is
indeed required. Rise times for the clock and data lines must be preserved.
However, if the application circuit can be isolated easily, then a
chip programmer does just fine.
So, where did that leave me? Letıs cut
through all the red tape and application notes. Letıs demystify ICP.
First, note that chip programming and ICP are essentially "the
same thing. Here are their similarities.
With care, you can use your chip programmer
for ICP. For example, if you're working with a ı16F873, you can use
your PICSTART PLUS programmer and MPLAB. In addition, the data format
is the same. The file format for chip programming and ICP is the same.
It always was the same. ICP issues simply deal with circuit loading
of the programmer interface. Your chip programmer was not designed
to drive application circuits.
Also, your programmer supplies the same
signals called for in an ICP programmer. The microcontroller chip
demands the same signals for programming, regardless of whether it
is in or out of a circuit during programming. Lastly, if the chip
soldered in the circuit can be electronically isolated and cabled
to your programmer, you can program it in-circuit. This fact says
it all. If the chip is isolated and the cabling is kept short, the
assembly is the same as if the chip was originally placed in the programmer.
Itıs the same thing. Oh! The datasheet didnıt say that?
PREVIOUS NEXT
Circuit Cellar provides up-to-date information for engineers. Visit
www.circuitcellar.com for
more information and additional articles.
For subscription information, call (860) 875-2199, subscribe@circuitcellar.com
or subscribe online.
ıCircuit Cellar, the Magazine for Computer Applications. Posted with
permission. |