2002 Microchip Technology Inc.
Preliminary
DS41159B-page 49
PIC18FXX8
TABLE 4-2:
REGISTER FILE SUMMARY
File Name
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
Value on
POR, BOR
Details on
Page:
TOSU
TOSH
TOSL
STKPTR
—
—
—
Top-of-Stack Upper Byte (TOS<20:16>)
---0 0000
0000 0000
0000 0000
00-0 0000
30, 38
30, 38
30, 38
30, 39
Top-of-Stack High Byte (TOS<15:8>)
Top-of-Stack Low Byte (TOS<7:0>)
STKFUL
STKUNF
—
Return Stack Pointer
PCLATU
PCLATH
PCL
—
—
bit21
(2)
Holding Register for PC<20:16>
---0 0000
0000 0000
0000 0000
30, 40
30, 40
30, 40
Holding Register for PC<15:8>
PC Low Byte (PC<7:0>)
TBLPTRU
—
—
bit21
(2)
Program Memory Table Pointer Upper Byte (TBLPTR<20:16>)
--00 0000
0000 0000
0000 0000
0000 0000
xxxx xxxx
xxxx xxxx
0000 000x
30, 68
30, 68
30, 68
30, 68
30, 75
30, 75
30, 79
TBLPTRH
TBLPTRL
TABLAT
PRODH
PRODL
INTCON
Program Memory Table Pointer High Byte (TBLPTR<15:8>)
Program Memory Table Pointer Low Byte (TBLPTR<7:0>)
Program Memory Table Latch
Product Register High Byte
Product Register Low Byte
GIE/GIEH
PEIE/GIEL
TMR0IE
INT0IE
RBIE
TMR0IF
INT0IF
RBIF
INTCON2
INTCON3
INDF0
POSTINC0
POSTDEC0
PREINC0
PLUSW0
FSR0H
FSR0L
WREG
INDF1
POSTINC1
POSTDEC1
PREINC1
PLUSW1
FSR1H
FSR1L
BSR
INDF2
POSTINC2
POSTDEC2
PREINC2
PLUSW2
FSR2H
FSR2L
STATUS
TMR0H
TMR0L
T0CON
OSCCON
LVDCON
WDTCON
RBPU
INT2IP
Uses contents of FSR0 to address data memory - value of FSR0 not changed (not a physical register)
Uses contents of FSR0 to address data memory - value of FSR0 post-incremented (not a physical register)
Uses contents of FSR0 to address data memory - value of FSR0 post-incremented (not a physical register)
Uses contents of FSR0 to address data memory - value of FSR0 pre-incremented (not a physical register)
Uses contents of FSR0 to address data memory - value of FSR0 offset by W (not a physical register)
—
—
—
—
Indirect Data Memory Address Pointer 0 Low Byte
Working Register
Uses contents of FSR1 to address data memory - value of FSR1 not changed (not a physical register)
Uses contents of FSR1 to address data memory - value of FSR1 post-incremented (not a physical register)
Uses contents of FSR1 to address data memory - value of FSR1 post-incremented (not a physical register)
Uses contents of FSR1 to address data memory - value of FSR1 pre-incremented (not a physical register)
Uses contents of FSR1 to address data memory - value of FSR1 offset by W (not a physical register) -
—
—
—
—
Indirect Data Memory Address Pointer 1 Low Byte
—
—
—
—
Uses contents of FSR2 to address data memory - value of FSR2 not changed (not a physical register)
Uses contents of FSR2 to address data memory - value of FSR2 post-incremented (not a physical register)
Uses contents of FSR2 to address data memory - value of FSR2 post-incremented (not a physical register)
Uses contents of FSR2 to address data memory - value of FSR2 pre-incremented (not a physical register)
Uses contents of FSR2 to address data memory - value of FSR2 offset by W (not a physical register) -
—
—
—
—
Indirect Data Memory Address Pointer 2 Low Byte
—
—
—
N
Timer0 Register High Byte
Timer0 Register Low Byte
TMR0ON
T08BIT
T0CS
T0SE
—
—
—
—
—
—
IRVST
LVDEN
—
—
—
—
INTEDG0
INT1IP
INTEDG1
—
—
—
TMR0IP
—
—
RBIP
INT1IF
111- -1-1
11-1 0-00
n/a
n/a
n/a
n/a
n/a
---- xxxx
xxxx xxxx
uuuu uuuu
n/a
n/a
n/a
n/a
n/a
---- xxxx
xxxx xxxx
---- 0000
n/a
n/a
n/a
n/a
n/a
---- xxxx
xxxx xxxx
---x xxxx
0000 0000
xxxx xxxx
1111 1111
---- ---0
--00 0101
30, 80
30, 81
30, 55
30, 55
30, 55
30, 55
30, 55
30, 55
30, 55
30, 55
30, 55
30, 55
30, 55
30, 55
30, 55
31, 55
31, 55
31, 54
31, 55
31, 55
31, 55
31, 55
31, 55
31, 55
31, 55
31, 57
31, 109
31, 109
31, 107
31, 20
31, 257
31, 268
INT2IE
INT1IE
INT2IF
Indirect Data Memory Address Pointer 0 High
Indirect Data Memory Address Pointer 1 High
Bank Select Register
Indirect Data Memory Address Pointer 2 High
OV
Z
DC
C
PSA
—
LVDL3
—
T0PS2
—
LVDL2
—
T0PS1
—
LVDL1
—
T0PS0
SCS
LVDL0
SWDTEN
---- ---0
RCON
Legend:
Note
IPEN
—
—
RI
TO
PD
POR
BOR
0--1 11qq
31, 58, 91
x
= unknown,
u
= unchanged, - = unimplemented,
q
= value depends on condition
These registers or register bits are not implemented on the PIC18F248 and PIC18F258 and read as
’
0
’
s.
Bit21 of the TBLPTRU allows access to the device configuration bits.
RA6 and associated bits are configured as port pins in RCIO and ECIO Oscillator mode only and read
‘
0
’
in all other Oscillator
modes.
1:
2:
3: