【stm32】【CDC】详解

Parameter

|------------------------------|--------------|-------------------------|----------------------------------|----------------------------------|
| USB CDC Rx Buffer Size | 数据通信(接收) | 定义从PC接收数据的硬件缓冲区大小 | 抗数据突发能力强 ,减少丢包风险,增加RAM占用 | 节省RAM,但易因处理不及时导致缓冲区溢出、数据丢失 |
| USB CDC Tx Buffer | 数据通信(发送) | 定义待发送到PC的数据的临时存储区大小 | 能缓存更多待发送数据,提高发送吞吐率,增加RAM占用 | 节省RAM,但可能导致发送API需等待或阻塞,降低实时性 |

cubemx直接生成即可。

复制代码
  MX_GPIO_Init();
  MX_USB_DEVICE_Init();
  /* USER CODE BEGIN 2 */

  /* USER CODE END 2 */

  /* Infinite loop */
  /* USER CODE BEGIN WHILE */
  while (1)
  {
	CDC_Transmit_FS((uint8_t*)"hello", 5);
    HAL_Delay(1000);
    /* USER CODE END WHILE */

    /* USER CODE BEGIN 3 */
  }

波特率可以自己设置。

注意:这个功能用cubemx实现几乎不用写任何代码,但是硬件上要做阻抗匹配,记得先检查D+口有没有1.5om上拉和D+D-串联22om,否则有可能出现无法识别设备,同时win10以下好像要去下载驱动,win10和win11无需驱动。

相关推荐
日更嵌入式的打工仔8 分钟前
RS-485通讯协议
笔记·嵌入式硬件
蓝桥_吹雪9 分钟前
HAL库深入了解--STM32与GPIO
单片机·嵌入式硬件
嗯嗯=12 分钟前
STM32单片机学习篇5
stm32·单片机·学习
不能跑的代码不是好代码17 分钟前
STM32:LED共阴/共阳连接与GPIO控制逻辑的关系,如何实现电平转换
stm32·单片机·嵌入式硬件
Jason_zhao_MR2 小时前
YOLO5目标检测方案-基于米尔RK3576开发板
linux·人工智能·嵌入式硬件·目标检测·计算机视觉·目标跟踪·嵌入式
qq_25814297-npl2 小时前
HEX数据00,显示为ASC码,怎么是是\0
单片机
不做无法实现的梦~3 小时前
使用ros2跑mid360的fastlio2建图
git·单片机·嵌入式硬件·gitcode
Joshua-a3 小时前
正点原子DS100示波器测DC电源纹波方法
单片机·嵌入式硬件
2301_772204283 小时前
ARM——时钟系统
arm开发·单片机·嵌入式硬件
半条-咸鱼4 小时前
C语言基础语法+STM32实践学习笔记 | 指针/寄存器核心应用
c语言·stm32·学习·嵌入式