我正在设计一个 USB 外设,它偶尔会连接到 Windows PC,并在每个方向上传输几 KB 的数据。将有一个定制的 PC 应用程序使用专有协议(即 USB 有效负载)来控制数据传输。
我在下面的链接中看到 Microsoft 描述了如何为 USB 设备编写驱动程序。但我需要一个吗?
PC 应用程序是我们想要知道如何与设备通信的唯一应用程序,因此从应用程序共享的角度来看,不需要驱动程序。
我可以直接将自定义协议烘焙到应用程序中,让应用程序与设备对话“原始 USB”,并且无需单独的驱动程序吗?
USB 2.0 指定了4 种传输类型(在第 5.4 节传输类型中):
第 5.8 节说批量传输提供:
- 在带宽可用的基础上访问 USB
- 重试传输,在偶尔因总线错误而导致传输失败的情况下
- 保证数据传输,但不保证带宽或延迟
(强调我的。)
我没有看到类似的控制转移声明。他们也保证交货吗?如果没有,用户如何处理故障?
请提供引文以支持您的答案。