STM32Cumebx HAL库实现STM32 USB虚拟串口的收发

  这里记录一下用STM32Cumebx实现USB虚拟串口的过程,以F072为例大家可以一起学习讨论一下。

1.新建工程

  

STM32Cumebx HAL库实现STM32 USB虚拟串口的收发

STM32Cumebx HAL库实现STM32 USB虚拟串口的收发

  这里选择SW烧录调试,看个人习惯,如果不习惯用SW的你们可以换其他的也行。

STM32Cumebx HAL库实现STM32 USB虚拟串口的收发

STM32Cumebx HAL库实现STM32 USB虚拟串口的收发

  我这里因为直接使用MCU的内部时钟就没有勾选RCC了,然后直接配置时钟树,具体如下:

STM32Cumebx HAL库实现STM32 USB虚拟串口的收发

  最后一点比较重要点的就是要配置USB堆的大小,把它改大一点,不然容易出现电脑实现出现黄色感叹号情况,这里选的编译软件是MDK-ARM。

STM32Cumebx HAL库实现STM32 USB虚拟串口的收发

  最后编译生成代码

STM32Cumebx HAL库实现STM32 USB虚拟串口的收发

2.用keil打开工程编辑

  找到usb_cdc_if.c文件,在文件开始处添加接收USB转串口数据的buff(uint_8 usbRxBuff[1000])和接收数据长度(int usbRxLen=0);然后添加下图中框出来的代码即可

STM32Cumebx HAL库实现STM32 USB虚拟串口的收发

3.编译程序烧录验证

  用串口助手看可以看到已经可以识别出来了,发送数据下去也可以准确接收并且返回,结果如下图示

STM32Cumebx HAL库实现STM32 USB虚拟串口的收发

  注意:USB虚拟串口对波特率,校验位,数据位,停止位没有要求,你用串口助手不管使用什么样的方式来通信,都可以正常收发。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zzfddj.html