完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
潘多拉开发板SFUD初始化失败问题[SFUD] Error: W25Q128 flash device is initialize fail.
问题描述如下: 潘多拉开发板SFUD初始化失败,提示设备不支持。 原因 潘多拉有一批板载的FLASH更换了厂家,代码不兼容。同样遇到这个问题的小伙伴可以检查板载的flash的丝印层是否带有nm25字样。 解决方案 使用这个SDK仓库:仓库地址 并检出到fix_nm25q分支下的代码。 这个仓库不是官方资料中给,感谢某个大神的提供。 接着运行里面的keil工程13_component_fal。你会发现问题已经被奇妙的解决了。 分析 像W25Q128这种串行Flash芯片种类有很多,如果每种芯片都提供一套驱动函数不便于管理,RT-Thread为串行Flash提供了一套通用驱动函数SFUD(Serial Flash Universal Driver),能驱动多数常用SPI Flash,SFUD属于SPI设备驱动框架层。 其中,SFUD这样的驱动框架使用了三个列表来描述SFUD的芯片信息,如果遇到不能识别的芯片,只要对这三个列表进行增添就可以了。 增添nm25的信息参考:gitee的代码提交比对 对RT-STUDIO模板工程进行修改 上述的方法获得的是修改过后的例程,由于我个人是比较喜欢RT-STUDIO创建的模板工程的工程结构的。所以这里也献上基于RT-STUDIO模板工程进行修改适配nm25flash的方法。 根据仓库中fix_nm25q分支的代码提交比对,最后一次更新的对比更改相关内容 同时在portsdrv_qspi_flash.c下 stm32_qspi_bus_attach_device(“qspi1”, “qspi10”, RT_NULL, 1, w25qxx_enter_qspi_mode, RT_NULL); 第四个参数改为1,表示数据线宽为1。 编译&下载 使用sf命令调试 到这里可以看出修正已经完成了。 |
|
|
|
只有小组成员才能发言,加入小组>>
2302 浏览 0 评论
1357浏览 3评论
820浏览 2评论
468浏览 1评论
1342浏览 0评论
223浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-8-18 00:21 , Processed in 1.561350 second(s), Total 80, Slave 62 queries .
Powered by 电子发烧友网
© 2015 www.ws-dc.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号