You are on page 1of 8

PROGRAMADOR DE MICROCONTROLADORES PIC Y

MEMORIAS EEPROM I2C

MANUAL DE USO

Creado por: Michael Van Sint Jan D Revisión 2.0


José Luis Ortiz G. Mayo 2004

TARJETA PROGRAMADORA

ALIMENTACIÓN: 12-20 V AC o
17-21 V DC

CABLE CONECTOR:

Pines DB25 (Al puerto paralelo del PC) Pines DB9 (a la tarjeta)
2 1
3 2
4 3
5 4
10 5
20 9
Tabla 1. Configuración del cable

1
INTERFAZ DE LA TARJETA

Todos los chips a programar deben ponerse con el pin nº 1 en la posición indicada por la
figura 1. El posicionamiento incorrecto puede resultar en un daño permanente al PIC o la
EEPROM y dañar el programador.
Conexiones para In-Circuit Pin 1 – PICs de 40 pines
Serial Programming (ICSP)

Alimentación tarjeta Power Pin 1 – PICs de 28 pines


(AC o DC) ON

Pin 1 – PICs de 18 pines

Conexión cable de
programación (el otro
extremo va al puerto
paralelo del PC)

Pin 1 – EEPROMs I2C

LED Rojo Figura 1


Programación o verificación en curso

Pin 1

Figura 2

2
SOFTWARE DE PROGRAMACIÓN

Existen varios softwares compatibles. Se recomienda utilizar el IC-PROG 1.05A,


disponible gratuitamente en http://www.ic-prog.com

Si se está ocupando Windows NT/2000/XP, debe ponerse el archivo icprog.sys


(disponible en http://www.ic-prog.com/icprog_driver.zip) en el mismo directorio del icprog.exe
y luego de entrar al programa ejecutar lo siguiente:

1. Entrar a Settings → Options.


2. Hacer click en la lengüeta Misc.
3. Hacer click en Enable NT/2000/XP Driver y luego presionar OK.
4. Cerrar el programa y abrirlo nuevamente.

Figura 3

CONFIGURACIÓN

En el menú Settings ir a Hardware (u oprimir F3)

Elegir:
Programmer: TAIT Serial Programmer
Ports: Puerto paralelo donde esté el cable (típicamente LPT1)
I/O Delay: Mayor que 10
Interface: Direct I/O
Comunication: Invert MCLR, Invert VCC

3
Figura 4

VERIFICACIÓN DE CONEXIÓN DE LA TARJETA

La herramienta Hardware Check en el menú Settings permite cambiar manualmente,


una a una, el estado de las señales de programación para verificar que estén llegando
correctamente a los pines respectivos, pudiéndose así comprobar que todo esté bien
configurado.
El procedimiento es el siguiente:
• Entrar a Settings → Hardware Check.
• En Signals Out, aparecen todas las señales disponibles desde el PC al programador.
• Al habilitar Enable MCLR debería encenderse el LED rojo. Si esto ocurre, en general
basta para saber que el programador está listo para ser usado.
• Si se quiere probar todas las señales, se puede medir con un multímetro las conexiones
correspondientes de la base de 40 pines. Tomando como referencia los pines del
PIC16F87X, lo siguiente es lo que debe ocurrir en cada caso:
- Click en Enable Data Out : Pin 40 (RB7) pasa de 0 a 5 V
- Click en Enable Clock : Pin 39 (RB6) pasa de 0 a 5 V
- Click en Enable MCLR : Pin 1 (MCLR) pasa de 0 a 14 V (prende LED rojo)
- Click en Enable VCC Pin 11 (VDD) pasa de 0 a 5 V
(La tierra o referencia de voltaje se encuentra en el Pin 12 (Vss) )

Si no prende el LED rojo al realizar esta prueba es indicación de que el programador no


está listo para ser utilizado. Por favor, refiérase a la sección Solución de Problemas.

4
PROGRAMACIÓN

Una vez abierto el software IC-Prog 1.05A, se verá una ventana como la siguiente:

Figura 5

Para programar un dispositivo siga los pasos que se muestran a continuación1:

1. Elegir el dispositivo a programar en el menú desplegable a la derecha de la barra de


herramientas o bien en Settings → Device
2. Abrir el archivo que se desea grabar en el dispositivo (extensión .hex para el caso del
PIC, generado previamente con algún compilador como el MPLAB, por ejemplo).
3. En las opciones del marco Configuration típicamente se debe elegir:
• Oscillator : XT (correspondiente a Cristal de frecuencia <= 4 MHz)
• Fuses : WDT – Watch Dog Timer
PWRT – Power Up Timer
CP – Code Protect
(Se recomienda deshabilitar el WDT a menos que el programa considere
su utilización, así como el CP para permitir la verificación)

4. Programar el dispositivo haciendo clic en Command → Program All (o tecla F5).


5. Si la verificación automática esta deshabilitada se puede verificar haciendo clic en
Command → Verify (o tecla F6).

1
Se recomienda hacer una prueba de hardware (Hardware Check, como se indica en la página 4) antes de proceder
a programar un dispositivo por primera vez.

5
Solución de Problemas

1. El LED rojo no se enciende al realizar la prueba de hardware indicada en la sección


Verificación de Conexión de la Tarjeta (página 4).

Ø Verifique que la tarjeta programadora esté correctamente alimentada (ver página 1). En
particular, observe si el LED verde (indicador de encendido) se encuentra iluminado.
Ø Configure el software IC-Prog para que funcione con la tarjeta programadora. Para ello,
siga las instrucciones de la sección Configuración (página 3).
Ø Si está ocupando Windows 2000 o Windows XP, puede que el sistema operativo esté
impidiendo el acceso del software al puerto paralelo. Para solucionar aquello, primero
asegúrese de que ha instalado el driver para Windows 2000/XP, según lo indicado en la
sección Software De Programación (página 3). Si el problema persiste, entonces ejecute
la siguiente secuencia:
- Ingrese al menú Settings → Hardware. Cambie el programador elegido de “TAIT
Serial Programmer” a “TAIT Parallel Programmer” y presione OK.

Figura 6
- Intente realizar una prueba de hardware ingresando al menú Settings → Hardware
Check. Recibirá un mensaje como el de la figura 7 indicando que no es posible
realizar la prueba.

Figura 7

- A continuación, ingrese nuevamente al menú Settings → Hardware y vuelva a elegir


el programador correcto, es decir, “TAIT Serial Programmer”, como se muestra en la
figura 8.

6
Figura 8

- Vuelva a realizar la prueba de hardware. Ahora el LED rojo debería encenderse tras
hacer click en la opción Enable MCLR.

2. Al intentar programar el dispositivo, se produce un error tras la fase de verificación.

Ø Verifique que la tarjeta programadora esté correctamente alimentada (ver página 1). En
particular, observe si el LED verde (indicador de encendido) se encuentra iluminado.
Ø Realice una prueba de hardware siguiendo las instrucciones indicadas en la sección
Verificación de Conexión de la Tarjeta (página 4). En particular, intente encender el
LED rojo haciendo click en la opción Enable MCLR. Si el LED rojo no se enciende,
siga las instrucciones indicadas en la parte 1 de esta sección de Solución de Problemas.
Ø Verifique que el archivo que está intentando cargar en el dispositivo es el correcto para
ese dispositivo. Por ejemplo, si Ud. quiere programar un microcontrolador PIC y en vez
de cargar un programa válido (archivo de extensión *.hex) en el dispositivo, intenta
hacerlo con un archivo de texto cualquiera, la programación fallará.
Ø En el menú Settings → Hardware, pruebe aumentando el tiempo de I/O Delay. En
general, valores de 10 o más son necesarios para una correcta programación.
Ø Asegúrese de que el dispositivo a programar está haciendo un buen contacto eléctrico.
En otras palabras, cuando coloque el dispositivo en alguna de las bases insértelo
firmemente para que las patas del chip hagan buen contacto con los terminales de la
base. Posteriormente a la programación, no olvide retirar el dispositivo con cuidado
desde la base. Nunca utilice los dedos para forzar el chip hacia arriba, sino que ocupe
pinzas especializadas para retirar chips o, en su defecto, algún objeto delgado y firme
(como un atornillador) con el que pueda hacer palanca desde un lado y otro.
Ø Asegúrese de que no ha colocado el dispositivo en una posición incorrecta (ver sección
Interfaz de la Tarjeta en página 2).
Ø Verifique que al programar no ha habilitado la opción o “fuse” CP. Esta opción que
significa Code Protect o Protección de Código es una utilidad que permite que el código
o programa que Ud. está cargando en el dispositivo no pueda ser leído posteriormente
desde el dispositivo. Está ideado para evitar que terceras personas puedan copiar su
programa. Sin embargo, también impide que el mismo software IC-Prog (u otro similar)
puedan leer el código para usarlo en la fase de verificación de la programación. Por lo

7
tanto, cuando el software intente verificar si la programación se ejecutó correctamente,
inevitablemente arrojará errores (en general, mostrará error en la primera dirección, o
sea, en la 0000h).

Figura 9

3. Tras colocar un dispositivo de manera incorrecta (“al revés”, por ejemplo) en alguna de
las bases, el programador ha dejado de funcionar.

Ø Como se indicó en la sección Interfaz de la Tarjeta (página 2), el posicionamiento


incorrecto de un dispositivo puede resultar en un daño permanente al PIC o la EEPROM
y dañar el programador. Esto sucede porque circula más corriente que la permitida por
algunos de los componentes del programador a causa del error del usuario. El
computador no debería verse afectado por esta falla. En general, los componentes más
sensibles son los transistores y los reguladores de voltaje de la placa. Intente
reemplazarlos o comuníquese con los fabricantes del programador para obtener una
solución.

Para más consultas, comuníquese con José Ortiz (jlortiz@puc.cl) o Michael Van Sint
Jan (mvansint@vtr.net).

You might also like