STM32_SPI_W25Q64

本文详细介绍了W25Q64闪存芯片的存储结构,包括其分区方式、扇区擦除机制及SPI接口通信原理。同时提供了关键的SPI指令集,帮助读者理解如何进行数据读写及擦除等操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

W25Q64:一共是8M字节=8*1024*1024=8388608(Byte),分为128(64K),每一块有分为16个扇   区(4K),所以扇区的个数是:128*16=2048(),那么上面函数的参数Dst_Addr的范围就是0-2047假如要擦除第1000个的扇区,那么这个扇区的字节起始就是1000*4096=4096000,因此把*4096000     

先发送最高8位,次高8位,再到最低8位,然后W25Q64就从4096000开始往下擦除4K大小的数据空间,计算地址的时候是使用字节来计算的。

Master---->主机   |  Slave--->从机;
SPI,高速,全双工,同步通信总线;
SPI接口一般使用4条线
MISO 数据输入,从机数据输出。
MOSI 主机数据输出,从机数据输入。
SCLK时钟信号,由主机产生。
CS从机片选信号,由主机控制。
[主机通过向它的SPI串行寄存器写入一个字节来发起一次传输。
 寄存器通过MOSI信号线将字节传送给从机,从机将自己的移位寄存器
 中的内容通过MISO信号线返回给主机。]
SPI 主机和从机,两者通过SPI协议通讯。
设置SPI的模式 ,是从机的模式,决定了主机的模式。
从机的SPI 的模式分为:
 1.固定的,由SPI从机的硬件决定。

(SPI从机模式,相关的datasheet中会有描述;SPI从机在空闲时间,是高电平还是低电平,即决定了  CPOL是0还是1;)

 2.可配置的,有软件自己决定
指令集
#define W25X_WriteEnable      0x06 //Write Enable
#define W25X_WriteEnableVSR   0x50 //Write Enable for Volatile Status Register
#define W25X_WriteDisable     0x04 //Write Disable
#define W25X_ReadStatusReg1   0x05 //读状态寄存器1:S7~S0
#define W25X_ReadStatusReg2   0x35 //读状态寄存器2:S15~S8
#define W25X_WriteStatusReg   0x01 //写读状态寄存器:BYTE1:S7~S0  BYTE2:S15~S8
#define W25X_PageProgram      0x02 //单页编程:BYTE1:A23~A16|2:A15~A8|3:A7~A0|4:D7~D0 #define W25X_SectorErase      0x20 //扇区擦除:4K BYTE1:A23~A16|2:A15~A8|3:A7~A0 #define W25X_BlockErase32K    0x52 //块擦除:32K BYTE1:A23~A16|2:A15~A8|3:A7~A0
#define W25X_BlockErase64K    0xD8 //块擦除:64K BYTE1:A23~A16|2:A15~A8|3:A7~A0
#define W25X_ChipErase           0xC7    //芯片擦除
#define W25X_EraseSuspend        0x75    //暂停擦除
#define W25X_EraseResume         0x7A    //恢复擦除
#define W25X_PowerDown           0xB9    //掉电
#define W25X_ContinuousReadMode  0xFF    //连续读模式
#define W25X_ReadData         0x03 //读数据:BYTE1:A23~A16|2:A15~A8|3:A7~A0|4:D7~D0 #define W25X_FastReadData    0x0B //快速读取BYTE1:A23~A16|2:A15~A8|3:A7~A0|4:dummy|5:D7~D0 #define W25X_FastReadDual   0x3B //快速双读取BYTE1:A23~A16|2:A15~A8|3:A7~A0|4:dummy|5:D7~D0  


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值