加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

stm32使用SPI对W25Q64--8M字节FLASH的读写

发布时间:2020-12-15 06:59:53 所属栏目:百科 来源:网络整理
导读:?? 先W25Q64介绍: 板上有个带SPI的FLASH产品,W25Q64,华邦公司,大容量64Mb的,也就是8M字节, (W25Q64把这个8M的容量分为128块-Block,每块64K字节,分出16个扇区,每个扇区4K字节) 即就是:W25Q64--8M ?? 一个块--64K ?? 一个扇区4K 最小擦除单位为一
??

先W25Q64介绍:

板上有个带SPI的FLASH产品,W25Q64,华邦公司,大容量64Mb的,也就是8M字节,

(W25Q64把这个8M的容量分为128块-Block,每块64K字节,分出16个扇区,每个扇区4K字节)

即就是:W25Q64--8M??一个块--64K?? 一个扇区4K

最小擦除单位为一个扇区

?

关键点---这样我们需要给W25Q64开辟一个至少4K的缓存区,这样对SRAM要求比较高,要求芯片必须有以上才能很好的操作。(嗯,要开辟缓存区)

?

至于W25Q64的擦写周期10W次、数据保存期限20年,随便用就是了。

支持电压2.7~3.6V,直接用给stm32供电的3.3V即可,不多说。

?

W25Q64还有一点参数:支持标准的SPI,还支持双输出/四输出的,最大时钟可以到80Mhz(双输出时相当于160Mhz,四输出时相当于320M),更多的的介绍,请参考DATASHEET

?

嗯,我们的stm32可以用,先用着。

stm32对W25Q64

读FLASH的时候,按地址,及要读的长度,读出来放在数据存储区即可

写FLASH的时候,要考虑扇区剩余大小,写的数据长度控制

if(NumByteToWrite<=secremain)secremain=NumByteToWrite;//

并且,里面已经有数的话,要先擦除这个扇区再写,

实际代码,参考stm32战舰例程

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读