I have this ee write function to write my configuration to the TMS50ls3137 eeprom
this function runs in privileged mode under freeRTOS - it does not return any errors (only using Block 1 currently (2 are configured)) ..so checking with the debugger the results are E_OK
but the contents of the data are not updated - they are the same as what the original write stored
neither erase of format work...
void eepromWrite (uint16_t BlockNumber, uint8_t inv) //inv is set to 1 by the caller of this function
{
//Std_ReturnType t_er = E_OK;
if (inv)
{
TI_Fee_EraseImmediateBlock(BlockNumber);
//TI_Fee_Format(0xA5A5A5A5U);
EEtestIdle();
}
TI_Fee_WriteAsync(BlockNumber, &eepromRamBlock[0]);
EEtestIdle();
TI_Fee_Shutdown();
EEtestIdle();
}
static uint8_t EEtestIdle(void)
{
uint16_t dummycnt=0x0000FFU;
uint16_t timeout = 0;
uint16_t Status;
uint8_t flag = 1;
do
{
TI_Fee_MainFunction();
do
{
dummycnt--;
}
while(dummycnt>0);
Status=TI_Fee_GetStatus(0 );
timeout++;
if (timeout == 100)
{
flag = Status;
break;
}
}
while(Status!= IDLE);
return flag;
}
FEE init is called first