本帖最后由 yibiejiangtian 于 2016-11-17 22:38 编辑
有人尝试过读取W25Q64的JEDEC ID吗,也就是使用0x9f命令。我用0x90读取返回的ID正常,可使用0x9f命令返回的全是0,什么都读不到,有人遇到过吗
u32 SPIFlash_ReadID(void)
{
u32 FlashID,t1,t2,t3;
FlashID=0x00000000;
CS_Enable;
SPIFlash_SendReadByte(0x9F);
t1|=SPIFlash_SendReadByte(0xFF);
t2|=SPIFlash_SendReadByte(0xFF);
t3|=SPIFlash_SendReadByte(0xFF);
CS_Disable;
FlashID=(t1<<16)|(t2<<8)|t2;
return FlashID;
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
void w25qxx_wake_up(void)
{
W25QXX_CS_PIN_WRITE(0);
spi_read_write_byte(W25X_WAKE_UP);
W25QXX_CS_PIN_WRITE(1);
delay_us(1);
}
我们公司采购的FLASH,不先wake_up的话就不行。
一周热门 更多>