[STM32H7] 【STM32H7S78-DK测评】-7- USB HS 虚拟串口VCP

[复制链接]
1864|4
 楼主| 南来之风 发表于 2024-9-19 21:27 | 显示全部楼层 |阅读模式
本帖最后由 南来之风 于 2024-9-19 21:34 编辑

CDC类是USB2.0标准下的一个子类,定义了通信相关设备的抽象集合。它与USB2.0标准的关系如下:


在STM32cubeide里面可以方便快捷的开发一个USB CDC应用。这里使用的是USB1 HS.


电路原理图如下:



详细的配置:





点击保存,自动生成代码。查看usbd_desc.c可以看到相关的CDC设备信息:
  1. /** @defgroup USBD_DESC_Private_Defines USBD_DESC_Private_Defines
  2.   * [url=home.php?mod=space&uid=247401]@brief[/url] Private defines.
  3.   * @{
  4.   */

  5. #define USBD_VID     1155
  6. #define USBD_LANGID_STRING     1033
  7. #define USBD_MANUFACTURER_STRING     "STMicroelectronics"
  8. #define USBD_PID     22336
  9. #define USBD_PRODUCT_STRING     "STM32 Virtual ComPort"
  10. #define USBD_CONFIGURATION_STRING     "CDC Config"
  11. #define USBD_INTERFACE_STRING     "CDC Interface"

  12. #define USB_SIZ_BOS_DESC            0x0C


主函数中添加简单的串口输出代码,查看效果。
  1.   while (1)
  2.   {
  3.     /* USER CODE END WHILE */

  4.     /* USER CODE BEGIN 3 */
  5.           static uint8_t cnt;
  6.           sprintf((char *) strVcom, "%s %3d", "\r\n Hello ST! 2024/09/19", cnt++);
  7.           CDC_Transmit_HS(strVcom, sizeof(strVcom));
  8.           HAL_Delay(1000);
  9.   }

下面展示USB插入电脑后: cdc_hs.gif




Amazingxixixi 发表于 2024-10-31 16:02 | 显示全部楼层
2.0的USB协议栈还是比较困难的……
地瓜patch 发表于 2024-10-31 18:01 来自手机 | 显示全部楼层
在cdc中可以更改usb标识,改一下挺好玩的
小兔兔啊 发表于 2024-11-13 23:50 | 显示全部楼层
您需要登录后才可以回帖 登录 | 注册

本版积分规则

69

主题

293

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部