我们想优化程序,程序中既要对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是否有这样的判断机制?
VV:
应该没有,只有判断需要写的和原先在是否一模一样,如果不一样的话就重新写了