W25QXX FLASH介绍

W25QXX FLASH介绍

目录

  • W25QXX FLASH介绍
    • 前言
    • 1 W25QXX简介
    • 2 硬件参数
    • 3 寄存器介绍
    • 4 编程相关
    • 结束语

前言

FLASH在嵌入式开发是很常用的一种芯片。它是存储芯片的一种,通过特定的程序可以修改里面的数据。FLASH在电子以及半导体领域内往往表示Flash Memory的意思,即平时所说的“闪存”,全名叫Flash EEPROM Memory。
FLASH存储器又称闪存,它结合了ROM和RAM的长处,不仅具备电子可擦除可编程(EEPROM)的性能,还可以快速读取数据(NVRAM的优势),使数据不会因为断电而丢失。

1 W25QXX简介

W25QX系列是串行闪存器件。擦写周期多达10W次,可将数据保存达20年之久,支持2.7~3.6V的电压,支持标准的SPI,还支持双输出/四输出的SPI,最大SPI时钟可达80Mhz。
FLASH芯片的内存空间一般都是由多个块组成,而块又是由扇区组成。
例如W25Q64就是将8M字节的容量分为了128个块,每个块大小为64K字节,每个块又可分为16个扇区,每个扇区4K个字节。
25Q系列的FLASH最小擦除单位为一个扇区,也就是每次必须擦除4K个字节。所以,这需要给FLASH开辟一个至少4K的缓存区,这样必须要求芯片有4K以上的SRAM才能有很好的操作。

2 硬件参数

硬件参数比较多,我只挑一些常用的介绍一下,更详细的介绍可以查阅芯片手册。

基本参数 说明
电压 2.7V - 3.6V
电流 4mA活动电流,掉电模式下小于1uA
通讯方式 标准SPI\双路SPI\四路SPI
速率 80MHz工作时钟\160MHz等效时钟(双路SPI模式下)\320MHz等效时钟(四路SPI模式下)
引脚号 引脚名称 I/O 功能
1 CS I 片选输入
2 DO(IO1) I/O 数据输出,标准SPI数据引脚
(数据输入输出1)*1
3 WP(IO2) I/O 写保护输入,低电平有效,拉低时不能写入数据
(数据输入输出2)*2
4 GND -
5 DI(IO0) I/O 数据输入,标准SPI数据引脚
(数据输入输出0)*1
6 CLK I 串行时钟输入
7 HOLD(IO3) I/O 保持输入,拉低时,DO将处于高阻抗,DI和CLK针上的信号将被忽略,拉高时设备允许操作
(数据输入输出3)*2
8 VCC - 供电

注:IO0和IO1用在标准和双路SPI模式,IO0到IO3用在四路SPI模式下。如果IO2和IO3不使用,可以硬件拉高。

3 寄存器介绍

我这里只列举部分跟软件编程相关的常用寄存器,更详细的介绍可以查阅芯片手册。。

指令名称 数值
制造商设备ID 90h
JEDEC ID 9Fh
写状态寄存器 01h
读状态寄存器1 05h
读状态寄存器2 35h
读数据 03h
写使能 06h
写失能 04h
扇区擦除(4KB) 20h
全片擦除 C7h
页编程 02h

4 编程相关

当我们要使用MCU来读写flash芯片的时候,需要用到spi通讯,这里面有几个比较容易踩的坑。

1、WP和HOLD引脚
如果使用标准4线spi通讯,要注意WP和HOLD引脚的状态,WP拉低时不能写入数据,HOLD拉低时,DO将处于高阻抗,DI和CLK针上的信号将被忽略。因此,如果不使用4路spi的话,WP和HOLD引脚可以直接通过硬件拉高,也可以通过MCU的GPIO拉高。否则,悬空或者拉低都会影响数据的写入。

2、连续写入时需要注意分区
flash一次最大可编辑256字节。flash内存可以分成多个页,每页256个字节,我们在使用spi写入flash时最多只能一次写入一页数据,并且不能跨页写入。因此,当我们需要连续写入超过一页数据时,需要注意把spi通讯分成多次。同样的,写入时也不能跨扇区写入。

3、flash写入前需要先擦除
flash写入时是按bit操作的,只能把1改成0,只有擦除才能把0变成1,因此,如果不擦除直接写入的话就会变成或运算,最终存储的数据可能跟写入的数据不一致。

4、擦除的最小单位是扇区(4K字节)
flash不能只单独擦除某一个寄存器,最少也是4096字节。如果某一个扇区原本保存了一些重要数据,然后你又需要从这个扇区的中间位置添加一些新的数据,这个时候需要注意在擦除前要先把原有保存的数据读出来,擦除后再把旧的数据和新的数据写进去,不然直接擦除的话会把原有的数据擦掉。

结束语

好了,关于W25QXX系列FLASH的介绍就讲到这里了,因为关于这个芯片的资料网上有很多讲解教程,因此本文只是挑了一些重点来讲,更详细的内容可以查阅相关的资料,如果有哪里不懂又找不到的话也可以在评论区留言或者私信给我。

好,讲完了,下课。
W25QXX FLASH介绍_第1张图片

你可能感兴趣的:(芯片驱动,经验分享,大学生专栏,flash,内存,嵌入式)