您的位置:首页 > 其它

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

2014-09-16 22:51 686 查看


先W25Q64介绍:

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

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

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

最小擦除单位为一个扇区



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



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

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



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



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



stm32对W25Q64

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

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

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

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



实际代码,参考stm32战舰例程
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: