【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无需驱动。

相关推荐
EmbeddedCore17 分钟前
硬核实战:基于 C 语言宏定义的物联网网关命令分发框架设计
单片机·嵌入式
EmbeddedCore1 小时前
轻量级消息防重模块全解析:从原理到高性能优化
linux·运维·服务器·嵌入式硬件
啃玉米的艺术家2 小时前
中断 ------ 中断方式
嵌入式硬件
悠哉悠哉愿意2 小时前
【物联网学习笔记】ADC
笔记·单片机·嵌入式硬件·物联网·学习
foundbug9993 小时前
基于STM32的步进电机加减速程序设计(梯形加减速算法)
stm32·单片机·算法
busideyang4 小时前
嵌入式代码编写规范1.0
单片机·嵌入式
mftang4 小时前
Cortex-M 中断跳转: MCU内部实现原理和流程
单片机·嵌入式硬件·armv8-m
charlie1145141914 小时前
嵌入式C++教程实战之Linux下的单片机编程:从零搭建 STM32 开发工具链(5):调试进阶篇 —— 从 printf 到完整 GDB 调试环境
linux·c++·单片机·学习·嵌入式·c
Industio_触觉智能4 小时前
瑞芯微RK3588 RKNN模型推理环境部署与功能测试技巧(下)
嵌入式硬件·ai·rk3588·rknn·瑞芯微·rknn-toolkit2·rk3588j
老师用之于民5 小时前
【DAY36】基于 I²C 总线的通信协议分析与 ADC 转换原理研
单片机·嵌入式硬件