STM32--SPI通信协议(2)W25Q64简介

一、W25Q64简介

1、W25Qxx中的xx是不同的数字,表示了这个芯片不同的存储容量;

2、存储器分为易失性与非易失性,主要区别是存储的数据是否是掉电不丢失:

易失性存储器:SRAM、DRAM;

非易失性存储器:E2PROM、Flash;

二、硬件电路

WP:写保护,可配合内部寄存器配置,可实现硬件的写保护,低电平写保护,高电平不保护;

HOLD:数据保持,如果在SPI过程中,芯片需要干其他事就可以拉低此引脚,芯片释放总线,但芯片时序不会终止,而是记住当前状态。在需要继续通信时,HOLD置回高电平,然后继续之前的时序。相当于SPI总线进了一次中断。

三、W25Q64框图

一整个存储空间首先划分为若干块(Block)(8M分为128块),对于每一个块又划分为若干扇区(Sector)(1块分为16扇区),对于整个空间,会划分为很多页,每页256字节(1扇区分为16页)

Status Register:状态寄存器,与忙状态,写保护,读保护有关;

SPI Command & Control Logic:SPI控制逻辑,负责执行指令、地址锁存、读写数据等;

Column Decode And 256-Byte Page Buffer:256字节的页缓存(256字节的RAM存储器),会对一次性写入的数据量产生限制。写入的数据会先放在缓存区,在时序结束后,芯片再将缓存区的数据复制转移到对应的Flash里进行永久保存(在转移的过程中会置Status Register状态寄存器busy位为1)。因为Flash写入掉电不丢失的数据比较慢所以需要缓存区

四、Flash操作注意事项(掉电不丢失)

最小的擦除单元:一个扇区,也就是4096个字节 ;

最多写入一页的数据256字节:因为一个缓存区只有256字节;

五、Status Register状态寄存器

BUSY位:在写入数据,擦除数据,写状态寄存器指令时,该位置1,忽略进一步指令,除了读状态寄存器和擦除挂起指令;在写入数据,擦除数据,写状态寄存器指令结束后,该位置0。

写使能锁存位WEL:在执行写使能指令后,WEL置1,代表芯片可以进入写入操作;当设备写失能时,WEL位清0。在上电后,写失能,写入数据,擦除数据后WEL位都清0。

六、指令集

1、芯片ID

使用指令AB,90读ID就是16;使用9F来读就是4017;写程序的时候可以用来验证SPI是否可行。

2、SPI指令集

写使能、读状态寄存器1、页编程(即写数据)、按4kb的扇区擦除指令、读ID号、读取数据

相关推荐
天空'之城8 小时前
单片机基础核心知识点汇总(三十五)
单片机·嵌入式硬件
secondyoung8 小时前
I2C通信协议详解
arm开发·驱动开发·stm32·单片机·嵌入式硬件·mcu·51单片机
anew___9 小时前
蜂鸣器播放音乐——让 Arduino 唱出旋律
c++·stm32·单片机·嵌入式硬件·c
jianqiang.xue10 小时前
ESP-IDF保姆级入门40|量产烧录与产线测试全解:批量烧录方案/校准流程/功能测试/不良分拣/产线追溯,掌握工业级量产交付全流程
单片机·物联网·esp32
Zw-awa10 小时前
001-01-从C语言的main到STM32的main-你的代码后来去了哪里
stm32
幼儿园蛋小黑13 小时前
单片机数码管LED灯独立按键中断定时器综合实战
单片机·嵌入式硬件
自小吃多13 小时前
PCB Editor软件复制、改变、删除操作笔记
笔记·嵌入式硬件
数字新视界14 小时前
数据中心基础设施管理系统发布新版本,助力企业云化转型
嵌入式硬件·物联网·数据中心·数据中心基础设施管理·dcim管理系统
SKH.15 小时前
单片机(1)
单片机·嵌入式硬件
llilian_1615 小时前
小切口解决大问题:时序校准场景下的标准时间间隔脉冲信号发生器应用方案
功能测试·单片机·嵌入式硬件·51单片机