外置flash适配
W25Q手册中时钟后缀1-2-2,1-4-4等代表的含义分别是指令,地址和数据通信时用的IO数。比如1-4-4就是指令阶段使用1个IO,地址阶段使用4个IO,数据阶段也是使用4个IO。
有些功能,使用单线模式和双线、四线模式时用的指令是不一样的:
SPI可以配置为双线模式,但是使用单线模式的指令,同理四线也是差不多。并不是所有功能都有双线、四线指令,而是只有单线指令(具体看chip datasheet),这时候虽然配置了双线模式,但是因为使用的是单线指令,实际也是当成单线模式使用。
QSPI支持标准SPI,DUAL,QUAD,具体那些指令支持那种模式,要看手册。对于STM32,使用不同指令,其实就是选择用几线。我一般会SPI读ID->SPI复位Flash->SPI配置QE位->如果支持QPI,就开启QPI->剩下全部用QUAD指令。
擦除命令主要耗时在擦除本身,而不是命令本身。命令字本来就很短了。QSPI基本都是针对READ和PROGRAM的。