标题:
CH375做USB主机与USB设备的通信过程
[打印本页]
作者:
年薪30w
时间:
2023-9-12 09:50
标题:
CH375做USB主机与USB设备的通信过程
本人在开发时遇到问题,求助使用过CH375或者了解USB通信协议的前辈们指点迷津,以下是个开发过程中的介绍:
开发经历:
本人被USB通信设备困扰许久,之前是用ESP32-S3作为主控芯片,USB设备属于USB2.0标准下的供应商特定类,但是一直打不通USB通信协议进行主机与设备的收发数据。后来在ESP32与USB设备之间加了一个CH375芯片。
USB设备:
通过获取描述符得知我的USB设备除了端点0,就只有端点2,且端点2只进行IN事务,需要使用批量传输。下图是我用Bus Hound软件进行捕获到的数据,请看最后三行,根据此流程个人推断:USB主机使用端点0进行控制传输,在建立阶段首先发送对应
bmRequset
Type、
bRequset、
wValue、
wIndex、
wLength的8字节数据:
40 FA 00 00 00 00 0D 00(此8个字节为USB设备厂商定义的固定数据);之后在数据阶段发送厂商规定的协议控制USB设备70 13 00 00 00 00 00 00 00 00 73 f6 0A;之后是状态阶段。最后USB主机对端点2进行批量传输进行IN事务,从端点2获取到USB设备返回的数据:70 13 00 00 00 00 00 00 00 00 61 e4 0A。通信过程完成。
1.jpg
(34.06 KB, 下载次数: 57)
下载附件
2023-9-12 13:38 上传
遇到问题:
1.不知本人对此图片的分析是否正确。
2.利用我分析到的逻辑使用CH375进行控制USB设备时,未获取到USB设备返回的数据(如果需要可以给大家看我整理的使用CH375的流程)
3.利用我分析到的逻辑使用ESP32-S3进行控制USB设备时,会导致USB设备打不开(如果需要可以给大家看代码片段)
再次感谢!很需要得到你们帮助,不甚感激!
作者:
年薪30w
时间:
2023-9-17 15:29
怎么样才能分析USB收发数据的过程呢
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1