读取厂家\设备 ID
发送 90H 指令,再发送 00h 的地址,然后接收即可。
代码如下:
void SPIFlashReadID(int *pMID, int *pDID)
{
SPIFlash_Set_CS(0); /* 选中SPI FLASH */
SPISendByte(0x90);
SPIFlashSendAddr(0);
*pMID = SPIRecvByte();
*pDID = SPIRecvByte();
SPIFlash_Set_CS(1);
}
两个状态寄存器
通过状态寄存器可以查询芯片此时是否忙碌、解除各种保护操作等。
写状态寄存器
/* 通过 BUSY 位得知芯片是否忙碌 */
static void SPIFlashWaitWhenBusy(void)
{
while (SPIFlashReadStatusReg1() & 1);
}
/* 使能操作 */
static void SP