这一问题可能是口头上的,但这里是这样的。
除了 Tiva USB 库支持的少数类别之外、有没有人成功地实现了 USB 器件?
图书馆太疯狂了。 多层重定向、结构内的结构、虽然有一些有关如何执行此操作的文档、但这并不是很有用。
具体而言、我希望实现 USB MIDI 设备类。 这是音频类的子集(在 Tiva USB 库中具有"支持"、但未提供示例)。 由于它有两个接口、它应该被配置为一个复合器件、带有音频控制接口(通过控制端点)和 MIDI 流接口(使用两个批量端点、每个方向一个)。
我从提供的批量示例开始、因为这似乎接近我需要的内容。 但是、耶斯、它是否会更复杂? 只是描述符的设置方式,使用 tConfigSection,然后是它们的数组,然后是 tConfigHeaders,然后是它们的数组--为什么? 为什么不仅仅让描述符是两个结构、一个用于器件描述符、另一个用于整个配置描述符?
有一个被定义为 tUSBBulkDevice 的结构、它会经常传递、并且它有一个私有成员结构 tBulkInstance、只是展开这一切都很困难、因为它没有记录为什么这样设置。 (doxygen 的巨大失败!)
(我注意到、对于 MSP432器件而言、这一切几乎相同。)
我在 Silicon Labs EFM8UB2以及他们的 EFM32GG11上使用他们提供的 USB 器件库实施了此器件类、整个过程非常简单、只需不到一周的时间。