Post Go back to editing

How can I read/write Internal SPI2 Flash for SC587


I am working with ADSP-SC587 with internla SPI flash for code update.

I want to implement run time flash programming, for example i feel like reading/writing data into internal flash by calling a software function, maybe the function can get the first start address and data then allows it to read/write data in address at internal flash.

I think before write the data into the flash address for example: 0x60000000, it should first erase all the data in the flash, then after erased sucessfully, go to the next step, write data into the internal flash.

Plus, the erase function is done by sector and sector ? or even all the entier segment(from the start flash address to the end ) ?

In addition, after the erase process, i want to read the data value from a specific flash address, like 0x60000200, how can i do this ?

The question had been asked by other people long time ago(the quesiton was for BF506F), but in the EZ, there is no reply.

I wonder if ADI has the similar example provided ? please give some help.

thanks in advance

  • One plus point, the flash or erase command comes from the upper software, the command recevies by the UART port, then prase the erase or flash command, when recevies and prase the erase or flash command, calling "the software function" that i want to erase the internal flash and then flash.

  • Hi ,

    Apologies for delayed response. From your mail, I can understand that you want to access flash at run time. Please correct if my understanding is wrong. I found a code for flash write/read in my repository and attaching the same for your reference. This code is for SPI in quad mode. Please use this as a reference and modify as per your requirement.

    Hope this helps!

    Lalitha S