Você está na página 1de 6

Registro de Estado (Status)

bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0


R/W R/W R/W R R R/W R/W R/W

PA2 PA1 PA0 /TO /PD Z DC C

C: Carry en el 8 bit
1= carry en la suma y no en la resta
0= carry en la resta y no en la suma

DC: Carry en el 4° bit de menor peso


1= carry en la suma y no en la resta
0= carry en la resta y no en la suma

Z:Cero
1= El resultado de la operación es 0
0= El resultado de la operación es distinto de cero

/PD : Power down TO


1= recien encendido o tras CLRWDT 0
0= Tras ejecutar una instrucción SLEEP 0
1
/TO: Timer out 1
PA0: Banco 0 u
PA1: Banco 1

PA2:No implementado

Registro de Opciones (Option)

bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0


R/W R/W R/W R R R/W R/W R/W

RBU INTDEG T0CS T0SE PSA PS2 PS1 PS0


PS2, PS1, PS0: Valor del divisor de frecuencia
Divisor por 2 exp n en WDT
Divisor por 2 exp n+1 en TMR0
PSA : Asignación del divisor de frecuencia
1= Divisor asignado al WDT
0= Divisor asignado al TMR0

TOSE: Tipo de flanco activo del T0CLK


1= incremento TRM0 en flanco descendente
0= Incremento TRMO en flanco ascendente

TC0S: Fuente de reloj para el contador (registro TMR0)


1= Pulsos por pata T0CLK (contador)
0= Pulsos igual a reloj interno/4 (temporizador)

INTDEG: Tipo de flanco para la interrupcion


1= RB0/INT sensible a flanco ascendente
0= RB0/INT sensible a flanco descendente

RBU: Conexión de cargas Pull-Up para la puerta B


1= Cargas Pull-Up desconectadas
0= Cargas Pull-Up conectadas

Registro de Interrupciones (INTCON)

1 Activación del pin RBO/INT


2 Desbordamiento del temporizador TMR0
3 Cambio de estado en uno de los 4 pines de mas peso (RB7:RB4) del PortB
4 Finalización de la escritura en la EEPROM de datos

bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0

R/W R/W R/W R/W R/W R/W R/W R/W

GIE PEIE TOIE INTE RBIE T0IF INTF RBIF


RBIF:Flag de interrupcion PortB
1= PortB pide interrupción
0= No se ha producido la interrupcion

INTF:Interrupcion externa
1= Atención de interrupcion
0= No atención de interrupcion

TOIF: Indicador de TMR0 se ha desbordado


1= TMR0 desbordado (borrar por software)
0= TMR0 no se ha desbordado
RBIE: Habilitación de la interrupción de la puerta B
1= Habilitada
0= Deshabilitada

INTE: Habilitación de interrupcion externa


1= Habilitada
0= Deshabilitada

TOIE: Habilitación de la interrupción del TMR0


1= Habilitada
0= Deshabilitada

PEIE:Activación de la interrupcion de perifericos (comparador)


1= Habilitada
0= Deshabilitada

GIE: Activación global de interrupciones


1= Interrupciones habilitadas
0= Interrupciones deshabilitadas
Carry en el 8 bit
carry en la suma y no en la resta
carry en la resta y no en la suma

el 4° bit de menor peso


suma y no en la resta
resta y no en la suma

ación es distinto de cero

PD
0
1
0
1
u

l divisor de frecuencia
Cuando se produce cualquiera de los sucesos indicados
anteriormente, se origina una petición de interrupción, que si
se acepta, guarda el valor del PC actual en la Pila, pone a
cero el bit GIE (Global Interrupt Enable), lo que prohibe
cualquier otra interrupción y se carga el PC con el valor
0004H , que es la posición del vector de interrupción, y
comienza a ejecutarse el programa de atención a la
interrupción que se encuentra a partir de esta dirección.

Cada causa de interrupción está controlada mediante dos bit.


Uno de ellos actúa como señalizador o flag que indica si se ha
producido o no la interrupción, y la otra funciona como bit de
permiso o prohibición de la interrupción en sí, tal y como se
muestra en la siguiente figura.

F:Flag de interrupcion PortB


PortB pide interrupción
No se ha producido la interrupcion

cion externa
e interrupcion
n de interrupcion

0 se ha desbordado
rrar por software)
ón de la puerta B

Você também pode gostar