Registros del PIC16f84A
Anteriormente ya localizamos la sección de registros especiales en el bloque de
memoria RAM, estos estaban repartidos en dos bancos, el 0 y el 1, y situados en las 12
primeras posiciones o registros de cada uno (00h-0Bh, y 80h-8Bh). A continuación se
presentan en bloque y en una tabla:
Banco 0
Direcc Nombre Bit 7
Bit 6 Bit 5 Bit 4
Bit 3 Bit 2 Bit 1 Bit 000h
INDF
Dirección de FSR (no es físicamente un registro)
01h
TMR0
Contador/Temporizador de 8 bits
02h
PCL
8 bits LSB del PC
03h
STATUS
IRP
04h
FSR
Puntero para el Direccionamiento Indirecto
05h
PORTA
-
-
-
RA4
RA3
T0CKI
06h
PORTB
RB7
RB6
RB5
RB4
07h
-
No implementado
08h
EEDATA
Registro de DatosEEPROM
09h
EEADR
Registro de Direcciones EEPROM
0Ah
PCLATH
-
-
-
5 bits MSB del PC
0Bh
INTCON
GIE
EEIE
T0IE
INTE
RP1
RP0
TO
PD
RB3
RBIE
Z
DC
C
RA2
RA1
RA0
RB2
RB1
RB0
INT
INTF
RBIF
T0IF
Banco 1
Direcc Nombre Bit 7
Bit 6 Bit 5 Bit 4
Bit 3 Bit 2 Bit 1 Bit 0
80h
INDF
Dirección de FSR(no es físicamente un registro)
81h
OPTION
RBPU INTE
T0CS T0SE
PSA
PS2
PS1
PS0
82h
PCL
8 bits LSB del PC
83h
STATUS
IRP
84h
FSR
Puntero para el Direccionamiento Indirecto
85h
TRISA
-
86h
TRISB
Dirección de los datos del Puerto B
87h
-
No Implementado
88h
ECON1
-
89h
ECON2
2º REGISTRO DE Control de laEEPROM
8Ah
PCLATH
-
-
-
5 bits MSB del PC
8Bh
INTCON
GIE
EEIE
T0IE
INTE
RP1
-
-
RP0
-
-
TO
PD
Z
DC
C
Dirección de datos del Puerto A
EEIF
WRR
RBIE
WEN
T0IF
WR
RD
INTF
RBIF
Registro W
En la figura siguiente se representa un diagrama simplificado de la arquitectura
interna de los datos en la CPUde los microcontroladores PIC y de los
microprocesadores tradicionales relacionado con la ALU:
Podemos ver los buses por donde circulan los datos, y la Unidad Aritmético-Lógica ó
ALU (Arithmetic-Logic Unit). Que es la encargada de hacer las operaciones aritméticas
tales como suma y resta, y operaciones lógicas.
Observamos que la principal diferencia entre ambos se encuentra en laubicación del
registro de trabajo, que para los PIC’s se denomina W (Working Register), y para los
sistemas tradicionales es el Acumulador.
En los microcontroladores tradicionales todas las operaciones se realizan sobre el
acumulador. La salida del acumulador esta conectada a una de las entradas de la ALU,
y por lo tanto éste es siempre uno de los dos operandos de cualquier instrucción. Porconvención, las instrucciones de simple operando (borrar, incrementar, decrementar,
complementar), actúan sobre el acumulador. La salida de la ALU va solamente a la
entrada del acumulador, por lo tanto el resultado de cualquier operación siempre
quedara en el acumulador. Para operar sobre un dato de memoria, después de realizar
la operación tendremos que mover siempre el acumulador a la memoria conuna
instrucción adicional.
En los microcontroladores PIC, la salida de la ALU va al registro W y también a la
memoria de datos, por lo tanto el resultado puede guardarse en cualquiera de los dos
destinos. En las instrucciones de doble operando, uno de los dos datos siempre debe
estar en el registro W, como ocurría en el modelo tradicional con el acumulador. En las
instrucciones de simpleoperando el dato en este caso se toma de la memoria (también
por convención).
La gran ventaja de esta arquitectura es que permite un gran ahorro de instrucciones
ya que el resultado de cualquier instrucción que opere con la memoria (sea de simple o
doble operando), puede dejarse en la misma posición de memoria o en el registro W,
según se seleccione con un bit de la misma instrucción. Las...
Regístrate para leer el documento completo.