W25Qxx简介(SPI)

W25Q64简介:

  • W25Qxx系列是一种低成本、小型化、使用简单的非易失性存储器,常应用于数据存储、字库存储、固件程序存储等场景

  • 存储介质:Nor Flash(闪存)

  • 时钟频率:80MHz / 160MHz (Dual SPI/双重) / 320MHz (Quad SPI/四重)

  •  存储容量(24位地址):224/1024/1024=16

W25Q40:     4Mbit / 512 Kbyte

W25Q80:     8Mbit / 1M Byte

     W25Q16:     16Mbit / 2M Byte

     W25Q32:     32Mbit / 4M Byte

     W25Q64:     64Mbit / 8M Byte(容量)

W25Q128:  128Mbit / 16M Byte

     W25Q256:  256Mbit / 32M Byte

硬件电路:

  1. 芯片的引脚定义及说明:

4、8:电源正负极(2.7~3.6V)

1:/CS/SS   SPI片选(指定从机),有斜杠/横线是低电平有效

6:CLK  SPI时钟线

5:DI(MOSI) SPI主机输出从机输入

2:DO(MISO)SPI主机输入从机输出

3:/WP(低电平有效)写保护  接低电平,写保护,不能写

7:/HOLD(低电平有效)数据保持

  1. W25Q64的原理图:        

W25Q64的框图:

将8M容量的W25Q64分为若干个Block((块)64KB),对于每个Block又分为若干个Sector((扇区)4KB),对于每个Sector又分为若干个Page((页)256Byte)

Instructions  指令

Flash操作的注意事项:

写入操作时

  1. 写入操作前,必须先进行写使能(保护措施)
  2. 每个数据位只能由1改写为0,不能由0改写为1
  3. 写入数据前必须先擦除(发送擦除指令),擦除后,所有数据位变为1(0XFF) ,在Flash中0XFF表空白。
  4. 擦除必须按最小擦除单元(一个扇区4KB)进行

Flash无法擦除比扇区小的单位,要擦除只能一大片的擦除,擦除的最低单位是扇区、4KB。

  1. 连续写入多字节时,最多写入一页的数据,超过页尾位置的数据,会回到页首覆盖写入

这个意思是:一个写入时序,最多只能写一页(256Byte)  的数据,多出的部分会自动覆盖页首写进去。

  1. 写入操作结束后,芯片进入忙状态,不响应新的读写操作

  查看Status Register状态寄存器是否为0,为0芯片就不忙 了可以进行后续操作

读取操作时

  1. 直接调用读取时序,无需使能,无需额外操作,没有页的限制,读取操作结束后不会进入忙状态,但不能在忙状态时读取

指令:

  1. Write Enable(写使能) 指令码是0x06
  2. Write Disable(写失能)指令码是0x04
  3.  Read Status Register-1(读状态寄存器1) 指令码0x05,然后读取交换的字节。(主要作用是查看忙状态的)
  4. Page Program(页编程) 指令码0x02 ,用来写数据的(256Byte)限制,后面是交换发送三位字节地址,然后就可以交换写入数据D7~D0,如果还想继续写,就是指定地址++的地址写入了
  5. Sector Erase (4KB)(擦除指令):有64、32KB的块擦除,4KB的扇区擦除,以及整片擦除,如果想少擦点就用扇区擦除,流程是:指令码0x20,之后交换发送三个字节的地址,终止。
  6. JEDEC ID(读ID号)指令码0x9F 然后连续交换读取三个字节即可
  7. Read Data (读取数据) 指令码0x03,之后交换发送3个字节的地址,然后就可以交换读取了,如果还想继续读取,就是指定地址++的地址读取了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值