USB CDC设备描述符子类设置错误

⚠️
嗨,...感谢您来论坛。令人兴奋的消息!我们现在正在迁至我们的新论坛平台,将提供更好的功能,并包含在主对话框网站中。所有帖子和帐户都已迁移。我们现在只接受新论坛上的流量 - 请发布任何新线程https://www.dialog-seminile.com/support.。我们将在未来几天修复错误/优化搜索和标记。
4个帖子/ 0新
最后一篇
jpeteren.
离线
最后一次露面:1年3个月前
加入:2020-02-12 15:18
USB CDC设备描述符子类设置错误

使用USB CDC时,USB_CDC.h具有以下配置默认值:

#定义CDC_USB_CLASS 2 // 2:通信设备类

#定义cdc_usb_subclass 0x00 //

#定义cdc_usb_protocol 0x00 //

但是,它们不使用,当嗅探USB连接时,器件描述符包如下所示:12 01 00 02 02 02 00 08 CF 2D 02 60 00 01 01 02 03 01转换为:

12长

01设备描述符

00 BCDUSB.

02 BCDUSB.

02 bdeviceclass.

02 bdevicsubclass.

00 BDEviceProtocol.

......

据此给出0x02的子类,这不是一个有效的价值https://www.usb.org/defining-class-codes.两个子类和协议只能设置为0x00。

有没有办法设置子类字段?

关键词:
设备:
PM_DIALOG.
离线
最后一次露面:5小时32分钟前
职员
加入:2018-02-08 11:03
嗨jpeteren,

嗨jpeteren,

谢谢你的问题。让我检查一下,我会尽快回复你。可能我需要在内部升级它。

谢谢,PM_DIALOG.

jpeteren.
离线
最后一次露面:1年3个月前
加入:2020-02-12 15:18
我可以看到我已经阅读了

我可以看到我已经阅读了规格错误,子类0x02是一个有效的值“抽象控制模型”和0x00是“保留”。

但是对于我正在努力的项目,我仍然需要改变它,所以我想改变我的问题:“有可能改变子类值吗?”

PM_DIALOG.
离线
最后一次露面:5小时32分钟前
职员
加入:2018-02-08 11:03
嗨jpeteren,

嗨jpeteren,

请参阅Emusb-Device手册(UM09001)和第9.1节。在这里,您会找到您的问题的答案。

https://www.segger.com/downloads/emusb-device/um09001

谢谢,PM_DIALOG.