PIC16C57C memory map

Where everything sits, at its exact address. The PIC16C57C keeps program and data apart (Harvard): program memory holds 12-bit instruction words, addressed in words, 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 words0x0FFF – 0x0FFF1 word
User ID0x0800 – 0x08034 words
Flash0x0000 – 0x07FF2K words

Data memory

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

RAM, bank 30x0070 – 0x007F16 B
RAM, bank 20x0050 – 0x005F16 B
RAM, bank 10x0030 – 0x003F16 B
RAM, bank 00x0010 – 0x001F16 B
RAM, bank 00x0008 – 0x000F8 B

Every segment

SegmentSpaceStartEndSizePage
RAM, bank 0data0x00080x000F8 B
General-purpose RAM, all banksdata0x00080x004F72 B
RAM, bank 0data0x00100x001F16 B
RAM, bank 1data0x00300x003F16 B
RAM, bank 2data0x00500x005F16 B
RAM, bank 3data0x00700x007F16 B
Flashprog0x00000x07FF2K words
User IDprog0x08000x08034 words
Configuration wordsprog0x0FFF0x0FFF1 word