+ All Categories
Home > Documents > PIC16F84

PIC16F84

Date post: 27-Jun-2015
Category:
Upload: carlox-ortega
View: 716 times
Download: 1 times
Share this document with a friend
Popular Tags:
18
UNIVERSIDAD NACIONAL DE INGENIERIA INGENIERIA ELECTRÓNICA Eo. PIC 16F84A ELIEZER G. SALAZAR MEDARDO J. RODRIGUEZ Tutor: Ing. CARLOS ORTEGA Abstract This paper will try to provide the best information in regards to PIC 16F84A. As we know this is a very modern electronic device that has in it a number of unique features which give a brief review. The PIC 16F84A not long ago known as PIC 16F84, was designed to meet some of the many instructions and parameters to other devices such as microprocessors can perform. We also intend to demonstrate how it is structured internally, under what parameters can work efficiently, how much memory capacity and has, because of their migration, how easy it is to program and especially as a device of this type has a large number of applications.
Transcript
Page 1: PIC16F84

UNIVERSIDAD NACIONAL DE INGENIERIA

INGENIERIA ELECTRÓNICA Eo.

PIC 16F84A

ELIEZER G. SALAZAR

MEDARDO J. RODRIGUEZ

Tutor: Ing. CARLOS ORTEGA

Abstract

This paper will try to provide the best information in regards to PIC 16F84A. As we know

this is a very modern electronic device that has in it a number of unique features which

give a brief review. The PIC 16F84A not long ago known as PIC 16F84, was designed to

meet some of the many instructions and parameters to other devices such as

microprocessors can perform. We also intend to demonstrate how it is structured

internally, under what parameters can work efficiently, how much memory capacity and

has, because of their migration, how easy it is to program and especially as a device of

this type has a large number of applications.

Page 2: PIC16F84

UNIVERSIDAD NACIONAL DE INGENIERIA

Electrónica Digital II Departamento de Sistemas Digitales y Telecomunicaciones Página 1

Abstracto

En este documento trataremos de darle la mejor información en lo se refiere al PIC

16F84A. Como bien sabemos este es un dispositivo electrónico muy moderno que tiene

en si una serie de características únicas de las cuales daremos una breve reseña. El PIC

16F84A no hace mucho conocido como PIC 16F84, fue diseñado para cumplir con

algunas de muchas instrucciones y parámetros que otros dispositivos como los

microprocesadores no pueden efectuar. También pretendemos demostrar como es que se

estructura internamente, bajo que parámetros puede trabajar de manera eficiente, cuanta

capacidad y memorias posee, porque de su migración, que tan fácil es de programar y

sobre todo como es que un dispositivo de este tipo tiene una gran cantidad de

aplicaciones.

Introducción

El PIC16F84A es un dispositivo electrónico que ha acaparado la industria electrónica en

los últimos años, como bien sabemos este microcontralador pertenece a la familia PIC. Su

fabricante es la empresa Microchip Technologic Inc.

Lo que se pretende en esta presentación es poder conocer las características internas del

PIC, analizar sus diferentes funciones, programaciones y comparar algunas aplicaciones

de este PIC16F84 con respecto a otros PIC de diferentes familias.

Otro aspecto de mucha importancia es que este PIC está diseñado con un nuevo sistema

de seguridad denominado Watchdog cuyas aplicaciones las veremos más adelante al

igual que también analizaremos un poco acerca de la migración de el PIC 16F84 al

PIC16F84A.

Page 3: PIC16F84

UNIVERSIDAD NACIONAL DE INGENIERIA

Electrónica Digital II Departamento de Sistemas Digitales y Telecomunicaciones Página 2

Desarrollo

El PIC 16F84 es un micro controlador cuya función principal es que puede ser

programado para poder realizar diferentes funciones, pero no debemos obviar que

también tiene características especificas internas y que por ende existen algunas

aplicaciones que no podrán ser programadas en este.

Para conocer más acerca de este dispositivo realizaremos un análisis completo de todas

sus características, funciones, capacidades y aplicaciones.

Para iniciar el análisis primero conoceremos sus características tanto físicas como

internas.

Características Técnicas del PIC 16F84A

Repertorio de 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 Flash de 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 de

memoria, 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.

Page 4: PIC16F84

UNIVERSIDAD NACIONAL DE INGENIERIA

Electrónica Digital II Departamento de Sistemas Digitales y Telecomunicaciones Página 3

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 pins 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).

Protección de código.

Modo de bajo consumo SLEEP.

Puede operar bajo 4 modos diferentes de oscilador.

Programación en serie a través de dos pins.

Tecnología de baja potencia y alta velocidad CMOS Flash/EEPROM.

Características eléctricas máximas (no deben ser superadas y de mantenerse por

un tiempo en algún máximo puede dañarse al PIC)

Temperatura ambiente máxima para funcionamiento de -55°C to +125°C.

Tensión máxima de VDD respecto a VSS de -0,3 a +7,5V.

Tensión de cualquier patilla con respecto a VSS (excepto VDD, MCLR, y

RA4) de -0,3V a (VDD + 0.3V).

Tensión en MCLR con respecto a VSS -0,3 a +14V.

Tensión en RA4 con respecto a VSS -0,3 a +8,5V.

Disipación de potencia total de 800 mW.

Máxima corriente de salida a VSS 150 mA.

Máxima corriente de salida de VDD 100 mA.

Máxima corriente del puerto "A" como fuente, 50 mA.

Máxima corriente del puerto "A" como sumidero, 80 mA.

Máxima corriente del puerto "B" como fuente, 100 mA.

Máxima corriente del puerto "B" como sumidero, 150 mA.

Page 5: PIC16F84

UNIVERSIDAD NACIONAL DE INGENIERIA

Electrónica Digital II Departamento de Sistemas Digitales y Telecomunicaciones Página 4

Máxima corriente que puede suministrar una sóla salida como fuente o

sumidero, 25 mA.

Rango de alimentación:

16LF84A: de 2 a 5,5 V en configuración de oscilador XT, RC y LP.

16F84A:

de 4 a 5,5 v en configuración de oscilador XT, RC y LP.

de 4,5 a 5.5 v en configuración de oscilador HS.

Consumo típico:

16LF84A:

de 1 a 4 mA en configuración de oscilador RC y XT (FOSC=2 MHz,

VDD=5,5V).

de 15 a 45 μA en configuración de oscilador LP (FOSC=32kHz,

VDD=2V, WDT deshabilitado).

16F84A:

de 1,8 a 4.5 mA en configuración de oscilador RC y XT (FOSC=4

MHz, VDD=5,5V).

de 3 a 10 mA en configuración de oscilador RC y XT durante la

programación de la FLASH (FOSC=4MHz, VDD=5,5V).

16F84A-20: de 10 a 20 mA en configuración de oscilador HS (FOSC=20

MHz, VDD=5,5V). [1]

Asignación de Pines según su hoja de datos (data sheet), PIC 16F84A.[2]

TABLE 1-1: PIC16F84A PINOUT DESCRIPTION

Page 6: PIC16F84

UNIVERSIDAD NACIONAL DE INGENIERIA

Electrónica Digital II Departamento de Sistemas Digitales y Telecomunicaciones Página 5

Pin Name

PDIP No.

SOIC No.

SSOP No.

I/O/P Type

Buffer Type

Description

OSC1/CLKIN 16 16 18

I ST/CMOS(3) Oscillator crystal input/external clock

source input.

OSC2/CLKOUT 15 15 19 O — Oscillator crystal output. Connects to crystal o resonator in Crystal Oscillator mode. In RC mode, OSC2 pin outputs CLKOUT, which has 1/4 thefrequency of OSC1 and denotes the instruction cycle rate.

_____ MCLR

4 4 4 I/P ST Master Clear (Reset) input/programming voltageinput. This pin is an active low RESET to the device.

RA0

RA1

RA2

RA3

RA4/T0CKI

17

18

1

2

3

17

18

1

2

3

19

20

1

2

3

I/O

I/O

I/O

I/O

I/O

TTL

TTL

TTL

TTL

ST

PORTA is a bi-directional I/O port.

Can also be selected to be the clock input to the TMR0 timer/counter. Output is open drain type.

RB0/INT

RB1

RB2

RB3

RB4

RB5

RB6

RB7

6

7

8

9

10

11

12

13

6

7

8

9

10

11

12

13

7

8

9

10

11

12

13

14

I/O

I/O

I/O

I/O

I/O

I/O

I/O

I/O

TTL/ST(1)

TTL

TTL

TTL

TTL

TTL

TTL/ST(2)

TTL/ST(2)

PORTB is a bi-directional I/O port. PORTB can be software programmed for internal weak pull-up on all inputs. RB0/INT can also be selected as an external interrupt pin. Interrupt-on-change pin. Interrupt-on-change pin. Interrupt-on-change pin. Serial programming clock. Interrupt-on-change pin. Serial programming data.

Page 7: PIC16F84

UNIVERSIDAD NACIONAL DE INGENIERIA

Electrónica Digital II Departamento de Sistemas Digitales y Telecomunicaciones Página 6

VSS 5 5 P — Ground reference for logic and I/O

pins.

VDD 14 14 15,16 P — Positive supply for logic and I/O pins.

Legend:

I= input O = Output I/O = Input/Output P = Power — = Not used

TTL = TTL input ST = Schmitt Trigger input

Note

1: This buffer is a Schmitt Trigger input when configured as the external interrupt.

2: This buffer is a Schmitt Trigger input when used in Serial Programming mode.

3: This buffer is a Schmitt Trigger input when configured in RC oscillator mode and a

CMOS input otherwise.

Como pudimos observar con respecto a lo anterior no hay otra característica técnica de

vital importancia, valga la redundancia podemos ahora conocer más acerca de su

funcionamiento interno tomando en cuenta que internamente posee una Arquitectura tipo

Harvard lo cual permite que se pueda trabajar desde memorias separadas y da ventaja

para los datos e instrucciones tengan longitudes diferentes.

Lo que ocurre es que el PIC 16F84A tiene varios tipos de memoria, pero solo hablaremos

de las mas importantes.

La memoria de Programa o Instrucciones:

Es una memoria de 1 Kbyte de longitud con palabras de 14 bits. Como es del tipo FLASH

se puede programar y borrar eléctricamente, lo que facilita el desarrollo de los programas

y la experimentación. En ella se graba, o almacena, el programa o códigos que el

microcontralador debe ejecutar. Dado que el PIC16F84 tiene un contador de programa de

13 bits, tiene una capacidad de direccionamiento de 8K x 14, pero solamente tiene

implementado el primer 1K x 14 (0000h hasta 03FFh). Si se direccionan posiciones de

memoria superiores a 3FFh se causará un solapamiento con el espacio del primer 1K. En

la figura 1.10 se muestra el mapa de la memoria de programa. [3]

Page 8: PIC16F84

UNIVERSIDAD NACIONAL DE INGENIERIA

Electrónica Digital II Departamento de Sistemas Digitales y Telecomunicaciones Página 7

La 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 distribuidos:

La primera es la de RFS (Registros de Funciones

Especiales) que controlan el funcionamiento del

dispositivo. Estos se emplean para el control del

funcionamiento de la CPU y de los periféricos.

El segundo área (68 bytes SRAM) es la de RGP

(Registros de Propósito General), y puede

accederse a ellos tanto directa como

indirectamente haciendo uso del registro FSR.

Banco 0:

Este banco está formado por 80 bytes, desde la posición 00 hasta la 4Fh (de la 0 a

la 79).

El área RFS consta de 12 registros que serán utilizados por funciones especiales

del microcontralador. Comienza en la dirección 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 serán utilizados para

almacenar datos temporales requeridos por los programas. Comienza en la

dirección 0Ch y termina en la posición 4Fh (de la 12 a la 79). Esta parte es la

memoria de registros de propósito general.

Banco 1:

Page 9: PIC16F84

UNIVERSIDAD NACIONAL DE INGENIERIA

Electrónica Digital II Departamento de Sistemas Digitales y Telecomunicaciones Página 8

Este banco tiene las mismas dimensiones que el anterior, pero su uso es menor,

ya que no tiene banco para registros de propósito general. Solamente tiene una

sección de registros especiales que van de la posición 80h a la 8Bh ( de la 128 a

la 139)

La memoria RAM así como algunos registros especiales son los mismos en los dos

bancos del mapa de memoria del PIC. La anchura de los bytes en la memoria es de 8 bis.

Para direccionar la memoria de datos se emplean dos modos de direccionamiento, el

directo y el indirecto. En el direccionamiento directo, los 7 bits de menos peso del código

OP de la instrucción proporcionan la dirección en la posición de la página, mientras que

los bits RP1 y RP0 de STATUS seleccionan la página o banco.

En el direccionamiento indirecto el operando de la instrucción hace referencia al

registro IDNF, que ocupa la posición 00h del área de datos. Se accede a la posición que

apunta el registro FSR 04h del banco 0. Los 7 bits de menos peso de FSR seleccionan la

posición y su bit de más peso, junto con el bit IRP del registro de estado, seleccionan la

página. [1]

Hemos hablado acerca de las memorias del PIC, ahora hablaremos de su arquitectura

interna y de algunos parámetros también internos que debemos tomar en cuenta para

cuando se realicen aplicaciones con el PIC 16F84A.

Arquitectura interna

Se fundamenta en una arquitectura tipo Harvard de manera que posee buses y espacios

de memoria por separado para el programa y los datos, lo que hace que sean más

rápidos que los microcontroladores basados en la arquitectura tradicional de Von

Neuman.

También posee arquitectura RISC( reduced instruction set computer), cuya ventaja es que

se pueden realizar funciones semanera reducida y con instrucciones sencillas. Otra

característica es una ALU (Unidad Aritmético Lógica) de 8 bits capaz de realizar

operaciones de desplazamientos, lógicas, sumas y restas, además de un registro de

Trabajo (W) no direccionable que usa en operaciones con la ALU.

Page 10: PIC16F84

UNIVERSIDAD NACIONAL DE INGENIERIA

Electrónica Digital II Departamento de Sistemas Digitales y Telecomunicaciones Página 9

¿Cómo es que funciona?, De manera sencilla podemos decir que conforme las

instrucciones que posea la ALU, esta puede afectar los bits de acarreo ya sea para el

Acarreo digital como al acarreo cero del registro de estado (Z).

Figura 2

Cabe destacar y aun mas podemos observar que la memoria también tiene una memoria

EEPROM. Esta memoria está basada en tecnología EEPROM, y tiene una longitud de 8

bits, del mismo modo que la memoria de datos. Su tamaño es de 64 bytes y está situada

en un bloque distinto y aislado de la de datos.

Los 64 bytes EEPROM de Memoria de Datos no forman parte del espacio normal

direccionable, y sólo es accesible en lectura y escritura a través de dos registros, para los

datos el EEDATA que se encuentra en la posición 0008h del banco de registros RAM y

para las direcciones el EEADR en la 0009h. Para definir el modo de funcionamiento de

esta memoria se emplean dos registros especiales, el EECON1 en la dirección 0088h y el

EECON2 en 0089h.

Page 11: PIC16F84

UNIVERSIDAD NACIONAL DE INGENIERIA

Electrónica Digital II Departamento de Sistemas Digitales y Telecomunicaciones Página 10

Registros que se utilizan con la EEPROM (ver figura 2):

Registro EEDATA (08h): Registro de Datos, lectura/escritura 8 bits

Registro EEADR (09h): Registro de Dirección, de 0h a 3Fh, 64 bytes

Registro EECON1 (88h): Registro de Control 1

Registro EECON2 (89h): Registro de Control 2 (no es un registro físico)[1]

Oscilador:

Todo microcontrolador requiere de un circuito que le indique la velocidad de trabajo, es el

llamado oscilador o reloj. Este genera una onda cuadrada de alta frecuencia que se utiliza

como señal para sincronizar todas las operaciones del sistema. Este circuito es muy

simple pero de vital importancia para el buen funcionamiento del sistema. Generalmente

todos los componentes del reloj se encuentran integrados en el propio microcontrolador y

tan solo se requiere unos pocos componentes externos, como un cristal de cuarzo o una

red RC, para definir la frecuencia de trabajo.[5]

El PIC16F84A puede funcionar en cuatro diferentes modos de oscilador. El usuario

puede programar dos bits de configuración (FOSC1 y FOSC0) para seleccionar uno de

estos cuatro modos:

• LP de cristal de baja potencia, trabaja con una frecuencia con rango de 32kHz a 200

KHz.

•Crystal XT / resonador, frecuencia de 4MHz.

• HS de cristal de alta velocidad / resonador; frecuencia de 4MHz a 20MHz.

• RC Resistencia / Capacitor; Es el más económico por que tan solo se utiliza un

condensador no polarizado y una resistencia. Es adecuado para las aplicaciones donde las

temporizaciones no requieran precisión. La frecuencia depende de:

La tensión de alimentación

El valor de la resistencia

El valor del condensador

La temperatura de funcionamiento

Además de esto, la frecuencia de oscilación puede variar de un microcontrolador a otro

debido a variaciones en algunos parámetros en la fabricación de cada integrado. También

Page 12: PIC16F84

UNIVERSIDAD NACIONAL DE INGENIERIA

Electrónica Digital II Departamento de Sistemas Digitales y Telecomunicaciones Página 11

han de tenerse en cuenta la variación debidas a la tolerancia de la resistencia y

condensador utilizados. Incluso las capacidades parasitas que puedan aparecer, como el

trazado de las pistas o con los contactos del zócalo donde va insertado el

microcontrolador pueden afectar a la frecuencia de la oscilación, sobre todo si se utilizan

condensadores de pequeño valor. En general las variaciones de la frecuencia de

oscilación son mayores cuanto mayor sea R y menor sea C. [1]

En el cuadro siguiente aparece como debe conectarse el circuito RC al PIC:

Fuentes del pin RESET:

En general el reset de un microcontralador hace que el dispositivo vaya a un estado

conocido. Mientras se encuentra transitoriamente en estado reset, el dispositivo esta

virtualmente detenido, es decir, no se ejecuta ninguna instrucción del programa. Cuando

sale de el estado reset, el dispositivo va a un estado conocido. En particular, en los

microcontroladores PIC, la salida del estado reset hace que el contador del programa se

ponga en el valor cero, de modo que la instrucción que se ejecuta después de un reset es

la que esta en esa dirección de la memoria de programa, independientemente de

cualquier situación anterior al reset. [4]

Para el PIC 16F84 posee diferentes tipos de RESET, los cuales analizaremos a

continuación.

Reset Externo; se ubica en el pin # 4 denominado MCLR (master clear), este se activa

externamente utilizando un pulsador como se muestra en la figura 3.

Page 13: PIC16F84

UNIVERSIDAD NACIONAL DE INGENIERIA

Electrónica Digital II Departamento de Sistemas Digitales y Telecomunicaciones Página 12

Configuración del reset externo mediante un pulsador.

Reset en modo sleep; conocido como modo de bajo consumo sleep.

Reset POR (power on reset); Cuando el dispositivo inicia la operación normal (sale

de la condición de reajuste), los parámetros del dispositivo de funcionamiento

(tensión, frecuencia, temperatura, etc) se deben cumplir para asegurar la

operación. Si estas condiciones no se cumplen, el dispositivo debe estar en estado

RESET hasta que las condiciones de funcionamiento se cumplen.

PWRT (Power-Up Timer) : Temporizador de encendido que

provee un retardo fijo de 72 ms (nominal) en el encendido únicamente, diseñado para

mantener el dispositivo en reset mientras la fuente se estabiliza. Para utilizar estos

temporizadores, sólo basta con conectar el pin MCLR a la fuente de alimentación,

evitándose utilizar las tradicionales redes RC externas en el pin de reset.

Reset WatchDog; El reset por desbordamiento del perro guardián ocurre cuando se

desborda el temporizador denominado perro guardián (WTD wacth dog). El

desbordamiento se produce si, desde el programa que esta ejecutando el

microcontrolador, no se borra a tiempo el resultado de conteo que realiza este

temporizador.[6]

Para ser mas preciso la tarea del Watchdog consiste en restablecer el programa cuando

éste se ha perdido por fallas en la programación o por alguna razón externa. Es muy útil

cuando se trabaja en ambientes con mucha interferencia o ruido electromagnético. Está

conformado por un oscilador RC que se encuentra dentro del microcontrolador. Este

oscilador corre de manera independiente al oscilador principal. Cuando se habilita su

funcionamiento, dicho circuito hace que el microcontrolador sufra un reset cada

determinado tiempo (que se puede programar entre 18 ms y 2 segundos).

Page 14: PIC16F84

UNIVERSIDAD NACIONAL DE INGENIERIA

Electrónica Digital II Departamento de Sistemas Digitales y Telecomunicaciones Página 13

Este reset lo puede evitar el usuario mediante una instrucción especial del

microcontrolador (CLRWDT: borrar el conteo del watchdog), la cual se debe ejecutar

antes de que termine el período nominal de dicho temporizador. De esta manera, si el

programa se ha salido de su flujo normal, por algún ruido o interferencia externa, el

sistema sereiniciará (cuando se acabe el tiempo programado y no se haya borrado el

contador) y el programa puede restablecerse para continuar con su funcionamiento

normal.

En las primeras prácticas no se utiliza el circuito de vigilancia para facilitar el

trabajo; por eso, en el momento de programar el microcontrolador se debe seleccionar

en los fusibles de configuración “watchdog timer OFF”. Más adelante veremos

algunos ejemplos que ilustran su funcionamiento y la manera de utilizarlo. [7]

Modo de Bajo consumo:

Esta se conoce como la instrucción Sleep, cuya función es suspender casi todas las

funciones del PIC lo que permite que se consuma muy poca potencia, el oscilador

principal se detiene, los registros de datos no se borran en este modo, también hace que

se reinicie el contador del WTD (wathdog). Se sale de este modo si se activa el Reset

MCLR con pulsador o alguna interrupción del sistema procedente de los periféricos

internos.

Migracion del PIC 16F84 al PIC 16F84A:

A pesar de haber migrado de un pic a otro las diferencias entre ellos solo se ven

reflejadas con respecto a su características eléctricas y algunos parámetros como las del

oscilador son algunos de los cambios realizados con respecto a la versión anterior.

Tabla 1-1 muestra las diferencias funcionales entre el PIC16F84 y el PIC16F84A. [8]

Page 15: PIC16F84

UNIVERSIDAD NACIONAL DE INGENIERIA

Electrónica Digital II Departamento de Sistemas Digitales y Telecomunicaciones Página 14

La tabla 2 muestra las diferencias entre el PIC 16F84A con respecto al PIC 16F84.[8]

Page 16: PIC16F84

UNIVERSIDAD NACIONAL DE INGENIERIA

Electrónica Digital II Departamento de Sistemas Digitales y Telecomunicaciones Página 15

Compatibilidad con otras familias[9]:

Quienes están familiarizados con los PIC16C5X encontrarán básicamente las

siguientes modificaciones:

• La longitud de las instrucciones se incrementó a 14 bits.

• Se puede omitir la paginación de la memoria de programa.

• La paginación de la memoria de datos se ha redefinido ligeramente, de tal manera

que se elimina la necesidad de los bits PA2, PA1 y PA0 en el registro de estados.

• Se cuenta con cuatro nuevas instrucciones: RETURN, RETFIE, ADDLW y SUBLW.

• La manera en que se configuraban los puertos (con la instrucción TRIS) y se asignaba

el preescalador (con la instrucción OPTION) ha sido modificada, de tal forma

que los registros OPTION y TRIS ahora son direccionables; aún así, se conservan

dichas instrucciones para mantener la compatibilidad con los PIC16C5X.

• Se agregaron capacidades de interrupción. El vector de interrupción es 0004h.

• El tamaño de la pila se incrementó a 8 niveles.

• El vector de reset se modificó a 0000h.

• Reactivación después de la instrucción SLEEP a través de interrupciones.

• El pin de entrada RTCC es ahora un pin del puerto A, llamado RA4/TOCK1

• El ancho del registro FSR se aumentó a 8 bits.

• La posición 07 no está implementada.

• Programación serial del microcontrolador.

Pasos para programar este PIC:

1. Editar; consiste en diseñar una serie de instrucciones en un lenguaje de

programación con el cual se podrá controlar el pic de manera que realice las

instrucciones que deseamos. Se puede programar con diversos programas, pero

los mas usados son Lenguaje Ensamblador, Basic y C.

2. Compilar; consiste en traducir el lenguaje de programación a lenguaje de

maquina que es el lenguaje del PIC.

3. Quemar el PIC; es el proceso en el cual utilizamos un hardware y un software que

manipulan la información que tenemos en la PC y la transferimos al pic. El

software a utilizar tiene que ser compatible con el hardware.

4. Probar el PIC; esto no es mas que montar nuestro circuito y probar que el pic

realice cada una de las instrucciones programadas.

Page 17: PIC16F84

UNIVERSIDAD NACIONAL DE INGENIERIA

Electrónica Digital II Departamento de Sistemas Digitales y Telecomunicaciones Página 16

Conclusión

Podemos concluir que hemos analizado uno de los mejores controladores que se han

fabricado, con esto podemos interpretar mejor cada una de las características tanto físicas

como internas del PIC16F84A. También pudimos hacer un análisis detallado de su

arquitectura interna, la configuración de sus pines, su sistema de vigilancia Watchdog, los

parámetros eléctricos en el cual debe trabajar el pic y las diferencias con su versión

anterior. Esperamos que esta información les sea de mucha ayuda.

Page 18: PIC16F84

UNIVERSIDAD NACIONAL DE INGENIERIA

Electrónica Digital II Departamento de Sistemas Digitales y Telecomunicaciones Página 17

Referencias

[1] DISPOSITIVOS LÓGICOS MICROPROGRAMABLES: El PIC16F84A

Home Page by Wanadoo.es http://perso.wanadoo.es/pictob/micropic16f84.htm

[2] Home Page Corporate Microchip Technology Inc. The Embedded Control Solutions

Company® http://ww1.microchip.com/downloads/en/DeviceDoc/35007b.pdf, DS35007B-

page 4

[3] PIC16F84A.pdf Curso avanzado de Microcontroladores PIC, Capítulo 1. El PIC16F84

Pag.8

[4] Ramón Pallás Areny, Microcontroladores: fundamentos y aplicaciones con PIC, pagina

38.

[5] Enrique Palacios, Microcontrolador PIC 16F84 2da. Edicion, pagina 4.

[6] Ramón Pallás Areny, Microcontroladores: fundamentos y aplicaciones con PIC, pagina

41.

[7] PIC16F84A.pdf Curso avanzado de Microcontroladores PIC, Capítulo 1. El PIC16F84

Pag.17-18.

[8] Home Page Corporate Microchip Technology Inc. The Embedded Control Solutions

Company® PIC16F84 to PIC16F84A Migration

[9] PIC16F84A.pdf Curso avanzado de Microcontroladores PIC, Capítulo 1. El PIC16F84

Pag.19.


Recommended