繁体   English   中英

STM32 USB CDC无法正常工作

[英]STM32 USB CDC did not work

我正在使用stm32l151,我想在cdc模式下使用usb外设。 我使用了stm32 cubeMx来生成项目。 但是函数CDC_Transmit_FS()始终返回USBD_BUSY。 谁能帮我?

这是我的代码:

while (1)
{
    CDC_Transmit_FS(Buffer, 6);
    HAL_Delay(2000); 
}

我只将以上代码添加到了STM32cubeMX创建的项目中,但是没有用。

  1. STM库有问题,例如,当您尝试发送许多更大的数据包时,它就会停滞。
  2. Windows驱动程序有问题,数据包之间的延迟很长。 因此,很难归档12MB的数据-使用CubeMx我只能拥有3-4Mb的数据(发送数据包时为12MB)。
  3. 我遇到的另一个问题-我需要先向设备发送一些数据,然后才能传输下一个数据包(在我的情况下,最大为8kB),否则它会随机停止。

幸运的是,问题已解决,我可以在PC上从STM32接收数据。 我的终端软件出现问题。 我使用了串行端口监视器来监视从串行端口接收到的数据,但是此串行监视器软件不会自行打开串行端口,如果有其他软件打开串行端口并接收数据,它将监视数据接收。 我不知道 谢谢

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM