bool Flash_ErasePage(uint32_t address) { PLIB_NVM_FlashAddressToModify(NVM_ID_0, KVA_TO_PA(address)); PerformOperation(PAGE_ERASE_OPERATION); while (!PLIB_NVM_FlashWriteCycleHasCompleted(NVM_ID_0)) { {} } return !PLIB_NVM_WriteOperationHasTerminated(NVM_ID_0); }
bool Flash_WriteWord(uint32_t address, uint32_t data) { PLIB_NVM_FlashAddressToModify(NVM_ID_0, KVA_TO_PA(address)); PLIB_NVM_FlashProvideData(NVM_ID_0, data); PerformOperation(WORD_PROGRAM_OPERATION); while (!PLIB_NVM_FlashWriteCycleHasCompleted(NVM_ID_0)) { {} } return !PLIB_NVM_WriteOperationHasTerminated(NVM_ID_0); }
/* Function: bool APP_NVMIsWriteCompleted (void) Summary: Returns the write status. */ bool APP_NVMIsWriteCompleted(void) { return PLIB_NVM_FlashWriteCycleHasCompleted(NVM_ID_0); }