Before a device can be programmed, it must be erased. The erase operation writes all
‘1s’ to the Flash memory and prepares it to program a new set of data. Once
a device is erased, it can be verified by performing a “Blank Check” operation. See Blank Check for more information.
The procedure for erasing program memory (program, boot, and configuration memory) consists
of selecting the MTAP and sending the MCHP_ERASE command. The programmer must
wait for the erase operation to complete by reading and verifying bits in the
MCHP_STATUS value. Figure 9-1 illustrates the process for performing a chip erase operation.
Note: The device ID memory locations are read-only
and cannot be erased. Therefore, the chip erase operation has no effect on these memory
locations.
The following steps are required to erase a target device:
SendCommand (MTAP_SW_MTAP).
SetMode
(6’b011111).
SendCommand (MTAP_COMMAND).
XferData
(MCHP_ERASE).
XferData
(MCHP_DE_ASSERT_RST).
Note: This step is not required for the PIC32MX
devices.
Delay 10 ms.
statusVal = XferData
(MCHP_STATUS).
If CFGRDY (statusVal[3]) is not
‘1’ and FCBUSY (statusVal[2]) is not ‘0’, go to step
5.note
Note: The Chip Erase operation is a self-timed operation. If the FCBUSY and CFGRD
bits do not set properly within the specified Chip Erase time, the sequence may have
been executed incorrectly or the device is damaged.
Figure 9-1. Erase Device
The online versions of the documents are provided as a courtesy. Verify all content and data in the device’s PDF documentation found on the device product page.