
PIC18F2XK20/4XK20
DS41297F-page 28
Advance Information
2009 Microchip Technology Inc.
5.0
CONFIGURATION WORD
The
PIC18F2XK20/4XK20
devices
have
several
Configuration Words. These bits can be set or cleared
to select various device configurations. All other mem-
ory areas should be programmed and verified prior to
setting Configuration Words. These bits may be read
out normally, even after read or code protection. See
Table 5-1 for a list of Configuration bits and device IDs
and Table 5-3 for the Configuration bit descriptions.
5.1
User ID Locations
A user may store identification information (ID) in eight
ID locations mapped in 200000h:200007h. It is recom-
mended that the Most Significant nibble of each ID be
Fh. In doing so, if the user code inadvertently tries to
execute from the ID space, the ID data will execute as
a NOP.
5.2
Device ID Word
The device ID word for the PIC18F2XK20/4XK20
devices is located at 3FFFFEh:3FFFFFh. These bits
may be used by the programmer to identify what device
type is being programmed and read out normally, even
after code or read protection. See
Table 5-2 for a
complete list of device ID values.
FIGURE 5-1:
READ DEVICE ID WORD
FLOW
TABLE 5-1:
CONFIGURATION BITS AND DEVICE IDs
Start
Set TBLPTR = 3FFFFE
Done
Read Low Byte
Read High Byte
with Post-Increment
File Name
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
Default/
Unprogrammed
Value
300001h
CONFIG1H
IESO
FCMEN
—
FOSC3
FOSC2
FOSC1
FOSC0
00-- 0111
300002h
CONFIG2L
—
BORV1
BORV0
BOREN1 BOREN0 PWRTEN
---1 1111
300003h
CONFIG2H
—
WDTPS3 WDTPS2 WDTPS1 WDTPS0
WDTEN
---1 1111
300005h
CONFIG3H
MCLRE
—
HFOFST LPT1OSC PBADEN CCP2MX
1--- 1011
300006h
CONFIG4L
DEBUG
XINST
—
—LVP
—STVREN
10-- -1-1
300008h
CONFIG5L
—
—CP3(1)
CP2(1)
CP1
CP0
---- 1111
300009h
CONFIG5H
CPD
CPB
—
11-- ----
30000Ah
CONFIG6L
—
—WRT3(1)
WRT2(1)
WRT1
WRT0
---- 1111
30000Bh
CONFIG6H
WRTD
WRTB
WRTC
—
111- ----
30000Ch
CONFIG7L
—
—EBTR3(1) EBTR2(1)
EBTR1
EBTR0
---- 1111
30000Dh
CONFIG7H
—EBTRB
—
-1-- ----
3FFFFEh
DEVID1(2)
DEV2
DEV1
DEV0
REV4
REV3
REV2
REV1
REV0
3FFFFFh
DEVID2(2)
DEV10
DEV9
DEV8
DEV7
DEV6
DEV5
DEV4
DEV3
Legend:
x
= unknown, u = unchanged, – = unimplemented. Shaded cells are unimplemented, read as ‘0’.
Note
1:
apply based on available memory.
2:
DEVID registers are read-only and cannot be programmed by the user.