Professional Documents
Culture Documents
ndice de contenidos
El PIC16F84A
o ndice de contenidos
o Caractersticas del PIC16F84A
o Disposicin y descripcin de patillas
Disposicin de patillas
Descripcin de patillas
o Arquitectura interna
o Memoria de programa
o Memoria de datos
o El direccionamiento
Direccionamiento Inmediato
Direccionamiento Directo
Direccionamiento bit a bit
Direccionamiento Indirecto
o Memoria de datos EEPROM
o Uso de la EEPROM
Lectura de la memoria EEPROM
Escritura de la memoria EEPROM
Verificacin de la escritura
Rutinas EEPROM
o Puertos de E/S
Puerto A
Puerto B
Configuracin de los puertos de Entrada/Salida
Limite de corriente para los puertos
o Temporizador/Contador TMR0
El Prescaler
o Encapsulado y marcado del PIC16F84A
Arquitectura interna
Las altas prestaciones de los microcontroladores PIC derivan
de las caractersticas de su arquitectura. Estn basados en una
arquitectura tipo Harvard que posee buses y espacios de memoria
por separado para el programa y los datos, lo que hace que sean
ms rpidos que los microcontroladores basados en la
arquitectura tradicional de Von Neuman.
Memoria de programa
La memoria de programa est organizada con palabras de 14
bits con un total de 1 K, del tipo Flash, que durante el
funcionamiento es de solo lectura. Slo se ejecutar el cdigo
contenido en esta memoria, pudiendo almacenar en ella una
cantidad limitada de datos como parte de la instruccin RETLW.
En una sola palabra se agrupa el cdigo de la instruccin y el
operando o su direccin.
Memoria de datos
Est organizada en dos pginas o bancos de registro, banco 0
y banco 1. Para cambiar de pgina se utiliza un bit del registro
STATUS (RP0).
Banco 0:
Este banco est formado por 80 bytes, desde la posicin 00
hasta la 4Fh (de la 0 a la 79).
El rea RFS consta de 12 registros que sern utilizados por
funciones especiales del microcontrolador. Comienza en la
direccin 00h y termina en la 0Bh, es decir, de la 0 a la 11.
El rea RGP consta de 68 registros de memoria RAM que
sern utilizados para almacenar datos temporales
requeridos por los programas. Comienza en la direccin 0Ch
y termina en la posicin 4Fh (de la 12 a la 79). Esta parte
es la memoria de registros de propsito general.
Banco 1:
El direccionamiento
Para el PIC solamente existen 4 modos de direccionamiento,
entre los cuales, tres de ellos ya fueron vistos de manera intuitiva
cuando vimos las instrucciones. Los modos de direccionamiento
tratan sobre la forma de mover los datos de unas posiciones de
memoria a otras.
Direccionamiento Inmediato
Direccionamiento Directo
Direccionamiento bit a bit
Direccionamiento Indirecto
Direccionamiento Inmediato
Direccionamiento Directo
Direccionamiento Indirecto
Ejemplo 1:
El registro 05 contiene el
valor 10 h. Incrementamos el registro FSR
El registro 06 contiene el (FSR=FSR+1).
valor 0A h. Ahora apunta a la posicin 06.
Cargamos el valor 05 en el Si leemos el registro INDF, este
registro FSR. retornar el valor 0A h.
Ahora est apuntado el
registro 05.
Si leemos el registro INDF,
este retornar el valor 10 h.
INDF 10 h INDF 0A h
001 . 001 .
002 . 002 .
003 . 003 .
FSR 05 h FSR 06 h
005 10 h 005 10 h
006 0A h 006 0A h
007 . 007 .
008 . 008 .
009 . 009 .
00A . 00A .
00B . 00B .
Ejemplo 2:
Resumen de caractersticas:
Uso de la EEPROM
A continuacin veremos a fondo cuales son los procesos ms
usuales de escritura y de lectura en la EEPROM.
Verificacin de la escritura
Rutinas EEPROM
Puertos de E/S
El PIC16F84 dispone de dos puertos digitales de E/S paralelos
de uso general denominados Puerto A y Puerto B.
Puerto A
El puerto A dispone de 5 lneas de la RA0 a la RA4, en la que
hay que distinguir la A4 o T0CKI (Timer 0 Clock Input) que est
compartida con la entrada para el Timer 0 (TMR0) a travs de un
trigger Schmitt y que cuando se configura como salida es de
drenador abierto, por lo que debe colocarse una resistencia de
polarizacin.
Puerto B
Temporizador/Contador TMR0
El temporizador/contador TMR0 es un registro de 8 bits, es
decir, un particular tipo de registro cuyo contenido es
incrementado con una cadencia regular y programable
directamente por el hardware del PIC. Como es de 8 bits, el
mximo de la cuenta est en 255.
Temporizador/Contador de 8 bits.
Divisor de 8 bits programable por software.
Seleccin de reloj interno y externo.
Interrupcin por desbordamiento.
Seleccin del flanco del reloj externo.
El Prescaler
El PRESCALER consiste en un divisor programable de 8 bits a
utilizar en el caso de que la frecuencia de conteo enviada al
contador TMR0 sea demasiado elevada para nuestros propsitos.
Se configura a travs de los bits PS0, PS1 y PS2 del registro
OPTION.
Ejemplos: