标题: 有关W25Q128芯片读写的问题 附单片机程序 [打印本页]

作者: 624353765    时间: 2023-7-9 13:44
标题: 有关W25Q128芯片读写的问题 附单片机程序

flash我是以扇区进行读写的,要读就读4K要写就写4k,addr从0开始,每一个addr都代表一个扇区

一次写入比较少的扇区时读出来的数据没问题,但是一次写入较多的扇区时读出来的数据就对不上了

W25Q128用来存字库,字库有2MB大,从扇区0开始写,需要512个扇区

我写进去在读出来发现数据对不上,但是少写一点,写一个开头读出来就能对的上

我反复用计算器计算这个地址偏移没发现有问题,不知道那问大神能发现问题所在

作者: sbskywalker    时间: 2023-7-10 15:48
程序没有问题,应该是要注意写入之后等待写入完整,然后读取
作者: 624353765    时间: 2023-7-10 22:04
sbskywalker 发表于 2023-7-10 15:48
程序没有问题,应该是要注意写入之后等待写入完整,然后读取

我用上位机软件按扇区大小发送数据,每发送完一扇区会等待下位机应答才会发送下一扇区数据
作者: yuxuesuixing    时间: 2023-7-11 08:35
Page Program Time 0.7 3 ms
作者: yuxuesuixing    时间: 2023-7-11 08:37
Page Program Time tPP 0.7 3 ms
Sector Erase Time (4KB) tSE 45 400 ms
擦除一个扇区是45-400ms  写一个扇区是 0.7-3ms  你确定够吗?你都没有芯片忙检测的代码

作者: 624353765    时间: 2023-7-11 08:44
yuxuesuixing 发表于 2023-7-11 08:37
Page Program Time tPP 0.7 3 ms
Sector Erase Time (4KB) tSE 45 400 ms
擦除一个扇区是45-400ms  写一 ...

既然有扇区写成功说明擦写没问题
作者: yuxuesuixing    时间: 2023-7-11 08:52
qq624353765 发表于 2023-7-11 08:44
既然有扇区写成功说明擦写没问题

不想多讲,擦除完成立刻进行写操作,明明手册有擦除的时间,你能写成功纯纯是因为之前内部就是没有数据的,。芯片手册给你了忙检测,你还认为自己的错误操作就是对的,连验证都懒得试一下。
作者: 624353765    时间: 2023-7-11 12:21
yuxuesuixing 发表于 2023-7-11 08:37
Page Program Time tPP 0.7 3 ms
Sector Erase Time (4KB) tSE 45 400 ms
擦除一个扇区是45-400ms  写一 ...

有没有忙检测你不会看代码吗?你看不懂英文拿个翻译软件翻译一下,看看有没有这一步
作者: 624353765    时间: 2023-7-11 12:24
yuxuesuixing 发表于 2023-7-11 08:52
不想多讲,擦除完成立刻进行写操作,明明手册有擦除的时间,你能写成功纯纯是因为之前内部就是没有数据的 ...

而且审题不清,我问的问题明明是扇区数据被覆盖了,不是没有写入
作者: Y_G_G    时间: 2023-7-11 12:34
1,在写入擦除命令之前,要先读取WEL位,并写入写使能
2,在正确写入擦除命令,CS引脚搞高之后,要先等待擦除完成,再写入,页擦除是需要时间的




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1