usb设备描述符获取异常

scutwyz scutwyz 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
一个控制传输,请求device-descriptor?(请求18字节那种)
在模型 ehci->usb2.0->hub2.0->usb1.1->低速设备中
呈现出理想状态:
setup->in->in->in->out 控制端点深度8字节,18字节的描述符正好拆开为3份,3个in包
以usb 分析图作为证据

在另外一个模型中:(对比第一个模型,将ehci主控器支持编译出内核。电路,电源没有任何变化)
ohci->usb1.1->hub2.0->usb1.1->低速设备
就经常出现:(也有一定正常的可能,调节尝试最大次数可以勉强解决问题)
setup->in->in->out 状态
总之,就是第一个in包不见了,对应的8字节数据也没有了。其余包完全正常。
以上也有usb 分析仪作为证据

请问,这是什么回事呢?
获取设备描述符,属于usb子系统中, usb-core 那部分,不可能有错,我这个小白看起来也没有问题。设备却在不同的主控器表现出各异的现象。

各位usb方面的专家,帮我这一次吧!真是求大家了。

...全文

相关推荐

java 获取usb外接设备信息整理。

- 遍历设备列表,获取每个设备的详细信息,如设备描述符(包括供应商ID、产品ID、设备版本等)。3.

come_boy

全面解析USB设备与USB HUB的枚举过程

通用串行总线(USB)是一种广泛使用的标准接口,用于连接电脑和外围设备。USB技术自从1996年面世以来,经过多次技术迭代,已经发展成为不可或缺的计算机和电子设备接口技术。它具有易用性高、支持热插拔、传输速率快等特点,因此成为众多硬件设备的标准连接方式。USB Hub是USB技术发展过程中诞生的重要设备,它主要被设计用于扩展一个USB端口,使其能连接多个USB设备。在没有USB Hub的情况下,每个设备通常需要独立的USB端口,这限制了移动性和灵活性,尤其是在物理端口数量有限的情况下。

豪欧巴

Linux下获取USB设备的序列号获取IDE设备的序号C源码

设备的序列号通常存储在设备描述符(Device Descriptor)中,可以通过`libusb`库或者直接读取设备节点来获取。

JXES智能生态系统

使用USB HID方式遍历所有usb设备,并以扫描枪为例演示数据接收和发送。

在遍历过程中,我们需要对每个设备进行打开、枚举接口、获取设备描述符等操作,以了解设备的具体信息。接下来,我们关注HID协议。HID协议定义了一种标准的数据格式,用于在设备和主机之间交换数据。

蛋蛋强

USB-device.rar_C 通信USB_USB通信

此外,文档可能还讨论了USB设备的类规范,如HID(Human Interface Device)类用于键盘和鼠标,Mass Storage类用于磁盘驱动器,以及如何处理USB设备的异常和错误。

钱亚锋
评论 10
收藏 已收藏
分享
返回顶部
scutwyz
驱动开发/核心开发 21,620 成员 21,709 内容