The Option Register
Bit7 |
Bit6 |
Bit5 |
Bit4 |
Bit3 |
Bit2 |
Bit1 |
Bit0 |
RBPU |
INTEDG |
T0CS |
T0SE |
PSA |
PS2 |
PS1 |
PS0 |
The
OPTION register in the PIC 16f84 microcontroller is a readable and writable register which contains
various control bits to configure the TMR0/WDT prescaler, the
external INT interrupt, TMR0, and the weak pull-ups on PORTB.
Bits 0, 1 and 2 are the three prescaler division ratio bits for
either the timer/counter module or the watchdog timer WDT, depending
on which of these have been allocated for use.
Bit 3 selects the assignment of the prescaler/postscaler to
either the timer/counter, or the watchdog timer.
Bit 4 selects whether the timer/counter increments on the
falling edge or the rising edge of the external square wave signal
on pin TOCKI when external timer clocking is selected; otherwise,
the waveform is ignored.
Bit 5 is used to choose between external timer clocking via the
TOCKI pin, or via the internal instruction cycle clock.
Bit 6 selects between interrupt triggering on either a rising or
falling edge.
Bit 7 enables or disables the weak internal pull-ups on the pins
of PORTB when the port is configured as an input. The pull-ups are
disabled when the port is in output mode.
R/W-1 |
R/W-1 |
R/W-1 |
R/W-1 |
R/W-1 |
R/W-1 |
R/W-1 |
R/W-1 |
RBPU |
INTEDG |
T0CS |
T0SE |
PSA |
PS2 |
PS1 |
PS0 |
Bit7 |
Bit6 |
Bit5 |
Bit4 |
Bit3 |
Bit2 |
Bit1 |
Bit0 |
|
R = Readable bit
W= Writable bit
U = Unimplemented bit, read as ‘0’
-n= Value at POR reset |
bit 7:
RBPU: PORTB
Pull-up Enable bit
0 = PORTB pull-ups are disabled
1 = PORTB pull-ups are enabled (by individual port latch
values).
bit 6
INTEDG: Interrupt
Edge Select bit
1 = Interrupt on rising edge of RB0/INT pin
0 = Interrupt on falling edge of RB0/INT pin
bit
5
T0CS: TMR0 Clock
Source Select bit
1 = Transition on RA4/T0CKI pin
0 = Internal instruction cycle clock (CLKOUT)
bit 4:
T0SE: TMR0 Source Edge Select bit
1 = Increment on high-to-low transition on RA4/T0CKI pin
0 = Increment on low-to-high transition on RA4/T0CKI pin
bit 3:
PSA: Prescaler Assignment bit
1 = Prescaler assigned to the WDT
0 = Prescaler assigned to TMR0
bit 2,1,0:
PS2:PS0:
Prescaler Rate Select bits
Bit Value |
TMR0 Rate |
WDT Rate |
000 |
1 : 2 |
1 : 1 |
001 |
1 : 4 |
1 : 2 |
010 |
1 : 8 |
1 : 4 |
011 |
1 : 16 |
1 : 8 |
100 |
1 : 32 |
1 : 16 |
101 |
1 : 64 |
1 : 32 |
110 |
1 : 128 |
1 : 64 |
111 |
1 : 256 |
1 : 128 |
|
|