Está en la página 1de 7

Cmo programar

fcilmente un
PIC

Qu se necesita para trabajar con un PIC

Antes de explicar cmo ha de trabajarse con PIC, queremos comentar


que para poder realizar aplicaciones con un PIC, no es necesario que el
tcnico entienda el proceso que se lleva a cabo dentro del chip; es sufi-
ciente que tenga los conocimientos bsicos en electrnica.
La programacin de un PIC se puede dividir en cuatro grandes pasos
(figura 3.1):

1. Editar (escribir)
2. Compilar (traducir)
3. Quemar (grabar)
4. Probar (verificar)

1. Editar
Consiste en escribir el programa; es decir, hacer una lista de instrucciones
por medio de la cual indicaremos al PIC lo que deseamos que haga. Este
proceso se realiza a travs de un lenguaje especial que se asemeja a
nuestra manera de hablar y pensar.
Para editar el programa utilizaremos el software MPLAB, que Microchip
ofrece gratuitamente en su pgina de Internet (www.microchip.com), el

Figura 3.1 Programador de PIC

PC

Quemar el PIC

Entrenador PIC16F84

Editar
Compilar

Probar
28

Figura 3.2

cual trabaja en el ambiente de Windows; slo hay que teclear las instruc-
ciones (figura 3.2).
Cuando se edita en lenguaje Ensamblador (como el de MPLAB), el
archivo generado tiene una extensin *.asm. Si, por ejemplo, el nombre
del programa es timer, el nombre completo con extensin ser timer.asm.
Ms adelante explicaremos el proceso para editar en otro lenguaje.
Ahora bien, debido a que un PIC slo reconoce instrucciones con 1
o con 0, es necesario un segundo paso.

2. Compilar
Compilar es traducir el programa al lenguaje de mquina para que el PIC
pueda reconocer las instrucciones programadas. Para realizar esta tra-
duccin, se emplea un software que transforma el llamdo Programa
Fuente (aquel que editamos en el paso 1) en otro que s puede comuni-
carse al PIC.
Para compilar el programa, la opcin a utilizar es el software MPASAM,
que tambin es gratuito y forma parte de MPLAB (figura 3.3). Recuerde
que en este proceso el lenguaje que se emplea para traducir las instruc-
ciones es un lenguaje de tipo
hexadecimal, por lo que si el nom-
bre de nuestro programa fuente era Figura 3.3
timer.asm, despus del proceso de
compilado ser timer.hex.

3. Quemar el PIC
Consiste, propiamente, en grabar el
programa en el circuito PIC. Esto
es, a travs de una tarjeta electrni-
ca conectada al puerto serial de una
computadora, se transfieren las ins-
trucciones ya compiladas al circui-
to PIC.
29

Figura 3.4

Cabe aclarar que esta tarjeta electrnica frecuentemente se conoce


como programador de PIC. Pero, como ya explicamos anteriormente, el
proceso de programar es independiente (y nada comparable) a transferir
las instrucciones.
La tarjeta electrnica PICstar Plus, es la opcin que Microchip ofrece
y con la cual se puede quemar toda su lnea de circuitos PIC. Pero, al
contrario del programa MPLAB, esta tarjeta no es gratuita y su costo en
ocasiones es poco accesible. Sin embargo, PICmicroEstudio cuenta, den-
tro de su grupo de PIC bsicos, con una tarjeta Programador de PICs (figura
4), que es mucho ms econmica que la opcin de Microchip.
Con este programador no es posible grabar todos los PIC, pero s los
ms importantes: el PIC16F84 y el PIC12C508, de los que hablaremos
ms adelante. Esta tarjeta ya incluye un disco con el software que se
necesita para usarla (Icprog.exe y Pic2.exe). De esta manera, slo hay
que colocar el PIC en la tarjeta Programador de PICs, abrir el archivo *.hex
(por ejemplo, timer.hex) y hacer clic en la opcin PROGRAMAR.

4. Probar el programa
Se trata de verificar el funcionamien- Figura 3.5
to del programa, o sea, que el PIC
realice efectivamente las funciones
para las que fue programado. Si no
es as, habr que comenzar de nue-
vo con el primer paso de la edicin.
Para probar el programa, se puede
emplear un protoboard, alambrar los
LED o botones, instalar la fuente,
conectar el reloj, y muchas otras
cosas ms.
Pero como no se trata de aprender a
armar circuitos en protoboard sino de
aprender a programar un PIC, conviene ha-
cer uso de una tarjeta proyecto que ya tenga
todo esto y se encuentre lista para ser aplicada.
30

La tarjeta Entrenador PIC16F84 de PICmicro-Estudio (figura 3.5), es


una tarjeta que permite comprobar los programas realizados en los cir-
cuitos PIC y que cuenta con un conector directo para que sea instalada
junto con la tarjeta Programador de PICs, lo que le permite trabajar en este
proceso sin necesidad de desconectar el circuito PIC.

Requerimientos mnimos

Recapitulando, podemos decir que una vez establecido el procedimiento


para programar un circuito PIC, es necesario contar con ciertos requeri-
mientos mnimos. Para el desarrollo de los procedimientos que describi-
remos en este captulo, nosotros utilizaremos:

Una computadora personal

Mnimo Recomendable
386 486 Pentium
Microsoft Windows 95/98 Microsoft Windows 95/98
16 MB de RAM 32 MB RAM
CD-ROM drive Internet Explorer 5.0

Un programa editor y compilador. Como ya mencionamos, MPLAB


contiene ambos programas y es de los ms conocidos.
Una tarjeta electrnica para programar ( puede ser la tarjeta Programa-
dor de PICs).
Un probador de programas (puede ser la tarjeta Entrenador PIC16F84)
Dos integrados PIC16F84-04P.

Una opcin: PICmicroEstudio

Como seguramente usted ya se dio cuenta, la programacin de PIC re-


presenta 50% del aprendizaje. Esto quiere decir que la prctica es funda-
mental para dominar la tcnica. Ahora bien, como ya sealamos, para
programar un PIC, adems del software para editar y compilar (que se
obtiene gratis de Internet), se requiere de dos tarjetas especficas: uno
para, propiamente, quemar o programar el PIC, y otro para comprobar
su funcionamiento.
Para solucionar el problema del gasto que implica adquirir estos cir-
cuitos, queremos presentarle una opcin accesible: PICmicroEstudio.
El propsito del PICmicroEstudio, un proyecto desarrollado por el
autor de este libro, es capacitar al estudiante o tcnico en electrnica en
el uso de los microcontroladores, pero enfocndose al aspecto prctico y
a travs de tarjetas proyectos. Cada una de las tarjetas explora un rea
especfica de la amplia variedad de aplicaciones de los PIC.
31

Figura 3.6

A diferencia de otros medios de enseanza, los proyectos


PICmicroEstudio permiten al estudiante o tcnico concentrarse directa-
mente en el aprendizaje de la programacin y aplicaciones de los PIC, en
vez de invertir su tiempo en hacer conexiones en protoboard o en armar
kits (figura 3.6)

Los proyectos

Los proyectos que actualmente ofrece PICmicroEstudio abarcan tres reas


especficas, las cuales estn diseadas para lograr un aprendizaje gradual.
Esta vez haremos una descripcin ge-
neral de algunos de ellos, aludiendo a
su nombre tcnico; y en el captulo 4 Figura 3.7
se abordarn algunos de los proyectos
de manera individual, con explicacio-
nes ms detalladas y con sus aplicacio-
nes prcticas.

PIC bsicos
Son proyectos en los que se pueden
poner en prctica los primeros cono-
cimientos adquiridos, y por eso son
muy importantes para estudiantes y
tcnicos que se inician en el mundo
de los PIC (figura 3.7).

Programador de PIC. Indispensable


para iniciarse en la programacin
de PIC. Es un circuito quemador
que se conecta al puerto serial de la
computadora, y que no requiere de
ninguna fuente de alimentacin ex-
32

terna. Cuenta con un conector que le permite funcionar de manera


serial con el Entrenador.
Entrenador. Complemento del circuito Programador. Es una tarjeta
que hace posible comprobar las programaciones realizadas en los PIC,
y que dispone de un conector directo al Programador de PICs; y a su
vez, esto permite trabajar de tarjeta a tarjeta sin desconectar el PIC.
Control de motor de pasos. En este proyecto se presenta un circuito que
desarrolla las funciones de adelante, atrs y alto, para el control de un
motor. Puede conectarse a una computadora, desde la cual se controla
todo el proceso.
Fuente regulada y cargador de bateras. Pese a que realmente no es un
proyecto para el trabajo directo con PIC, se requiere para alimentar
algunos otros proyectos.
Est integrado por un regulador de voltaje universal variable, con el
que se proporcionan voltajes de 0V a 18V (dependiendo del tipo de
transformador que se instale a la entrada). Una prestacin adicional,
es que puede utilizarse como cargador de bateras de tipo seco.

PIC intermedios
Son aplicaciones enfocadas a dar solucin a procesos especficos. Gene-
ralmente se trata de proyectos ms desarrollados, que permiten avanzar
en el aprendizaje de la programacin (figura 3.8).

RS232 Entrenador. Proyecto que se utiliza para entender la manera en


que un PIC interacta con la computadora, conectndolo a travs del
canal RS232 (que es el medio de comunicacin entre ambos). Con este
circuito se aprecia la manera en que la computadora enva informa-
cin al PIC (encendiendo los leds), o en que el PIC enva informacin
a la computadora (datos en pantalla).
RS485 Entrenador. A diferencia del protocolo anterior, este protocolo
es mucho ms poderoso. En esta tarjeta se describe ampliamente cmo
interconectar va dos hilos, dos o ms microcontroladores.

Figura 3.8
33

PIC master
Figura 3.9
Proyectos listos para instalarse en pro-
cesos industriales o mquinas-herra-
mientas, que ya requieren un mayor
dominio del proceso de programacin
(figura 3.9).

Mdulo de 5 entradas y 3 salidas con


relevadores. Casi un PLC. Con esta tarjeta, se
puede llevar a cabo una gran variedad de aplicacio-
nes reales. Est lista para ser instalada en un proceso
industrial o en una mquina-herramienta.
Mdulo de 4 dgitos con puerto RS232. Controla un nmero de 4
dgitos, desde una computadora o desde cualquier microprocesador.
Recibe el nmero en cdigo ASCII de manera serial, y lo despliega en
un display. Puede utilizarse en proyectos en los que se contabilicen
procesos.

Programacin de un PIC

Microchip tiene disponible una gran variedad de circuitos integrados


programables PIC, entre los que por su popularidad destaca el PIC16F84.
Las caractersticas de este circuito lo hacen particularmente accesible,
que incluso podramos atrevernos a decir que es el mejor amigo del
programador de PIC.

El circuito PIC16F84
En la figura 3.10 se muestra un dibujo del integrado PIC16F84, con los
nombres de sus pines o terminales. Es importante que observe con dete-
nimiento, y trate de memorizar esta
figura, as le ser ms fcil seguir las Figura 3.10 PIC16F84
instrucciones. Veamos la distribucin
de sus terminales: 1
+ RA2 RA1

Terminal 5 (tierra) RA3 RA0

Terminal 14 (+5 VCD) 4MHz


15 PF
RA4
Terminal 15 y 16 (Clock) con un cris-
tal de 4 MHz y un par de RST
condensadores de 15pf. +
Terminal 4 (Reset) con una resisten-
cia a positivo +5. De esta manera, si RB0 RB7

la terminal 4 se mantiene en 0
RB1 RB6
(cero), el PIC estar inactivo. Y cuan-
do cambia a 1 (uno), el PIC arranca RB2 RB5

y comienza a ejecutar el programa RB3 RB4 18


desde el principio.