STM32F4dis开发板,USB_CDC接收没问题,发送判断总是 USBD_BUSY。

用的HAL自动生成的程序:

uint8_t CDC_Transmit_FS(uint8_t* Buf, uint16_t Len)

{

  uint8_t result = USBD_OK;

  /* USER CODE BEGIN 7 */

  USBD_CDC_HandleTypeDef *hcdc = (USBD_CDC_HandleTypeDef*)hUsbDeviceFS.pClassData;

  if (hcdc->TxState != 0){

    return USBD_BUSY;

  }

  USBD_CDC_SetTxBuffer(&hUsbDeviceFS, Buf, Len);

  result = USBD_CDC_TransmitPacket(&hUsbDeviceFS);

总是判断下来返回BUSY,发送不出数据。

接收没问题,就是发送,刚接触USB和ST片子,头疼


已邀请:

Welcome - 90后IT男

赞同来自:

我是用外置PHY,也有这个问题,你的解决了吗?

CamelSanto

赞同来自: Zchao

最终解决了,当时用的BUS HOUND监测的,如果要发送,需要PC给USB令牌,需要对应的驱动,使用官方自带的虚拟串口驱动即可实现调试功能

zhangyang

赞同来自:

您好,我想问一下官方自带的虚拟串口驱动在哪里可以下载呢?我看网上都在说这个,但是总是找不到下载地址


zhangyang

赞同来自:

你好,我也碰到了相同的问题,我电脑win10,但是st没有win10的驱动,我只能装win8的。不知道是这是不是这原因

要回复问题请先登录注册