如何用 spi hal库读写w25q128-64体育

×
嵌入式 > 技术百科 > 详情

如何用 spi hal库读写w25q128

发布时间:2023-04-07 发布时间:
|

1.w25q128 介绍

当我们有比较多的数据需要掉电存储时,上一篇文章所介绍的 24c02 (256个字节eeprom)就不够了。此时我们会用到另外一种类型的存储器,即 flash。比如具有 spi 接口的 w25q128。这颗小芯片虽然也只有简单的 8 个引脚,但存储容量却达到了128m-bit,也就是 16m 字节,同时它的读写速度可以达到 66mb/s。但是由于 stm32f030 不支持 quad/dual spi,只能以标准 spi 方式读写,所以速度会低一些。以下是 w25q128 的主要特点:

a.133mhz spi clock。

b.10万次擦写寿命,20年数据保持时间。

c.每颗具有64-bit唯一序列号 unique id。

d.每次可以写入 1 到 256 字节数据。

e.写之前需要对目的地址所在扇区进行擦除操作。

( winbond w25q128 datasheet )

我们通过以下连线使 w25q128 连至 stm32f030 的 spi1:

w25q128                   stm32f030

pin 1   /cs               pa4 也可以用其它 gpio 引脚

pin 2   do                pa6 spi1_miso

pin 3   /wp              ( vcc )

pin 4   gnd              ( gnd )    

pin 5   di                pa7 spi1_mosi

pin 6   clk               pa5 spi1_sck

pin 7   /hold or /reset   ( vcc )

pin 8   vcc               ( vcc )

2.代码

代码的开发如果想提高效率,一个方法就是充分利用前人的成果,而不是自己一再的去造轮子。对于w25q128 我们可以从github上找到驱动代码:/zixunimg/ofweekimg/github.com/nimaltd/w25qxxgnu general public license v3.0我们把它集成进spi例程里,完成 w25q128 的读写功能。step 1,下载后把解压的文件夹 w25qxx-master 放在 stm32cube_fw_f0_v1.11.0driversbspcomponents

step 2, 我们用 keil 打开下面这个工程:stm32cube_fw_f0_v1.11.0projectsstm32f030r8-nucleoexamplesspispi_fullduplex_compollingmdk-armproject.uvprojx在项目(stm32f030r8-nucleo)上点鼠标右键,选择add group...新建 group 并改名称为 driversbspcomponentsw25qxx-master


『本文转载自网络,64体育的版权归原作者所有,如有侵权请联系删除』

热门文章 更多
鼠标控制芯片mouse warrior及其应用
网站地图