by Joe Watson.
The ICSP connector is a 6-pin male header, .1 inch spaced. The signals assigned to the pins are as follows:
Pin Meaning 1 VPP (also /MCLR) 2 VDD 3 VSS (Gnd) 4 ICSP Data (aka PGD) 5 ICSP Clock (aka PGC) 6 AUX (aka LVP)
Pin 1 always connects to the microcontroller's /MCLR pin and is fed something around +13 volts during High-Voltage Programming. At one time, this +13 volt line actually powered the chip programming process. According to what I have read, these days it serves only as an indicator that the programming is taking place and the high voltage source for the actual programming process is developed inside the chip from the VDD supply.
Using an internally developed high voltage supply also set the stage for Low-Voltage programming. Not all PICs support this and the 12F675 is one that does not. In those that do, one of the I/O pins is assigned to indicate if the programming is to use the High- or Low-Voltage programming method as these chips are designed to use either. During the programming process, the signal name assigned to the pin is LVP which stands for Low-Voltage Programming.
For example, on the 16F628A, the LVP pin is pin 10. If the LVP pin is held high when the programming mode is entered, the chip is to be programmed using Low-Voltage programming instead of High-Voltage programming. There are other special requirements involving the timing of the application of VDD and the VPP/MCLR signal but the logic state of the LVP pin is important. So what about PIC programmers that use High-Voltage programming? A requirement these days that did not exist before the existence of Low-Voltage Programming is that the LVP pin must be held low during High-Voltage Programming. If the LVP pin is just allowed to float, sometimes High-Voltage Programming fails because the chip assumes that Low-Voltage Programming is intended.
At one time, pin 6 of the ICSP was simply called AUX and was usually not connected to anything. It was just a spare pin. Now that Low-Voltage Programming is an option, pin 6 has often been renamed as LVP and is expected to be connected to whichever pin on the target microcontroller is assigned by Microchip as the LVP pin. If the PIC programmer supports High-Voltage Programming, connecting ICSP Pin 6 in the programmer to ground (perhaps via a 10K resistor) assures that the LVP pin on the target chip will be low during the High-Voltage Programming cycle.
Several simple PIC programmer circuits leave pin 6 open or just omit it altogether.
|file: /Techref/microchip/icsps.htm, 3KB, , updated: 2013/5/6 19:34, local time: 2021/10/25 08:17,
|©2021 These pages are served without commercial sponsorship. (No popup ads, etc...).Bandwidth abuse increases hosting cost forcing sponsorship or shutdown. This server aggressively defends against automated copying for any reason including offline viewing, duplication, etc... Please respect this requirement and DO NOT RIP THIS SITE. Questions?|
<A HREF="http://www.piclist.com/techref/microchip/icsps.htm"> PIC Microcontroller ICSP: In Circuit Serial Programming</A>
|Did you find what you needed?|
PICList 2021 contributors:
o List host: MIT, Site host massmind.org, Top posters @20211025 Neil, Harold Hallikainen, Alan Pearce, RussellMc, Bob Blick, Allen Mulvey, Dwayne Reid, madscientistatlarge, Sean Breheny, Justin Richards,
* Page Editors: James Newton, David Cary, and YOU!
* Roman Black of Black Robotics donates from sales of Linistep stepper controller kits.
* Ashley Roll of Digital Nemesis donates from sales of RCL-1 RS232 to TTL converters.
* Monthly Subscribers: Gregg Rew. on-going support is MOST appreciated!
* Contributors: Richard Seriani, Sr.
Welcome to www.piclist.com!