W801使用SDK驱动W25Q128时,读取设备ID不成功,无法驱动成功。仅仅在wm_801中修改了初始的端口定义,并检查过端口,使用的PB14/15/16/17没有问题,且已经成功用这4个端口驱动过SPI屏幕,因此应该排除是端口链接不正确的问题。
查看更多
GPIO初始化的地方截图看下。
发布 问题
分享 好友
手机 浏览
回到 顶部
预编译的宏已经打开了,GOIO初始化是修改了wm_main.c中原来的引脚定义
配置没有问题,建议检查下硬件接线,用示波器看下cs脚有没有下拉,spi flash我这边是有测试过可以正常使用哦。
好的 谢谢
@isme 今天重新测试了一下 25q128 winbond的无法成功驱动,GD的能成功驱动,但是好像看datasheet,这两者基本是相同的。
@SK2024 GD 和 winbond,指令有点区别,印象中需要修改下驱动的一地方,
我今天也搞SPI-FLASH这个W25Q128,确实在wm_fls.c的tls_spifls_read_id函数里,要做以下修改:
查了手册发现,如果0x90发送3个dumybyte,即把cmd改成cmd=0x90能正确读取到结果。若发送0x9F命令读取JEDEC ID的话,是发送0x9F,然后直接读取JEDEC ID,不用发送dummybyte的。
我也是想移植别人的W25QXX代码,一直失败。网上说可以用wm_fls_gd25qxx.c才试一试能不能行。。嗯,果然能行,我还是继续纠结我的配置哪里出问题。。
@haoronMango 参考这个sdk http://ask.winnermicro.com/article/76.html,w25qxx和gd25qxx有做兼容