大家好,我是新手多指教! 最近在使用W25Q128 存储实时数据监控,每500mS上位机发来40个字节,要将这40个字节存入该FLASH中,每次存储都要从FLASH的起始地址检测该块是不是空的,若非空则写入数据。
问题:1 FLASH的擦写次数为大于10万次,这10万次,指的是每个块的的擦写次数,还是不管哪个块整个FLASH擦写总和 为10万次?
2 如果超过10次后,是写不进数据还是芯片损坏,还是保存时间缩短?
目前本人是认为,该10万次指的是每个块的擦写寿命。
在MCU中 申请一个2K的SRAM 当SRAM被写满时2048个字节,将SRAM的数据再存入FLASH中,大约每分钟擦写2次,每天记录18小时就是擦写2160次。(80个字节/秒 一天需要记录18个小时总共约 5184000个字节,FLASH 总共存储16777216个字节)。
16777216/5184000>3 因此本人将FLASH 分为3个部分 每天使用FLASH 的 1/3. 这样做合理吗?
FLASH 的擦写次数指的是每个块的擦写次数 ? 还是不管哪个块 总共擦写次数10万次?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
优化:
1. 大RAM缓冲。如果数据重要可以大电容或电池,掉电检测并保存。或加小铁电来缓冲。
2. 尽量使用循环写的方式,即擦除后,一次数据比较小,可以写N次。写满一块,再继续用下一块。用完后再从头来。
一周热门 更多>