发新帖我要提问
12
返回列表
打印
[USB接口]

请教有关usb调试问题

[复制链接]
手机看帖
扫描二维码
随时随地手机跟帖
21
zhs2007| | 2017-12-21 10:32 | 只看该作者 回帖奖励 |倒序浏览
是的。低速,全速能干的事,高速也都能干

使用特权

评论回复
22
一骑红尘追梦中|  楼主 | 2017-12-21 11:25 | 只看该作者
本帖最后由 一骑红尘追梦中 于 2017-12-21 11:27 编辑
zhs2007 发表于 2017-12-21 10:32
是的。低速,全速能干的事,高速也都能干

嗯!再请教您一个问题:就像我的这个USB OTG设备定义成CDC类,要把这个USB接口设备实现多种功能(功能就是能够(同时)传输网络数据以及音频数据等等)。比如两种,假设为CDC类A设备和B设备,那是不是先对应添加CDC类A设备和B设备的描述符呢(设备描述符为同一个,添加两个配置描述符以及对应接口描述符,可以吗)?而如果A设备是高速设备,B是不是也只能是高速设备(或者可以为全速设备)?同理,A设备如果是低速设备,那B只能是低速设备?
这样想有误吗?

使用特权

评论回复
23
zhs2007| | 2017-12-21 17:35 | 只看该作者
例如一个USB DEVICE实现CDC与AUDIO两种协议功能,只需要一个设备描述符,一个配置描述符。配置描述符中一组Interface描述符实现CDC协议,一组Interface描述符实现AUDIO协议。只能是同一种总线速度模式。

使用特权

评论回复
24
一骑红尘追梦中|  楼主 | 2017-12-21 19:24 | 只看该作者
zhs2007 发表于 2017-12-21 17:35
例如一个USB DEVICE实现CDC与AUDIO两种协议功能,只需要一个设备描述符,一个配置描述符。配置描述符中一组 ...

受教了,感谢您的热心答疑,非常感谢!

使用特权

评论回复
25
一骑红尘追梦中|  楼主 | 2017-12-22 11:42 | 只看该作者
本帖最后由 一骑红尘追梦中 于 2017-12-22 14:21 编辑
zhs2007 发表于 2017-12-21 17:35
例如一个USB DEVICE实现CDC与AUDIO两种协议功能,只需要一个设备描述符,一个配置描述符。配置描述符中一组 ...

您好!就是针对这个想了又想,是不是一个USB设备如果需要实现多功能,可以随意搭配USB设备类呢?不同的设备类组合的话,可以共用一套设备描述符和配置描述符吗?假设组合两个USB设备类的功能,配置描述符中的bNumInterfaces定义成0x02分别对应两个设备类吗?
再有,IAD的功能是把多个接口定义成一个类设备,那在多功能设备中是必须存在IAD描述符的吧,可根据IAD的功能定义,若组合设备一个为Communication & CDC类(02h)和Mass Storage(08h),两者的描述符用法都是interface,那IAD所谓的功能定义是怎么理解的呢?若如上定义,那在应用程序中又该如何定义USB注册函数呢?两个USB类都都定义注册函数吗?
整个描述符结构体中,各种描述符的位置顺序有讲究吗?
问题有点多,希望能得到您的帮助

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则