注册 登录
电子工程世界-论坛 返回首页 EEWORLD首页 频道 EE大学堂 下载中心 Datasheet 专题
sattic的个人空间 https://home.eeworld.com.cn/space-uid-530499.html [收藏] [复制] [分享] [RSS]
日志

USB枚举 SetAddress问题…

已有 2623 次阅读2014-11-27 09:18 |个人分类:USB| USB, Device, 枚举

最近发现usb枚举时总是SetAddress后就没响应了,各种查原因……

没什么发现,还是看协议吧。

于是在看SetAddress部分,过程:

Host : Setup packet : 00 05 xx 00 00 00 00 00(Out Request Standard : Set_Address : xx)

Device: Send Zero Packet

Host: ACK

Device: SetAddress

(此后 启用新地址)

Host: Setup packet : 80 06 00 01 00 00 12 00(In Request Standard: Get_Descriptor: DEVICE)

... ...

为了调试方便,在中断,读数据,写数据都通过串口返回信息,收到Device收到ACK时大把的时间都在串口返回信息,而把SetAddress操作滞后,就无法接收启用新地址后的数据,也就无法返回Host请求的信息,Host只好复位总线,重新枚举……3遍之后枚举失败……

修改程序,在Device接收到ACK后,不打印任何信息,直接设置新地址

终于枚举过去了

全部作者的其他最新日志
评论 (0 个评论)

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 注册

热门文章