OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3969|回复: 1

USB虚拟串口的问题,有些参数不知道具体含义

[复制链接]

23

主题

85

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
365
金钱
365
注册时间
2018-3-21
在线时间
64 小时
发表于 2020-12-4 16:44:15 | 显示全部楼层 |阅读模式
1金钱
描述如下:
usb虚拟串口的时候,在阅读代码的时候对一些参数看的不是很清楚,不太明白含义所在,请教理解的

USBD_StatusTypeDef USBD_LL_Init(USBD_HandleTypeDef *pdev)

#if 0
#define CDC_IN_EP                                   0x81  /* EP1 for data IN */
#define CDC_OUT_EP                                  0x01  /* EP1 for data OUT */
#define CDC_CMD_EP                                  0x82  /* EP2 for CDC commands */

#define CDC_IN_EP2                                   0x83  /* EP3 for data IN */
#define CDC_OUT_EP2                                  0x03  /* EP3 for data OUT */
#define CDC_CMD_EP2                                  0x84  /* EP4 for CDC commands */

#define CDC_IN_EP3                                   0x85  /* EP5 for data IN */
#define CDC_OUT_EP3                                  0x05  /* EP5 for data OUT */
#define CDC_CMD_EP3                                  0x86  /* EP6 for CDC commands */

//wqfcdc
#define CDC_IN_EP4                                   0x87  /* EP7 for data IN */
#define CDC_OUT_EP4                                  0x07  /* EP7 for data OUT */
#define CDC_CMD_EP4                                  0x88  /* EP8 for CDC commands */


#endif
  /* USER CODE BEGIN EndPoint_Configuration_CDC */
  HAL_PCDEx_PMAConfig((PCD_HandleTypeDef*)pdev->pData , 0x81 , PCD_SNG_BUF, 0x60);
  HAL_PCDEx_PMAConfig((PCD_HandleTypeDef*)pdev->pData , 0x01 , PCD_SNG_BUF, 0xA0);
  HAL_PCDEx_PMAConfig((PCD_HandleTypeDef*)pdev->pData , 0x82 , PCD_SNG_BUF, 0x50);
  HAL_PCDEx_PMAConfig((PCD_HandleTypeDef*)pdev->pData , 0x02 , PCD_SNG_BUF, 0x58);
  /* USER CODE END EndPoint_Configuration_CDC */
  
  /* USER CODE BEGIN EndPoint_Configuration_CDC */
  HAL_PCDEx_PMAConfig((PCD_HandleTypeDef*)pdev->pData , 0x83 , PCD_SNG_BUF, 0xF0);
  HAL_PCDEx_PMAConfig((PCD_HandleTypeDef*)pdev->pData , 0x03 , PCD_SNG_BUF, 0x130);
  HAL_PCDEx_PMAConfig((PCD_HandleTypeDef*)pdev->pData , 0x84 , PCD_SNG_BUF, 0xE0);
  HAL_PCDEx_PMAConfig((PCD_HandleTypeDef*)pdev->pData , 0x04 , PCD_SNG_BUF, 0xE8);
  /* USER CODE END EndPoint_Configuration_CDC */


这里面的参数中

  HAL_PCDEx_PMAConfig((PCD_HandleTypeDef*)pdev->pData , 0x00 , PCD_SNG_BUF, 0x40);
  HAL_PCDEx_PMAConfig((PCD_HandleTypeDef*)pdev->pData , 0x80 , PCD_SNG_BUF, 0x48);

00-----0x40
80-----0x48是怎么定义的
CDC_IN_EP
CDC_IN_EP2
CDC_IN_EP3
这些为什么这么定义,
我现在虚拟三个可以,虚拟四个不行,麻烦知道的可以指教一下



正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2020-12-5 22:51:57 | 显示全部楼层
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-23 11:54

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表