[STM32F1] USB HOST卡在STALL

[复制链接]
2084|4
 楼主| 幻刺 发表于 2014-8-6 09:08 | 显示全部楼层 |阅读模式
本帖最后由 幻刺 于 2014-8-6 09:37 编辑

用的官方的2.1的库,自己做了个板子。IC使用STM32F107,没有VBUS的开关电路。
同样的程序,可以正常使用读取2个LOW SPEED的HID摇杆。但是最近换了个FULL SPEED的摇杆。就不好用了。
状态卡在URB_Status == URB_STALL。加了几个变量查看了下,CTRL_STATUS_IN_WAIT进了58次,其中2次URB_Status == URB_DONE,没有进过URB_ERROR和timeout,然后就进URB_Status == URB_STALL了。
枚举貌似通过了,ENUM_DEV_CONFIGURED Status = USBH_OK;
看了很多帖子貌似没有我这个情况的?坐等香主解惑
香水城 发表于 2014-8-6 14:32 | 显示全部楼层
第一:“没有Vbus的开关电路”是说107时钟通过外部charge pump给USB插槽上的Vbus pad提供5V么?

第二:“可以正常使用读取2个LS的HID摇杆”是说可以分别正常地操作两个LS HID摇杆,而不是同时操作吧。触发你自己实现了一个在F107上的Hub stack

第三:你的这个STALL是在CTRL_STATUS_IN_WAIT的阶段收到的设备返回应答么?控制传输没有正确结束,如何枚举就通过了呢?
mmuuss586 发表于 2014-8-6 18:40 | 显示全部楼层
回楼上:
应该是USB HOST,接不同的摇杆,低速可以,全速不行;
 楼主| 幻刺 发表于 2014-8-7 09:22 | 显示全部楼层
香水城 发表于 2014-8-6 14:32
第一:“没有Vbus的开关电路”是说107时钟通过外部charge pump给USB插槽上的Vbus pad提供5V么?

第二:“ ...

第一:VBUS引脚通过1K电阻接到VDD-5V。如图 111.jpg
第二:是分别可以使用2个不同的LOW SPEED摇杆。但是现在换个FULL SPEED的就不行了。
第三:。。我理解错了。我以为ENUM_DEV_CONFIGURED  Status = USBH_OK;就算是完了。
 楼主| 幻刺 发表于 2014-8-7 09:23 | 显示全部楼层
mmuuss586 发表于 2014-8-6 18:40
回楼上:
应该是USB HOST,接不同的摇杆,低速可以,全速不行;

大神,有救么
您需要登录后才可以回帖 登录 | 注册

本版积分规则

26

主题

107

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部