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.

关于OSAL_NV对FLASH擦写的问题

我们想优化程序,程序中既要对NV_RAM进行频繁的读写操作,现在有个问题。

我知道FLASH硬件上,是“1”可以写“0”,但是“0”写“1”必须擦除。在osal_nv_write中,如果要改变NV_RAM中的内容,NV_RAM程序会把修改后的内容放在一段新的FLASH空间,原先的FLASH段废弃。

但是对于FLASH来说,如果是从1写0,就没有必要去擦除。也就是说osal_nv_write在写入数据前,旧数据与新数据做“与”运算,如果运算结果等于新数据,则没有必要再去开辟新的存储空间。

请问osal_nv_write是否有这样的判断机制?