This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] MSP432E401Y:封装尺寸超过64字节的 USB HID 接口

Guru**** 2555630 points
Other Parts Discussed in Thread: MSP432E401Y

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/946143/msp432e401y-usb-hid-interface-with-packetsize-longer-than-64-bytes

器件型号:MSP432E401Y

大家好、

对于我们的一个用例、我们还希望使用供应商定义的 HID 接口进行大型数据传输。 我相信使用 SDK 构建的当前 Usblib 限制为每个数据包64字节的大小。 我可以在其中找到源文件的任何输入、以及如何重建以支持高达512/1024字节的数据包大小。

谢谢

乌特拉库马尔

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、UTHRAKUMAR、

    对于高速 USB、 HID 限制为64字节(参考)。  这就是为什么 USB 堆栈 SDK 限制为64的原因。  在互联网上搜索时、我发现很多人都在问同样的问题。  仔细阅读答案、就不会有权变措施了。

    64字节不适合您的技术原因是什么?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Denis:

    感谢您的回答。 我知道它的规格限制为64字节。

    我们为什么要这样做:最终提高通信速度。 当我们使用高速接口时、数据包大小将为512字节、但我们传输的有用数据将为64字节、其余数据将填充为零。 如果有问题、请更正。

    为了提高整体吞吐量、HID 数据包的大小应该增加、因此问题是。

    我认为可以找到源代码的一个循环漏洞是、定义允许在单个数据包中发送多个报告、如果我们可以将大数据拆分为多个报告并在单个数据包中发送它、则它可能起作用。

    我仍然不知道这会如何影响主机驱动程序,有关这一点的任何想法都将非常有帮助:)

    谢谢

    乌特拉库马尔

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Uthrakumar、

    我将联系我们的软件团队、看看他们是否有任何建议。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Uthrakumar、

    以下是我们 SW 团队的一项建议。

    提升带宽的一个选项是在不同的端点上具有多个 HID 接口。 这仍然不是在单次传输中完成的,但它应该在带宽方面有所改善。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    [引用用户="Dennis Lehman"]

    Uthrakumar、

    以下是我们 SW 团队的一项建议。

    提升带宽的一个选项是在不同的端点上具有多个 HID 接口。 这仍然不是在单次传输中完成的,但它应该在带宽方面有所改善。

    [/报价]

    它们还可以添加额外的 CDC、持续1MB/s (即使在全速情况下也是如此)。 或者只使用 CDC、不管怎样、它都可以在没有驱动程序的任何操作系统(旧 Windows 版本除外)上自动枚举。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Uthrakumar、

    您是否能够使其正常工作?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Dennis:

    我们还没有尝试过这一点、但我理解您尝试的多个端点的含义。 我还看到、当我们采用这种方法时、PC 软件必须变得智能才能处理多端点数据。

    但我有一个更基本的问题,可能有助于以更好的方式解决我的问题。 我们将 USB2.0高速输入输出应用与 ULPI 结合使用。 因此、USB 数据包大小将变为64个有用字节、其余字节未使用、或 HID 协议填充为零。 如果我们可以用有用的数据填充所有512个字节、从而提高整体吞吐量。 "多报告"是否仍然在此处提供帮助?

    您对此还有其他想法吗?

    谢谢

    乌特拉库马尔

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Dennis、您好、我没注意到这条评论...

    实际上、到目前为止、我们已经使用我们的应用实施了 CDC。  我们还有一项要求、即同时从多个应用程序访问相同的硬件。 CDC 会限制此操作、我们希望移至 HID 操作以启用此操作。 我们希望在迁移到 HID 时保持相同的吞吐量,因此出现了这个问题:)

    感谢您继续支持此请求:)

    谢谢

    乌特拉库马尔

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Uthrakumar、

    我们跟踪了常驻 MSP432专家的情况、他的意见/建议如下:

    那么、他们好像在使用具有 HID 模式的 USB 高速吗? 老实说,我以前没有遇到过这种情况。 通常、高速常用于 CDC 或 BULK。 老实说,我从未听说过 HID 的高速功能。 我四处闲逛、共识似乎是高速、HID 是一个糟糕的混合想法、如果需要高速、请使用其他接口。

    我们实际上并不支持这一点,因为它是一个特殊的应用程序。

     就库而言,通过更改一些#define,HID 可能支持512的数据包大小。 但我不确定、因为我对 HID 库设置不太熟悉。

    因此、他似乎也没有为您提供解决方案。  很抱歉、除非社区中的某个人能提供一些建议、否则我就不敢想了。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Uthrakumar、

    我还得到了另一项建议。

    尝试查看 TM4C TivaWare USB 软件堆栈。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Uthrakumar、

    您是否取得了任何进展?  TM4C TivaWare 是否有所帮助?