Manual de practicas con el pic 16f84a
Lo se vera a continuación es una manual de practicas, en cual se desarrollaran 3 pequeños proyectos, utilizando el pic 16F84A. Antes de empezar se dará una pequeña introducción a este microcontrolador, así como sus características, y también al lenguaje ensamblador, que es el que se usara para programar el pic.
Características del PIC16F84A
* Repertoriode 35 Instrucciones.
* Todas las instrucciones se ejecutan en un solo ciclo excepto las de salto que necesitan dos.
* Versiones para bajo consumo (16LF84A), de 4 MHz (PIC16F84A-04) y 20 MHz (PIC16F84A-20). Un ciclo máquina del PIC son 4 ciclos de reloj, por lo cual si tenemos un PIC con un cristal de 4 MHz, se ejecutarán 1 millón de instrucciones por segundo.
* Memoria de programa Flashde 1 K x 14 bits.
* Memoria RAM dividida en 2 áreas: 22 registros de propósito específico (SFR) y 68 de propósito general (GPR) como memoria de datos.
* 15 registros de funciones especiales.
* Memoria de datos RAM de 68 bytes (68 registros de propósito general).
* Memoria de datos EEPROM de 64 bytes.
* Contador de programa de 13 bit (lo que en teoría permitiría direccionar 4 KB dememoria, aunque el 16F84 solo dispone de 1KB de memoria implementada).
* Pila con 8 niveles de profundidad.
* Modos de direccionamiento directo, indirecto y relativo.
* ALU de 8 bits y registro de trabajo W del que normalmente recibe un operando que puede ser cualquier registro, memoria, puerto de Entrada/Salida o el propio código de instrucción.
* 4 fuentes de interrupciones:
*A través del pin RB0/INT.
* Desbordamiento del temporizador TMR0.
* Interrupción por cambio de estado de los pins 4:7 del Puerto B.
* Completada la escritura de la memoria EEPROM.
* 1.000.000 de ciclos de borrado/escritura de la memoria EEPROM.
* 40 años de retención de la memoria EEPROM.
* 13 pines de E/S con control individual de dirección.
* PortA de 5 bits<RA0:RA4>.
* PortB de 8 bits <RB0:RB7>.
* Contador/Temporizador TMR0 de 8 bits con divisor programable.
* Power-on Reset (POR).
* Power-up Timer (PWRT).
* Oscillator Start-up Timer (OST).
* Watchdog Timer (WDT).
Disposición y descripción de patillas
Disposición de patillas
Disposición de patillas para encapsulado DIL 18:
Descripción de patillas
Nombre | Nº | Tipo |Descripción |
OSC1/CLKIN | 16 | I | Entrada del oscilador a cristal/Entrada de la fuente de reloj externa |
OSC2/CLKOUT | 15 | O | Salida del oscilador a cristal. En el modo RC, es una salida con una frecuencia de ¼ OSC1 |
MCLR | 4 | I/P | Reset/Entrada del voltaje de programación. |
RA0 | 17 | I/O | Puerto A bidireccional, bit 0 |
RA1 | 18 | I/O | Puerto A bidireccional, bit 1 |
RA2 | 1| I/O | Puerto A bidireccional, bit 2 |
RA3 | 2 | I/O | Puerto A bidireccional, bit 3 |
RA4/T0CKI | 3 | I/O | También se utiliza para la entra de reloj para el TMR0 |
RB0/INT | 6 | I/O | Puerto B bidireccional, bit 0
Puede seleccionarse para entrada de interrupción externa |
RB1 | 7 | I/O | Puerto B bidireccional, bit 1 |
RB2 | 8 | I/O | Puerto B bidireccional, bit 2 |
RB3 | 9 | I/O |Puerto B bidireccional, bit 3 |
RB4 | 10 | I/O | Puerto B bidireccional, bit 4
Interrupción por cambio de estado |
RB5 | 11 | I/O | Puerto B bidireccional, bit 5
Interrupción por cambio de estado |
RB6 | 12 | I/O | Puerto B bidireccional, bit 6
Interrupción por cambio de estado |
RB7 | 13 | I/O | Puerto B bidireccional, bit 7
Interrupción por cambio de estado |
Vss | 5 | P | Tierra de referencia|
Vdd | 14 | P | Alimentación |
Memoria de datos
Está organizada en dos páginas o bancos de registro, banco 0 y banco 1. Para cambiar de página se utiliza un bit del registro STATUS (RP0).
Cada banco se divide a su vez en dos áreas:
* RFS (Registros de Funciones Especiales)
* RGP (Registros de Propósito General)
En la figura siguiente nos podemos hacer una idea de cómo están...
Regístrate para leer el documento completo.