This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TMS320F280039C: Read operation on Emulated EEPROM/Data Flash

Part Number: TMS320F280039C


Hello,

I would like to use 2 sectors of 8KB each for storing some data. 

Writing on these sectors and deleting these sectors is possible by referring to the sample code provided for Flash Kernel Programming. 

But The F021 library does not have any read operation related Interfaces.

Why is it so?

Also, after implementing the ReadData function manually, If I try to read the content of Flash. It works only in the step-by-step debug mode. While free running the code, a Flash Uncorrectable Error NMI is obsorved. 

What could be the reason?

  • Hello,

    There is no special API needed to read a Flash address; you simply access the address directly. For erase and programming, there are special mode commands and timings involved in performing the physical operation, so an API is necessary. For read a simple memory bus access works just the same as any other memory region, other than wait states because of the different Flash read clock frequency.

    If you're getting an NMI trying to read data after programming the Flash, then most likely ECC data was missing during the programming operation or incorrect. Take a look at Example_ProgramUsingAutoECC in flash example 1 for how to do this correctly. In particular, the call to Fapi_issueProgrammingCommand() should have Fapi_AutoEccGeneration as the last argument.

    Best regards,
    Ibukun