PIC18LF252 memory map

Where everything sits, at its exact address. The PIC18LF252 keeps program and data apart (Harvard): program memory holds 16-bit instruction words, addressed in bytes, while the special function registers and the general-purpose RAM share the banked data memory.

Program memory

Instructions, the user ID and the configuration words.

Configuration words0x300000 – 0x30000D14 B
User ID0x200000 – 0x2000078 B
Flash0x0000 – 0x7FFF32 KB

Data memory

Banked: special function registers and general-purpose RAM in each bank.

RAM, bank 50x0500 – 0x05FF256 B
RAM, bank 40x0400 – 0x04FF256 B
RAM, bank 30x0300 – 0x03FF256 B
RAM, bank 20x0200 – 0x02FF256 B
RAM, bank 10x0100 – 0x01FF256 B
RAM, bank 00x0080 – 0x00FF128 B
RAM, bank 00x0000 – 0x007F128 B

EEPROM

Non-volatile data, kept without power.

EEPROM0x0000 – 0x00FF256 B

Every segment

SegmentSpaceStartEndSizePage
RAM, bank 0data0x00000x007F128 B
General-purpose RAM, all banksdata0x00000x05FF1.5 KB
RAM, bank 0data0x00800x00FF128 B
RAM, bank 1data0x01000x01FF256 B
RAM, bank 2data0x02000x02FF256 B
RAM, bank 3data0x03000x03FF256 B
RAM, bank 4data0x04000x04FF256 B
RAM, bank 5data0x05000x05FF256 B
EEPROMeeprom0x00000x00FF256 B
Flashprog0x00000x7FFF32 KB
User IDprog0x2000000x2000078 B
Configuration wordsprog0x3000000x30000D14 B