W25Q80 SPI读数据问题?

2019-07-21 03:42发布

W25Q80 SPI驱动程序是移植原子哥的SPI实验里的程序。我测试发现比如:读取芯片ID
u16 W25QXX_ReadID(void)
{
        u16 Temp = 0;
        W25QXX_CS_L;       
        SPI1_ReadWriteByte(0x90);
        SPI1_ReadWriteByte(0x00);             
        SPI1_ReadWriteByte(0x00);             
        SPI1_ReadWriteByte(0x00);
        SPI1_ReadWriteByte(0xFF); //这句是我加上去的,加上这句才能正常读取芯片ID。
        Temp|=SPI1_ReadWriteByte(0xFF)<<8;  
        Temp|=SPI1_ReadWriteByte(0xFF);         
        W25QXX_CS_H;                                    
        return Temp;
}
看了芯片资料Fast Read的时序才需要加上面那个语句,所有的读操作加了,才能正常。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
3条回答
03零三邓何芯桃
1楼-- · 2019-07-21 08:47
 精彩回答 2  元偷偷看……
正点原子
2楼-- · 2019-07-21 13:40
我们例程不加是可以的哦,你可以试试吧我们开发板的SPI FLASH换下来,然后还你的Q80上去,试试看。
BigZhong
3楼-- · 2019-07-21 18:14
本帖最后由 BigZhong 于 2019-4-1 20:20 编辑
正点原子 发表于 2019-4-1 02:08
我们例程不加是可以的哦,你可以试试吧我们开发板的SPI FLASH换下来,然后还你的Q80上去,试试看。

没有开发板,自己画的板子调试的,搞不懂为什么要用高速读的时序才正常

一周热门 更多>