药无尘 发表于 2021-9-28 09:46

USB 枚举不通过或枚举后数据收发异常处理

1) USB 配置不正确,端点中断或 USB 相关中断未使能,表现为进不了相关中断; 2) USB 函数响应不正确,表现为数据收发错误;
3) USB 函数响应不完全,表现为特定数据未发送(host 显示枚举完成时类描述符可能未传完;
4) USB 响应时序乱,表现为不符合 USB 四大传输过程;
5) 未清 USB 中断,表现为程序不出中断;
6) 数据过程出错可能为逻辑判断出错,大部分原因同枚举阶段.

内政奇才 发表于 2021-9-28 10:29

总结的好

littlelida 发表于 2021-10-4 14:43

记下了,USB用的磕磕绊绊

海滨消消 发表于 2021-10-22 09:54

这下思路就清晰多了

勇者无惧你和我 发表于 2021-10-28 16:03

收发异常的原因是什么?没有看明白,不知道咋回事了。

jflahdink09 发表于 2021-10-28 16:59

这个知识贴确实不错的,很棒的,在哪里?

y1n9an 发表于 2021-12-27 15:14

枚举不通过也有可能是硬件设计有关系的

lix1yr 发表于 2021-12-27 15:15

枚举是个基础吧,得让硬件识别到有USB接入才行

q1ngt12 发表于 2021-12-27 15:16

之前我遇到过一次,枚举电阻焊错了,导致设备不识别

g0d5xs 发表于 2021-12-27 15:16

楼主总结的是软件配置原因,还有就是D+D-这两条数据线上的匹配电阻也要选择对,不然枚举成功,数据却收不到的

d1ng2x 发表于 2021-12-27 15:17

USB的时序这块好像默认库就行吧

liu96jp 发表于 2021-12-27 15:17

逻辑错误好像会导致收发异常

t1ngus4 发表于 2021-12-27 15:19

USB配置不正确,比如power配置错了,属实会导致枚举失败

zhizia4f 发表于 2021-12-27 15:21

中断这块我都是默认用库的

ex7s4 发表于 2021-12-27 15:22

其实配置用默认配置,用官方的库,流程也是,这样就好了

b5z1giu 发表于 2021-12-27 15:23

个人建议,USB的时序建议不要乱改,容易出现很大的疑难杂症

豌豆爹 发表于 2021-12-30 16:44

总之要用默认的,不要画蛇添足
页: [1]
查看完整版本: USB 枚举不通过或枚举后数据收发异常处理