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:我能否知道通过 USB 接收的数据数量?

Guru**** 2562120 points


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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/859669/msp432e401y-can-i-know-the-number-of-data-received-via-usb

器件型号:MSP432E401Y
USB_CDC_serial_host 示例将通过 cdcSerialHandler ()函数接收的数据输出到 UART。
但是、无论器件发送的数据长度如何、它始终向 UART 输出固定长度的数据。
如何检查主机从器件接收的数据长度?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!
    我们将对此进行研究、并尽快返回。

    感谢您的耐心等待

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

    您好!

    USB 全速规范似乎将 CDC 数据包大小限制为64字节、这就是预定义的 DATA_SIZE。 有关详细信息、请参阅此主题:

    https://e2e.ti.com/support/microcontrollers/msp430/f/166/t/502794?Is-it-possible-to-increase-the-MSP430-USB-CDC-API-packet-size-

    由于数据包大小等于 UART 使用的数据大小、因此一切都应该正确。

    如果您需要进一步澄清或有进一步的问题、请告诉我。

    此致、

    Michael

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    是的、没错
    示例项目还从传入回调函数读取64个字节。
    但是、即使客户端发送1个字节、我如何知道剩余的63个字节无效?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    我已将其转发给一位团队成员进行调查。

    感谢您的耐心等待。

    此致

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

    您好!

    您使用的示例使用“USB CDC 串行主机”驱动程序。 在 MSP432E4 USB 库中,“USB CDC 串行主机”驱动程序是普通“USB CDC 主机”驱动程序的顶层,旨在为希望开始运行的用户简化软件开发体验。 这使用户能够以更少的行和更少的知识负担编写更有用的代码。

     

    在需要进行更多微调的情况下,我建议您查看正常的“USB CDC 主机”驱动程序。 遗憾的是、目前没有 USB CDC 主机示例。 不过、您可以自由查看 SDK 目录中的源代码:

    USB CDC 主机-> source/ti/usblib/msp432e4/host/usbhcdc.c

    USB CDC 串行主机-> source/ti/usblib/msp432e4/host/usbhcdcserial.c (请注意、它调用 USBHCDC 函数)

     

    如果您需要控制要读取的数据量、我建议您特别查看 USBHCCReadData 函数。

    此致、

    Michael