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有做兼容