Está en la página 1de 4

UTILIZACIN DE LA PROGRAMACIN SERIAL IN-CIRCUIT (ICSP)

El Programador puede programar microcontroladores que estn en un zcalo del tipo zif
preparado para tal funcin, o bien instalados en un circuito de aplicacin, mediante la
utilizacin de la Programacin Serial In-Circuit (ICSP).
La comunicacin ICSP requiere cinco seales:
1- ICSPDAT o PGD: Datos de Programacin; es una lnea de datos bidireccional sincrnica
serial.
2- ICSPCLK o PGC: Reloj de Programacin; es una lnea unidireccional sincrnica serial de
reloj que va desde el programador hasta el microcontrolador.
3- VPP: Voltaje de Programacin; cuando es aplicado, el microcontrolador entra en el modo
Programacin.
4- VDD: Suministro de voltaje positivo.
5- VSS: Negativo
En caso de programar un microcontrolador individualmente sobre un zcalo para despus
trasladarlo a la aplicacin, el diagrama de conexionado es como el de la figura 1.


Figura 1
En los data sheet suministrados por el fabricante Microchip y accesibles desde su pgina de
Internet, estn detallados los pines adecuados para la conexin ICSP de cada tipo de
dispositivo PIC.
En general la disposicin de los pines segn el microcontrolador es la siguiente:
Microcontroladores de 8 pines lnea 12F
Pin 1 = Vdd (voltaje positivo)
Pin 4 = Vpp (voltaje de programacin)
Pin 6 = Ck (ICSPCLK PGC)
Pin 7 = Data (ICSPDAT - PGD)
Pin 8 = Gnd (negativo Vss)
Microcontroladores de 18 pines lnea 16F
Pin 14 = Vdd (voltaje positivo)
Pin 4 = Vpp (voltaje de programacin)
Pin 12 = Ck (ICSPCLK PGC)
Pin 13 = Data (ICSPDAT - PGD)
Pin 5 = Gnd (negativo Vss)
Microcontroladores de 28 pines lnea 16F / 18F
Pin 20 = Vdd (voltaje positivo)
Pin 1 = Vpp (voltaje de programacin)
Pin 27 = Ck (ICSPCLK PGC)
Pin 28 = Data (ICSPDAT - PGD)
Pin 8 - 19 = Gnd (negativo Vss)
Microcontroladores de 40 pines lnea 16F / 18F
Pin 11 - 32 = Vdd (voltaje positivo)
Pin 1 = Vpp (voltaje de programacin)
Pin 39 = Ck (ICSPCLK PGC)
Pin 40 = Data (ICSPDAT - PGD)
Pin 12 - 31 = Gnd (negativo Vss)
Nota: El pin Pgm debe conectarse a Vss en los Pic que sean aptos para programacin a bajo
voltaje LVP o bien poner en off esta funcin en la configuracin del dispositivo, ya que en todos
los casos se utiliza el tipo de programacin normal y no la caracterstica LVP. Consultar el data
sheet correspondiente del microcontrolador a programar para la identificacin de este pin. Un
pin PGM no conectado puede interferir con la programacin.
Para la programacin in-circuit, el circuito de aplicacin debe estar diseado para permitir que
todas las seales de programacin se conecten al microcontrolador sin que las mismas se
distorsionen. La Figura 2 muestra un circuito tpico como punto de partida para disear un
circuito de aplicacin para ICSP.

Figura 2
Nota: En los microcontroladores PIC con capacidad de programacin a bajo voltaje LVP,
configurar esta funcin como LVP = off en los registros de configuracin. En su defecto es
necesario conectar el pin PGM hacia Vss para evitar errores en la programacin.
Para una programacin exitosa con ICSP debemos tener las precauciones que se detallan a
continuacin.
Aislar el pin VPP/MCLR
Cuando es aplicado el voltaje Vpp, el circuito de aplicacin necesita tomar en consideracin
que el voltaje tpico de Vpp es +12V.
1- Si el pin Vpp es utilizado como un pin MCLR: el circuito de aplicacin es conectado
tpicamente a una resistencia/capacitor pull up, tal como se recomienda en las especificaciones
(data sheet) del microcontrolador. Hay que tener la precaucin de que el circuito asociado no
baje la velocidad y exceda el tiempo de elevacin de Vpp.
Si se coloca una interfaz con algn botn para el pin MCLR, se recomienda que los mismos
sean aislados del voltaje Vpp mediante el empleo de un diodo o una resistencia limitante tal
como se muestra en la Figura 2.
2- Si el pin Vpp es utilizado como un pin de puerto I/O: el circuito de aplicacin que conecta al
pin I/O quizs no est habilitado para manejar el voltaje de +12V. Se recomienda utilizar un
diodo o una resistencia limitante, para aislar el circuito.
Aislar los pines ICSPCLK o PGC, y los pines ICSPDAT o PGD
Es necesario aislar del circuito a los pins ICSPCLK o PGC y los pins ICSPDAT o PGD, para
prevenir que las seales de programacin sean afectadas por el propio circuito de aplicacin.
ICSPCLK o PGC es una lnea de reloj unidireccional sincrnica serial desde el programador al
microcontrolador. ICSPDAT o PGD es una lnea bidireccional sincrnica serial de datos de
programacin.
Si el diseo lo permite, destinemos estos pines para ICSP. Sin embargo, si el circuito requiere
que esos pines sean utilizados por la aplicacin, diseemos el circuito de tal manera que no
altere el nivel de seal. El aislamiento del circuito variar de acuerdo a la aplicacin. La Figura
2 muestra una posibilidad utilizando resistencias en serie para aislar las seales ICSP del
circuito de aplicacin.
VDD
Durante la programacin ICSP, es necesario que el microcontrolador sea conectado de
acuerdo a la especificacin del mismo. Tpicamente, el suministro de voltaje del
microcontrolador es conectado al suministro de voltaje del circuito de aplicacin. La aplicacin
puede ser alimentada por el programador o externamente.
Es muy importante cuando el programador suministra el voltaje Vdd al circuito, asegurarse que
el capacitor o los capacitores conectados a Vdd de la aplicacin no estn alterando el tiempo
de subida de Vdd, especficamente cuando el programador solo eleva Vdd durante el proceso
de programacin. En estos casos es recomendable utilizar el suministro de tensin externa o
un suministro constante desde el programador.
Longitud de los cables
Minimizar la distancia que deben recorrer las seales ICSP colocando el conector de ICSP tan
cerca del circuito de aplicacin como sea posible. Minimizar la longitud de cualquier cable entre
el programador y el dispositivo del circuito de aplicacin. El objetivo es mantener las seales
ICSP dentro del nivel y las especificaciones de rango para que la programacin sea exitosa.

También podría gustarte