STM32 FLASH的擦写寿命

2019-07-24 12:59发布

    这个问题,其实从STM32各个型号的datasheet就可以看出来.     对比了几个文档之后,我发现STM32F10x系列的不同型号,他们的最少擦写寿命不一样.仔细对比了下,原来是版本的问题.在老版本中,写的内容如下:

    这是老版本的表述,就说最少是1K次,典型的是10K次.而后面的新版本,其内容如下:


     新版本的把最少次数改为了10K次,这样的话,我们可以认为STM32的FLASH擦写周期在1W次左右.所以大家可以算算,每天擦写100次,那么需要100天.但是你能每天刷100次么?除非你想测试STM32的flash寿命,呵呵.否则,顶多就是30次的样子.这样算来,每天擦30次,从不间断,能用一年左右. 但是你能一年平均每天都擦30次么?
    


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
34条回答
xyzjacky
2019-07-28 09:17
本帖最后由 xyzjacky 于 2018-5-24 16:03 编辑
动次打次歌 发表于 2018-5-23 15:56
不用担心这个,如果可能会超过使用寿命那就多用几页轮询写,做过实验,超过寿命写不一定坏,但芯片会有概 ...

想请教一下,一般我们说的擦写一万次,到底是指的擦一万次,还是写一万次?
因为擦一页,这一页可以写很多次(如果写入的数据很少),所以擦和写的次数不是一定相等的。一般说的擦写是使用软盘时代留下名词,一个2G的SD卡,一次写入2G的数据,才是擦写一次。
我个人认为,通常讨论的MCU的flash的擦写次数,其实是擦次数,一万次即擦一万次。

以下为百度上一个网友所说:
这个擦写是从软盘时代遗留下来的一个名词。。擦写是对全部容量大小的一次写入操作。举个简单的例子,SD卡大小为2G,放入刚刚好2G大小的文件则SD卡擦写一次。擦写是一个写操作,读不影响这个数字。只是写入1M空间的话只有那1M大小的空间会被写入,其他部分没有写入操作。有的存储(SSD)的主控芯片会平均调节写入的位置,争取每一个空间的写入次数都差不多。手机虽然没有,但是也没多大关系。大部分的软件运行时候都是读操作,只有极少的用户数据的内容,比如聊天记录、游戏存档会进行写操作,而聊天记录这样的东西,是不会进行覆盖操作的,文件会填补起来慢慢变大。游戏存档有的会覆盖,但是这个也是受存储的主控芯片调节的。存大容量的东西确实会更快的消耗擦写次数,毕竟存储的I/O更快。大部分你的操作都是在内存中进行的。总的来说用户不必忧虑擦写次数。。有人尝试过365*24小时的疯狂擦写,就是装满了删除继续装,SD卡表示还是可以正常运行。

一周热门 更多>