Vous êtes sur la page 1sur 7

1.

2.
3.
4.
5.

El PIC 16F84A tiene 35 instrucciones.


El PIC 16F84A tiene una memoria para programas de 1792 bytes.
EL PIC 16f84A tiene 15 registros especiales y 1 registro de trabajo.
El PIC 16F84A puede almacenar hasta 544 bits de datos en su memoria RAM.
El PIC 16F84A puede almacenar hasta 512 bits de datos en su memoria
EEPROM.

6. Haga una distincin entre memoria RAM y EEPROM.


La memoria RAM se destina a guardar las variables y datos. Es voltil, es decir, los
datos almacenados se borran cuando desaparece la alimentacin. Se divide en dos
partes:

Registros de Funciones Especiales SFR (Special Function Registers). Son


los primeros registros, cada uno de ellos cumple un propsito especial en el
control del microcontrolador.
Registros de Propsito General GPR (General Purpose Registers). Son los
primeros registros de uso general que se pueden usar para guardar los datos
temporales del programa que se est ejecutando.

La memoria de datos cuenta con dos bancos de memoria, Banco 0 y Banco 1: Los
registros del SFR estn agrupados entre las direcciones 00h a 0Bh para el Banco 0 y
entre las direcciones 80h hasta 8Bh para el Banco 1. Algunos de los registros del SFR
se encuentran duplicados en la misma direccin en los dos bancos, con el objeto de
simplificar su acceso.
El banco de registros de propsito general est formado por 68 posiciones de
memoria, ya que solo son operativas las den Banco 0 (direcciones desde 0Ch hasta la
4Fh), porque las del Banco 1 se mapean sobre el Banco 0. Es decir, cuando se apunta
a un registro de propsito general del Banco 1 (direcciones de 8Ch hasta 0CFh),
realmente se accede al mismo registro del Banco 0. Para seleccionar el banco a
acceder hay que configurar el bit 5 (RP0) del registro STATUS. Con RP0 = 0 se
accede al Banco 0 y con RP0 = 1 se accede al Banco 1. El Banco 0 es seleccionado
automticamente despus de un reset.
La memoria EEPROM es una pequea rea de memoria de datos de lectura y
escritura no voltil, gracias a lo cual un corte del suministro de la alimentacin no
ocasiona la perdida de informacin, que est disponible al reinicializarse el programa.
Se pueden realizar dos tipos de operaciones:

Operacin de lectura.
Operacin de escritura de grabacin.

Un ciclo de grabacin en una posicin EEPROM de datos dura unos 10ms, un tiempo
muy elevado para la velocidad del procesador, que se controla mediante un
temporizador interno. Al escribir en una posicin de memoria ya ocupada,
automticamente se borra el contenido que haba y se introduce un nuevo dato, por lo
que no hay comando de borrado.
7. Diferencie las arquitecturas Von Neumann y Harvard
1

En la arquitectura Von Neumann, dispone de la unidad central de proceso que est


conectada a una memoria nica que contiene las instrucciones del programa y los
datos. El tamao de la unidad de datos o instrucciones est fijado por el ancho del bus
de datos de la memoria exterior utilizada, que es de 8 bits. Cuando deba acceder a
una instruccin o dato de ms de un byte de longitud deber de realizar ms de un
acceso a la memoria y la velocidad de operacin est limitada por el efecto de cuello
de botella que significa un nico bus para datos e instrucciones, que impide
superponer ambos tiempos de acceso.

La arquitectura Harvard, dispone de dos memorias independientes a las que se


conecta mediante dos grupos de buses separados: Memoria de datos y memoria de
programa. Ambos buses son totalmente independientes y pueden ser de distintos
anchos, esto permite que la CPU pueda acceder de forma independiente y simultnea
a la memoria de datos y a la de instrucciones. Por lo cual el tamao de las
instrucciones no est relacionado con el de los datos y, por lo tanto, puede ser
optimizado para que cualquier instruccin ocupe una sola posicin de memoria de
programa. As se logra una mayor velocidad y una menor longitud del programa.

8. Muestre la asignacin tpica de memoria del PIC 16F48A A

Banco 0
Direcc
00h
01h
02h
03h
04h
05h

Nombre
INDF
TMR0
PCL
STATUS
FSR
PORTA

06h

PORTB

Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Direccin de FSR (no es fsicamente un registro)
Contador/Temporizador de 8 bits
8 bits LSB del PC
IRP
RP1
RP0
TO
PD
Puntero para el Direccionamiento Indirecto
RA4
RA3
T0CKI
RB7
RB6
RB5
RB4
RB3

07h
08h
09h
0Ah
0Bh
Banco 1
Direcc
80h
81h
82h
83h
84h
85h
86h
87h
88h
89h
8Ah
8Bh

Bit 2

Bit 1

Bit 0

DC

RA2

RA1

RA0

RB2

RB1

RB0
INT

EEDATA
EEADR
PCLATH
INTCON

No implementado
Registro de Datos EEPROM
Registro de Direcciones EEPROM
5 bits MSB del PC
GIE
EEIE
T0IE
INTE
RBIE
T0IF

INTF

RBIF

Nombre
INDF
OPTION
PCL
STATUS
FSR
TRISA
TRISB
ECON1
ECON2
PCLATH
INTCON

Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Direccin de FSR (no es fsicamente un registro)
RBPU
INTE
T0CS
T0SE
PSA
PS2
PS1
8 bits LSB del PC
IRP
RP1
RP0
TO
PD
Z
DC
Puntero para el Direccionamiento Indirecto
Direccin de datos del Puerto A
Direccin de los datos del Puerto B
No Implementado
EEIF
WRR
WEN
WR
2 REGISTRO DE Control de la EEPROM
5 bits MSB del PC
GIE
EEIE
T0IE
INTE
RBIE
T0IF
INTF

Bit 0
PS0
C

RD

RBIF

La memoria de datos est repartida en dos reas. El primero es el rea de Registros


de Funciones especiales (SFR), mientras que el segundo es el Registro de Fines
Generales (GPR). Los registros SFR controlan el funcionamiento del dispositivo.
3

Partes de la memoria de datos estn colocados en bancos. Esto es vlido tanto para el
rea de SFR como para el rea GPR. El rea de GPR es apilado para permitir ms
que 116 bytes de RAM de uso general. Las reas de apilados del SFR se destinan a
los registros que controlan las funciones perifricas. El apilado requiere el uso de bits
de control para la seleccin de bancos. Estos bits de control se encuentran en el
registro de STATUS. La figura muestra la organizacin del mapa de datos de la
memoria.
Las instrucciones MOVWF y MOVF permiten mover valores del registro W hasta
cualquier locacin en el archivo de registros (F) y viceversa. Se puede acceder a la
memoria de datos entera en forma directa usando la direccin absoluta de cada
registro o en forma indirecta mediante el Registro de Seleccin de Archivos (FSR). El
direccionamiento indirecto usa el bit RP0 para acceder a las reas apiladas de la
memoria de datos.
La memoria de datos est dividida en dos bancos que contienen los registros de uso
general y los registros de funciones especiales. El Banco 0 es seleccionado
eliminando el bit RP0 (STATUS<5>). El ajuste del bit RP0 selecciona el Banco 1. Cada
Banco se extiende hasta 7Fh (128 bytes). Las primeras doce locaciones de cada
Banco estn reservadas para los Registros de Funciones Especiales (SFR). El resto
son Registros de Uso general implementados como RAM.
9. Escriba la funcin de cada pin del PIC 16F84A de acuerdo al chip DIL
mostrado.
PUERTO A
RA0 = Pin de Entrada/Salida (TTL).
RA1 = Pin de Entrada/Salida (TTL).
RA2 = Pin de Entrada/Salida (TTL).
RA3 = Pin de Entrada/Salida (TTL).
RA4 = Pin de Entrada/Salida o entrada de Reloj Externo para el TMR0, cuando este pin
se configura como salida es de tipo Open Drain (ST), cuando funciona como salida se
debe conectar a Vcc (+5V) a travs de una resistencia.
PUERTO B
RB0 = Pin de Entrada/Salida o entrada de interrupcin externa. (TTL/ST).
RB1 = Pin de Entrada/Salida (TTL).
RB2 = Pin de Entrada/Salida (TTL).
RB3 = Pin de Entrada/Salida (TTL).
RB4 = Pin de Entrada/Salida con Interrupcin por cambio de Flanco (TTL).
RB5 = Pin de Entrada/Salida con Interrupcin por cambio de Flanco (TTL).
RB6 = Pin de Entrada/Salida con Interrupcin por cambio de Flanco (TTL/ST).
4

RB7 = Pin de Entrada/Salida con Interrupcin por cambio de Flanco (TTL/ST).


PINES ADICIONALES
MCLR = Pin de Reset del Microcontrolador (Master Clear). Se activa (el pic se resetea)
cuando tiene un "0" lgico en su entrada.
Vss = Ground o Tierra
Vdd = Fuente Positiva (+5V)
CLKOUT = Entrada del Oscilador del Cristal. Se conecta al Cristal o Resonador en
modo XT (Oscilador de Cristal). En modo RC (ResistenciaCondensador), este pin
acta como salida el cual tiene de la frecuencia que entra por el pin OCS1/CLKIN.
CLKIN = Entrada del Oscilador del Cristal / Entrada de reloj de una Fuente Externa.

10. Tomando como referencia el diagrama de bloques del PIC 16F84A, haga un
cuadro en el que se indique el nombre de cada elemento y su funcin.
ELEMENTO
Memoria
programa

FUNCIN
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.
Se almacena la instruccin que
se est ejecutando.

ELEMENTO
Contador
de
Programa o Program
Counter

FUNCIN
Que apunta a la direccin d
memoria de la instruccin e
curso y permite que
programa avance cuando s
incrementa.

Dir MUX

Enviar por un solo canal la


informaciones presentes e
varias lneas.

datos

Se destina a guardar las


variables y datos, es voltil.

La pila o stack, de 8
niveles

Memoria EEPROM de
datos

rea de memoria de datos de


lectura y escritura no voltil.

Registros
Funciones
Especiales

Registro EEDATA

Guarda el contenido de una


posicin
de
la
memoria
EEPROM de datos antes de su
escritura o despus de su
lectura, segn leamos o

Registros
de
Propsito General

Se utiliza cuando ejecutamo


un subproceso o subrutina, e
decir,
un
conjunto
d
instrucciones
que
hemo
aislado de las dems par
simplificar.
Que
controlan
funcionamiento del dispositiv
Estos se emplean para
control del funcionamiento d
la CPU y de los perifricos.
Puede accederse a ellos tan
directa como indirectamen
haciendo uso del registro FSR

del

Registro
Instruccin

Memoria
RAM

de

de

de

Registro EEADR

Registro de trabajo

Registro de Estado

Temporizador PowerUp

Temporizador
Oscilador Star-Up

PORTS I/O

escribamos en ella.
Guarda la direccin de la
posicin de memoria EEPROM.

Registro INDF

Este registro sirve nicamen


para especificar la utilizaci
del direccionamiento indirec
junto con el registro FSR.
Almacena el valor del contado
TMR, que como ya sabemo
est
funcionand
continuamente
incrementando el valor qu
tiene almacenado.
El contenido del FSR se utiliz
para
el
direccionamien
indirecto junto con el registr
INDF. Este registro contiene
bits.

Servir
para
guardar
temporalmente un dato ledo de
memoria, y lo usaremos como
si
del
portapapeles
del
escritorio se tratase.

Registro TMR

Contienen varios bits de estado


de la unidad central, el estado
aritmtico de la ALU, el estado
del reset y un par de bits de
seleccin
de
pgina
denominados RP1 y RP0.
Ocupa la posicin 03h del
banco 0 y la 83h del banco 1.
Este proporciona un reset al
microcontrolador
en
el
momento de conectar la fuente
de
alimentacin,
lo
que
garantiza un arranque correcto
del sistema.

Registro FSR

Tiene la funcin de mantener el


chip en
Reset hasta que el oscilador a
cristal se estabiliza y entra en
funciones en los modos
XT, LP y HS del oscilador.
Algunas patas de ports I/O
estn multiplexadas con una
funcin alternativa para las
prestaciones perifricas del
dispositivo. En general, cuando
se activa un perifrico, esta
pata no debe usarse como pata
I/O de uso general.

Power - On Reset

Registro
PORTB

PORTA

Temporizador
Guardin

El uso de estos registros qu


contienen los niveles lgico
de las patillas de E/S. Cada b
se puede leer o escribir seg
la patilla correspondiente s
haya
configurado
com
entrada o como salida.
Elimina los componentes R
externos que se necesita
generalmente para crear u
reset de encendido.

Perro

Su funcin es restablecer
programa cuando ste se h
perdido por fallas en
programacin o por algun
razn externa.

Bibliografa
Enrique Palacios, F. R. (agosto 2004). Microcontrolador PIC16F84A Desarrollo de
Proyectos. MADRID, Espaa: Alfomega Grupo Editor.

Referencias
http://perso.wanadoo.es/pictob/indicemicroprg.htm
6

http://melca.com.ar/archivos/Libro%20Microcontroladores%20PIC/arquitectura.pdf
http://web.ing.puc.cl/~mtorrest/downloads/pic/tutorial_pic.pdf
http://ww1.microchip.com/downloads/en/devicedoc/35007b.pdf
http://perso.wanadoo.es/luis_ju/soft/files/Int_Temp.pdf

Vous aimerez peut-être aussi