完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
我正在为CYPRESS™ CX3 (FX3) 开发辅助引导加载程序 (SBL),它从 SPI Flash 加载应用程序并执行它。 但是,通过 SBL 启动应用程序时,USB 3.0 枚举失败。
我的引导加载程序实现基于来自boot_fw/src/spi_test.c的参考代码。 观察到的行为 1当直接加载应用程序(不使用 SBL)时 →USB 3.0 工作正常。 2. 通过辅助引导加载程序引导时 → USB 枚举失败(未检测到设备或处于未知状态)。 3. 两种情况下使用相同的应用程序二进制文件,但 USB 的行为不同。 4. 在应用程序中添加调试打印语句可以使 USB 枚举工作,但删除它们会导致失败。 5.引导加载程序根本不初始化 USB。 它只是从 SPI 加载应用程序并跳转到CyFx3BootJumpToProgramEntry() 。 调试观察 USB 3.0 链路状态和 PHY 状态寄存器显示工作和非工作情况之间的差异:
|
|
相关推荐
1个回答
|
|
|
针对CYPRESS™ CX3 (FX3)辅助引导加载程序(SBL)导致USB 3.0枚举失败的问题,以下是逐步解决方案: 1. 检查内存配置和资源释放
2. 复位外设和时钟
3. 中断处理
4. 添加延时或同步机制
5. 调试应用程序的启动流程
6. 使用调试工具定位问题
7. 修复应用程序的USB初始化顺序
8. 检查SPI Flash加载的正确性
9. 参考官方示例调整代码
总结问题通常源于SBL未完全清理硬件状态或应用程序未能正确重新初始化。重点检查内存冲突、外设复位、中断清理、时钟配置,并通过调试工具验证硬件状态。若添加打印后问题消失,可尝试在关键步骤(如USB连接前)插入短延时,或优化初始化顺序确保硬件就绪。 |
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
2755 浏览 0 评论
1452 浏览 0 评论
1930 浏览 0 评论
CYUSB3014烧录失败Cypress Benicia USB Boot Device
7903 浏览 1 评论
11310 浏览 0 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-14 04:41 , Processed in 0.708503 second(s), Total 73, Slave 56 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
3109