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

相关推荐
DIY机器人工房7 小时前
(十三)嵌入式面试题收集:6道
单片机·嵌入式硬件·diy机器人工房
国科安芯7 小时前
国产RISC-V架构MCU在工控系统中的节能性分析
网络·单片机·嵌入式硬件·fpga开发·性能优化·架构·risc-v
夜月yeyue8 小时前
Linux内高端内存
linux·运维·单片机·嵌入式硬件·ci/cd·硬件架构
沉在嵌入式的鱼12 小时前
linux串口对0X0D、0X0A等特殊字符的处理
linux·stm32·单片机·特殊字符·串口配置
学习路上_write12 小时前
AD5293驱动学习
c语言·单片机·嵌入式硬件·学习
影阴13 小时前
存储器和寄存器
stm32·单片机·嵌入式硬件
吃西瓜的年年13 小时前
3. C语言核心语法2
c语言·嵌入式硬件·改行学it
李洛克0714 小时前
RDMA CM UDP 通信完整指南
单片机·网络协议·udp
思茂信息14 小时前
CST电动车EMC仿真——电机控制器MCU滤波仿真
javascript·单片机·嵌入式硬件·cst·电磁仿真
小曹要微笑14 小时前
I2C总线技术解析(纯文字版)
单片机·嵌入式硬件·esp32·iic