- 7
- 7月
小结一下SPIFlash,以便更好地兼容更多的SPIFlash
首先从命令上:
常用的,SPIFlash都支持的,并且不同厂家都共有的命令有:
01 写状态寄存器
02 写
03 读
05 读状态寄存器
06 写使能
D8 擦除
在读FlashID上,不同厂家支持的命令略有不同,但一般可以通过以下四条命令进行尝试,来确定Flash的厂家及型号:
9F AB 90 15
在处理兼容性的过程中,最多的就是处理写命令。对于Flash来说,有Page-Program,有Byte-Program等。不同厂家对此的支持不同,有一些Page-Program还要求必须以2Byte的整数倍来进行编程。
其次,就是去除写保护了。有些Flash在上电的时候是写保护的,如果需要进行写操作,则需要对状态寄存器进行操作。
在写完状态寄存器后,最后能够WaitBusy,并且读取状态寄存器以确保顺利写入。
再次,就是写状态寄存器之前是否需要写状态寄存器使能了。部分Flash需要,写状态寄存器使能的命令为50。
总之,仔细阅读好厂家给的,或网上下载的SPIFlash的SPEC,SPIFLASH的兼容性应该是没有太大的问题的。