STM32 USB CDC 的最大速度是多少?

Moh*_*mad 4 usb cdc stm32

我正在使用 stm32L151 通过 USB CDC 与 PC 通信。我使用 stm32 HAL 库来创建我的项目。我发现 USB 以 1ms 的间隔发送数据,每次发送 64 个字节。那么,USB CDC 的最大速度是 64kbyte/s 吗?而且这个速度远低于USB全速12Mbit/s。我怎样才能达到这个速度?或者至少是这个速度的一小部分?谢谢

Tur*_*o J 5

不。如果您的代码“足够快”,则最大 CDC 速度约为1MByte/sec. 这可能需要设备端的大 (>1KB) FIFO。哦,PC 端必须能够足够快地读取数据,例如使用大缓冲区。

64KByte/s 限制适用于使用中断端点的 USB HID。USB CDC 接口使用更快的批量端点。