The 11 registers of NVM (Flash controller (NVM)), from 0xBF800A00, with their reset value and every field. The PIC32MK0128MCA048 has 785 registers in 65 peripherals, one page each.
Most PIC32 SFRs have three more registers right after them: CLR at +4, SET at +8 and INV at +C (T1CONCLR, T1CONSET, T1CONINV), which clear, set or flip just the bits written as 1, in one write.
NVM Flash controller (NVM)
NVMCONFlash Programming Control Register
Address
0xBF800A00
Reset
0x00000000
Access
read/write
Size
32-bit
7 fields
Field
Bits
What it does
WR
15
Write Control bit
0 Flash operation is complete or inactive
1 Initiate a Flash operation
WREN
14
Write Enable bit
0 Disable writes to WR bit and enables writes to the NVMOP bits
1 Enable writes to the WR bit and disables writes to the NVMOP bits
WRERR
13
Write Error bit
0 Program or erase sequence completed normally
1 Program or erase sequence did not complete successfully
LVDERR
12
Low-Voltage Detect Error bit
0 Voltage level is acceptable for programming
1 Low-voltage detected (possible data corruption if WRERR is set)
PFSWAP
7
BFSWAP
6
NVMOP
3:0
NVM Operation bits
0 No operation
1 Word program operation: programs word selected by NVMADDR
2 Quad Word (128-bit) program operation: programs the 128-bit Flash word selected by NVMADDR
3 Row program operation: programs row selected by NVMADDR
4 Page erase operation: erases page selected by NVMADDR
5 Program Flash memory erase operation: erases all of Program Flash
6 Reserved
7 Program erase operation: erase all of program Flash memory (all pages must be unprotected)