write flash again with low level driver S25FL164K

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Anonymous
Not applicable

Hi all,

   

I use low level driver to write/read flash S25FL164K OK.

   

But when i  want to rewrite the previously data written then not OK.

   

When write/read i use function slld_WriteOp/slld_ReadOp.

   

My write data only 4byte, if i erase (minimum of 4k bytes) then rewrite ok but waste of flash memory.

   

Is there another solution I make the rewrite??

   

 

   

Thanks you very much for all!

0 Likes
1 Solution
Anonymous
Not applicable

Hi,

   

No there is no other solution.

   

Basically overwriting or updating involves erase and then writing.It is because of the nature of flash devices. In flash you can not transition from 0 to 1. It is always 1 to 0. So when you want to overwrite, you need you will make all the locations as 1 and then make them zero where ever it is necessary. Since erase is involved, the lowest section of flash you can erase is sector. It is not possible to erase individual pages.

   

Thanks,

   

Krishna.

View solution in original post

0 Likes
1 Reply
Anonymous
Not applicable

Hi,

   

No there is no other solution.

   

Basically overwriting or updating involves erase and then writing.It is because of the nature of flash devices. In flash you can not transition from 0 to 1. It is always 1 to 0. So when you want to overwrite, you need you will make all the locations as 1 and then make them zero where ever it is necessary. Since erase is involved, the lowest section of flash you can erase is sector. It is not possible to erase individual pages.

   

Thanks,

   

Krishna.

0 Likes