关于W25Q128

[复制链接]
5498|11
手机看帖
扫描二维码
随时随地手机跟帖
dzxc_wh|  楼主 | 2021-7-20 22:47 | 显示全部楼层 |阅读模式
现在在使用W25Q128做一个类似数据记录仪的设备,间隔1秒记录一些设备运行中的数据。目前,数据擦除,读,写都正常。有些疑问:整块擦除时间典型值为40秒,最长为200秒。假如在擦除的命令发送完成,FLASH正在执行内部擦除的过程中,突然断电,这时候会怎么样?是下次上电的时候继续执行擦除过程,还是擦除不完整,有部分没被擦除?是哪一部分没被擦除干净?怎么解决这个问题,我想到的就是使用超级电容(当然这个得查下FLASH在执行擦除指令的时候电流是多少才好计算),各位大哥还有没有更好的办法?谢谢谢谢

使用特权

评论回复
dzxc_wh|  楼主 | 2021-7-20 23:07 | 显示全部楼层
zijiding

使用特权

评论回复
thinkabout4451| | 2021-7-21 07:35 | 显示全部楼层
中途掉电就不会擦除完成了,做个标记,下次上电检查标记后决定要不要重新擦除

使用特权

评论回复
dzxc_wh|  楼主 | 2021-7-21 07:41 | 显示全部楼层
本帖最后由 dzxc_wh 于 2021-7-21 07:43 编辑

不会擦除完成是啥意思?就是前面的被擦除干净了,后面的没有?我今天整准备做这个测试。首先测试下总共擦除时间多少,再分别间隔时间断电,然后看看读出来的是啥东西,还有,这样操作,对芯片本身有没有影响?不会这样操作次数多了,把芯片搞挂了吧?

使用特权

评论回复
TIANZHANG21| | 2021-7-21 11:14 | 显示全部楼层
dzxc_wh 发表于 2021-7-21 07:41
不会擦除完成是啥意思?就是前面的被擦除干净了,后面的没有?我今天整准备做这个测试。首先测试下总共擦除 ...

要控制擦写次数,不能循环擦写。

使用特权

评论回复
TIANZHANG21| | 2021-7-21 11:15 | 显示全部楼层
应该可以直接写,不用擦吧,你可以试下。

使用特权

评论回复
小叶三千| | 2021-7-21 15:01 | 显示全部楼层
可以校验一下吧

使用特权

评论回复
foxpro2005| | 2021-7-21 16:29 | 显示全部楼层
本帖最后由 foxpro2005 于 2021-7-21 16:32 编辑

一次不要擦除这么多吧,用多少擦除多少吧,比如: 4K,32K 这样
另外,块擦除不要这么长时间吧, 记得整片擦除才几十秒的时间
再者,也可以读取目标区域的数据进行验证一下,看看是不是0xFF,有没有被擦除

使用特权

评论回复
dzxc_wh|  楼主 | 2021-7-22 08:10 | 显示全部楼层
测试结果如下:1、整片擦除时间约40秒。2、将擦除命令+地址等信息发送完成后,等待5秒断电,然后重新上电后,读出来的数据全是00,不是前面的擦除完成,后面的没被擦除。

使用特权

评论回复
drer| | 2021-8-11 09:10 | 显示全部楼层
这个擦除的时间长的有点不正常了

使用特权

评论回复
gwsan| | 2021-8-11 09:19 | 显示全部楼层
一个块大概是多大啊

使用特权

评论回复
dalarang| | 2021-8-11 10:59 | 显示全部楼层
W25Q128的整个芯片擦除时间是这么长的,只在设备出厂时做一次全擦除,这时候不用考虑意外断电。
正常使用时就循环覆盖擦除,要写到下一个扇区时擦除单个扇区就可以了,不要全擦

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

23

主题

107

帖子

0

粉丝