Other Parts Discussed in Thread: TMS320F28026
I'm having a problem with Flash28335_API_V210.lib. Occasionally the call to Flash_Erase does not return. The toggle test shows the API is configured for 9.998KHZ, I'm trying to erase sectors A-F (0x3f), interrupts are turned off, watch dog is turned off, Flash_CPUScaleFactor is initialized to SCALE_FACTOR, Flash_CallbackPtr is NULL and CPU_RATE is defined as 6.667L for 150MHz clock in Flash2833x_API_Config.h. I have copied all the flash API functions to ram as shown in the example. I have searched the web but have not found anything that explains this. I have not tried debugging in to the API yet. Code snippet is below wSectors is 0x3f.
// disable interupts
unsigned int local = _disable_interrupts();
// status registers
FLASH_ST FlashStatus;
wError = Flash_Erase(wSectors,&FlashStatus);
// re-enable interupts
_restore_interrupts(local);
Any suggestions would be greatly appreciated.