我有一个通过电缆 (USB) 连接到我的 PC 的组件,我想了解它的通信协议(PC 和组件之间如何交换数据,反之亦然)。您能告诉我如何解决这个问题吗?
谢谢你。
我尝试检查设备管理器,但那里没有任何具体信息。此外,该组件的文档没有提及任何有关通信协议的内容。
USB有好几层,从你的问题中并不清楚你想了解哪一层以及你的最终目标是什么。
我假设您对上层(靠近应用程序)感兴趣,并且由于您提到设备管理器,因此您正在使用 Windows。
每个 USB 设备都可以描述自己。根据该描述,操作系统将加载设备驱动程序并使设备以不同的方式可供应用程序使用。
如果设备描述声明所谓的“标准 USB 类”,Windows 在大多数情况下会为其加载 Microsoft 驱动程序。标准类别是大容量存储设备(如 USB 记忆棒)、HID 设备(如键盘)和某些 USB 转串口设备。它们将通过标准 Windows 功能分别用于文件、键盘输入和串行通信。 如果设备描述声明了特定于供应商的协议,则有两个选项:
如果使用 WinUSB 驱动程序,则该协议也是特定于供应商的,并且通常仅由供应商自己的应用程序使用。
特定于供应商的协议很少公开记录。
另请注意,USB 设备可能是复合设备,即它实现多个 USB 类,并且可能会在 Windows 设备管理器中多次出现。
您还标记了“usbserial”。这是您感兴趣的 USB 转串口设备吗?除了少数例外,它们都是众所周知的,甚至特定于供应商的也有部分记录。