Página de inicio Mi Correo






   » Foro
   » Nuevo Foro
   » Mi Correo
   » Mis Actividades...


--- Novedades ---



    
  » Microcontroladores » Interrupciones y Temporizaciones (Registros STATUS, OPTION e INTCON)  

.: Registro STATUS:

Contiene el estado aritmético de la ALU, el estado del Reset y los bits para selección de banco.

REGISTRO STATUS
IRP RP1 RP0 TO PD Z DC C

.: Estado de sus Bit's...
BIT's L ó E Reset Descripción
Bit 7-6:
IRP-RP1
L/E 0 No implementado: ‘0’
Bit 5: RP0
Bank Select
L/E 0 1 = Banco 1
0 = Banco 0
Bit 4: TO
Time-Out
L 1 1 = Recién encendido, tras CLRWDT, o SLEEP.
0 = Ocurrió un time-out en el WDT
Bit 3: PD
Power Down
L 1 1 = Luego de un Rset, de una instrucción CLRWDT
0 = Tras ejecutar una instrucción SLEEP
Bit 2: Z
Zero
L/E x 1 = El resultado de una operación lógica o aritmética es 0.
0 = El resultado es distinto de 0
Bit 1: DC
Digit Carry
L/E x 1 = Acarreo en la suma y no en la resta (4º bit)
0 = Acarreo en la resta y no en la suma (4º bit)
Bit 0: C
Carry
L/E x 1 = Acarreo en la suma y no en la resta (8º bit)
0 = Acarreo en la resta y no en la suma (8º bit)


.: Registro OPTION:

Contiene varios bits de control para configurar el divisor de frecuencia o prescaler del TMR0/WDT, la interrupción externa INT, TMR0 y los pull-ups para el PORTB

REGISTRO OPTION
RBU INTDEG T0CS T0SE PSA PS2 PS1 PS0

.: Estado de sus Bit's
BIT's L ó E Reset Descripción
Bit 7: RBPU
Pull-up p' PORTB
L/E 1 1 = Cargas Pull-Up Desconectadas
0 = Cargas Pull-Up Conectadas
Bit 6: INTEDG
Flanco/Interrup.
L/E 1 1 = RB0/INT será sensible a flanco ascendente
0 = RB0/INT será sensible a flanco descendente
Bit 5: T0CS
Fte./Reloj p' TMR0
L/E 1 1 = Pulsos por pata T0CKI (contador)
0 = Pulsos igual a reloj interno / 4 (temporizador)
Bit 4: T0SE
Flanco/T0CKI
L/E 1 1 = Incremento TMR0 en flanco descendente
0 = Incremento en flanco ascendente
Bit 3: PSA
Divisor/Frecuencia
L/E 1 1 = Divisor asignado al WDT
0 = Divisor asignado al TMR0

La combinación de los BIT's; PS2, PS1 y PS0 (0, 1 y 2) determinan el valor del divisor de frecuencia, el cual se puede ver en la siguiente tabla.

PS2 PS1 PS0 División del TMR0 División del WDT
0 0 0 1/2 1/1
0 0 1 1/4 1/2
0 1 0 1/8 1/4
0 1 1 1/16 1/8
1 0 0 1/32 1/16
1 0 1 1/64 1/32
1 1 0 1/128 1/64
1 1 1 1/256 1/128

Obviamente estos tres bits son de L/E y luego de un reset P2, P1 y P0 se ponen a 1.


.: Registro INTCON:

Contiene los bits para habilitar cada una de las fuentes de interrupción y las banderas que informan el origen de la interrupción.

REGISTRO INTCON
GIE EEIE T0IE INTE RBIE T0IF INTF RBIF

.: Estado de sus Bit's.
BIT's L ó E Reset Descripción
Bit 7: GIE
Habilitación Gral.
L/E 0 1 = Todas las Interrupciones activadas
0 = Todas las Interrupciones desactivadas
Bit 6: EEIE
Int. Periféricos
L/E 0 1 = Activada
0 = Desactivada
Bit 5: T0IE
Int. del TMR0
L/E 0 1 = Activada
0 = Desactivada
Bit 4: INTE
Int. Externa
L/E 0 1 = Activada
0 = Desactivada
Bit 3: RBIE
Int. por PORTB
L/E 0 1 = Activada
0 = Desactivada
Bit 2: T0IF
Bandera del TMR0.
L/E 0 1 = TMR0 desbordado. Borrar por software
0 = No se ha desbordado
Bit 1: INTF
Bandera - RB0/INT
L/E 0 1 = Ocurrió una interrupción externa
0 = No ha ocurrido interrupción externa
Bit 0: RBIF
Bandera - RB4:RB7
L/E x 1 = Al menos un pin cambio de estado
0 = Ningún pin ha cambiado de estado.


R-Luis...



    
--| |--