24.7.1 PFM Write Protection
Write protection for the PFM region is implemented by pages, defined by the NVMPWPLT and
NVMPWPGTE registers. The NVMPWP* registers define an area within the program space (PFM)
that is write-protected. This write-protected address resolves to Flash page boundaries;
therefore, the 12 LSBs for a 4 KB page Flash of any address written to the NVMPWP*
registers are ignored. The width of each NVMPWP* address register is determined by the
size of the Flash. The NVMPWPLT register is used to set the Program Flash pages lower
than the provided address as write-protected. The NVMPWPGTE register is used to set the
Program Flash pages greater than or equal to the provided address as write-protected.
Therefore, a value of all 0
s in the NVMPWPLT register and all
1
s in the NVMPWPGTE register results in no region of Flash being
write-protected (default state at Reset).
There is also an unlock bit, ULOCK (NVMPWPLT [31] and NVMPWPGTE[31]), that is set at Reset and can be cleared by the user software. When cleared, changes to the write-protection of the PFM can no longer be made, including the ULOCK bit. The NVMPWPLT and NVMPWPGTE write-protected register can only be changed when the unlock sequence is followed. See NVMKEY Register Unlocking Sequence from Related Links.