|
CÓMO PROGRAMAR UN PIC? |
|
|
|
El primer paso importante es ver el diagrama de pines del PIC16F84, en el cual se observa como están distribuidos sus pines. Este circuito integrado cuenta con 2 puertos configurables como entradas o salidas según sea el caso y consta de 18 patas las cuales se encuentran asignadas de la siguiente manera:
|
||
|
|
|
|
El puerto A está denotado por el color Azul oscuro, el cual tiene sólo cinco pines que puedes configurar como entrada o salida. La pata 3, o sea, RA4/TOCKI puede ser configurado a su vez como entrada/salida o como temporizador/contador. Cuando es salida se comporta como colector abierto, por lo tanto debemos poner una resistencia Pull-up a Vcc de 1 Kohm. Cuando es configurada como entrada, funciona como disparador Schmitt Trigger por lo que puede reconocer señales con un poco de distorción. El puerto B está denotado por el color anaranjado, y tiene ocho pines que igualmente se pueden configurar como entrada o salida. Los pines 15 y 16 son únicamente para el oscilador externo el cual estudiaremos con más detalle más adelante. El pin 4, o sea, el Reset se debe conectar con una resistencia de 10 Kohm a Vcc para que el Pic funcione, si lo queremos resetear entonces pondremos un micropulsador con una resistencia de 100 Ohm a tierra. La máxima capacidad de corriente para los puertos se muestra en la siguiente tabla:
|
|
PUERTO A
|
PUERTO B
|
|
|
MODO SUMIDERO
|
80 mA
|
150 mA
|
|
MODO FUENTE
|
50 mA
|
100 mA
|
|
or último tenemos los pines 14 y 5 que son la alimentación la cual no debe sobrepasar los 5 Voltios. Para esto nos aseguramos poniendo un regulador de voltaje (7805) en nuestro circuito. Es importante denotar que los pines de los puertos no utilizados los debemos conectar a +5V (Vcc) con una resistencia de 10 Kohm. Oscilador Externo: Es necesario para que nuestro PIC pueda funcionar, puede ser contectado de cuatro maneras diferentes. En la siguiente tabla encontraras los diagramas necesarios para su conexión y una brebe descripción de cada uno.
|
|
RC
|
|
|
|
XT
|
|
|
|
HS
|
|
|
|
LP
|
|
|
|
El siguiente paso importante para tener claro como debemos empezar a programar es conocer la tabla de registros. Esta tabla está dividida en dos partes llamadas BANCO 0 y Banco 1. Nos debemos interezar momentáneamente en: STATUS, PORTA, PORTB, TRISA y TRISB. Para que nuestro PIC pueda trabajar debemos configurar sus puertos segun sea el caso, como entrada o como salida, haciendo antes la acotación que si le asignamos un CERO(0) a un pin éste será SALIDA y si asignamos un UNO (1) éste será ENTRADA. Esta asignación de pines se hace programando los registros TRISA y TRIS B. TRISA es el registro donde se almacenan los bits que asignan un pin como entrada o salida del PUERTO A. Recordemos que el puerto A sólo tiene 5 pines, por lo tanto un ejemplo de esto sería: Si TRISA (puerto A) es igual a 00110 entonces esto se leería,
|
|
TRISA
|
ASIGNACION
|
ESTADO
|
|
RA0
|
0
|
SALIDA
|
|
RA1
|
1
|
ENTRADA
|
|
RA2
|
1
|
ENTRADA
|
|
RA3
|
0
|
SALIDA
|
|
RA4
|
0
|
SALIDA
|
|
El bit menos significativo se asigna desde RA0. Si TRISB (puerto B) es igual a 00110010, entonces esto se leería:
|
|
TRISB
|
ASIGNACION
|
ESTADO
|
|
RB0
|
0
|
SALIDA
|
|
RB1
|
1
|
ENTRADA
|
|
RB2
|
0
|
SALIDA
|
|
RB3
|
0
|
SALIDA
|
|
RB4
|
1
|
ENTRADA
|
|
RB5
|
1
|
ENTRADA
|
|
RB6
|
0
|
SALIDA
|
|
RB7
|
0
|
SALIDA
|