(STM32)W25Q64存储模块

 1bit表示一个二进制位,1Byte表示8个二进制位。

每一个字节需要一个地址,所以24位地址,2^24次方最大寻址范围是16M。

W25Q256是特殊型号,切换4字节寻址模式才能使用后面的16M空间。

HOLD:芯片正常读写数据时,突然产生中断,然后想用SPI通信线去操控其他器件,这时如果把CS置回高电平,那时序就终止了,但如果你又不想终止总线,又想操作其他器件,这就可以HOLD引脚置低电平,这样芯片就HOLD住了。芯片释放总线,但是芯片时序也不会终止,它会记住当前的状态,当你操作完其他器件时,可以回过来,HOLD置回高电平,然后继续HOLD之前的时序,相当于SPI总线进了一次中断,并且在中断里,还可以用SPI干别的事情

 IO标识和双重SPI、四重SPI模式有关。双重IO12同时并行作为数据线收发,四重IO1234同时并行作为数据线收发。

右上角这一大块,描述的是存储器的规划示意图 

为了方便管理,储存区分为若干块 Block  , 其中每个块再划分成若干扇区 Sector

整个空间内部又划分为很多页 Page ,。

高电压生成器:掉电不丢失存储器,一般内部都有一个高压源,让内部存储器产生即便断电也不会消失的状态。

发送的三个字节地址,前两个字节会进入页地址锁存器,通过页保护、行解码来选择需要操作哪一页。最后一个字节会进入字节地址锁存器。,通过列解码和256字节页缓存,来进行指定字节的读写操作。

SPI控制逻辑相当于整个芯片的管理员,执行指令、读写数据都靠它。

状态寄存器:它和忙状态、写使能、写保护等功能有关

因为这个地址锁存都有一个计数器,所以进行读或者写操作之后,地址指针自动加1。

 256字节的页缓存区。写入数据先放入页缓存区,然后在时序结束后,芯片再将缓存区的数据复制到对应的Flash里面进行永久保存 。但是有一个限制,写入的时序,连续写入的数据量不能超过256字节。写完之后缓存区再转移到Flash内。

 往缓存区写入数据时序结束后,芯片会进入一段忙的状态,会给状态寄存器BUSY置位。此时芯片不响应新的读写时序。

(非常重要) Flash存储器读写特性和要求:

 擦除有专门的擦除电路执行,只需要发送指令即可。

Flash中 0xFF代表空白   而不是0x00

最小擦除单元,不是字节,是按照存储器的划分,最小是扇区。

连续写字节不能跨越页边沿,否则会出现地址错乱,连续读字节可以跨页,不会返回当前页头。

发出擦除指令,芯片也会进入忙状态,此时写入也是无效的,需要获取状态寄存器BUSY标志位置0后才可以继续操作。

写使能:任何写入操作前都需要写使能,进行写入操作后,不需要再写失能,硬件会自动失能。一个写使能只能保证后续一条写指令可以执行。

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值