stm32cubemx 自动生成的CDC一次性发送最大字节数

我用stm32cubemx 自动生成的CDC,调用CDC_Transmit_FS(TxBuf,TXNUM)发送,uint8_t TxBuf[TXNUM]; 当TXNUM小于等于1023时即CDC_Transmit_FS(TxBuf,1023) PC接收正常。

image.png

当TXNUM大于1023时,如CDC_Transmit_FS(TxBuf,1024),CDC_Transmit_FS(TxBuf,32*1024)  PC接收都是一次正常一次失败。用bus Hound监控PC打印读取失败时确实是IN后面没有数。

image.png     image.png

上位机使用usblib没有问题,我用原子的H73开发板的虚拟串口实验测,在网上也找到过一个F407的例子发送32K每次都没问题。

image.png

所以请问下大家,是不是stm23cubemx配置哪里限制了。

已邀请:

caoenq - 硬件设计大师

赞同来自:

ST HAL库多年的bug,只要接收或者发送64的整数倍的字节,就会出问题,目前仍未解决。

要回复问题请先登录注册