usb转vcp接收与连接回调函数如何处理 ?

2019-07-14 15:54发布

现在 使用 usb 转vcp 功能,基本的功能以及实现了,现在的问题有如下几点:
1、使用 pc端发送 数据给单片机时,接收要如何处理 ,也就是这个  static int8_t CDC_Receive_HS (uint8_t* Buf, uint32_t *Len)   这个函数?
static int8_t CDC_Receive_HS (uint8_t* Buf, uint32_t *Len)
{
  /* USER CODE BEGIN 11 */
  USBD_CDC_SetRxBuffer(&hUsbDeviceHS, &Buf[0]);
  USBD_CDC_ReceivePacket(&hUsbDeviceHS);
  return (USBD_OK);
  /* USER CODE END 11 */
}  


上面的 Len 如何得到 ???

2、连接回调函数

/**
  * @brief  Connect callback.
  * @param  hpcd: PCD handle
  * @retval None
  */
void HAL_PCD_ConnectCallback(PCD_HandleTypeDef *hpcd)
{
  USB_bDeviceState = 1;     // 连接成功
  USBD_LL_DevConnected(hpcd->pData);

  printf("HAL_PCD_ConnectCallback ==== %d", USB_bDeviceState);
}   


程序貌似始终都没有进入 到这个函数里面来,但是程序可以发送数据到 pc端


3、测试程序
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
60user189
1楼-- · 2019-07-15 00:01
学习一下。
formlikon
2楼-- · 2019-07-15 03:02
易元空灭 发表于 2018-11-20 18:14
     回复添加不了本地图片?好麻烦。这么久没人回答,我来告诉你,金币给我。
     你说的这两个函数,都只是把其他函数打包封装起来了而已,HAL就是不断的封装,封装到最后谁也不认识谁了。
     你直接看底层,USB中断调用函数里有HAL_PCD_DataOutStageCallback(hpcd, epnum);和HAL_PCD_DataInStageCallback ...

回复可以添加图片的,但要进入高级模式
多谢回答~

易元空灭
3楼-- · 2019-07-15 04:09
 精彩回答 2  元偷偷看……
csw_ying
4楼-- · 2019-07-15 07:24
这个我又明白一些了,不断的封装

一周热门 更多>