一、使用开发板
购买:https://item.taobao.com/item.htm?ft=t&id=881441702637
二、 STM32内置USB、虚拟串口简述
STM32 芯片,绝大部分型号都带内置USB,如常用的 F1、F4、H7、G4 等系列,能够通过USB接口与计算机或其他USB设备进行通信。
STM32内置的USB,均可支持USB 2.0标准,可以支持三种传输速率:
高速模式:最高可达480 Mbps (部分型号支持,且需搭配外部芯片,不常用 )
全速模式:最高可达12 Mbps (最常用)
低速模式:最高可达1.5 Mbps
高速模式,需要搭配外围USB PHY芯片,如USB3300,硬件成本偏高 。
全速模式,电路很简单。从机在PCB布线时,仅需把STM32的引脚PA11、PA12, 连接至USB座的DP、DM,然后,PA12(DP线)用1.5K电阻上拉至3.3V。
上拉说明
插拔检测:设备未插入时,主机端DP、DM为低电平,当发现被置高,即为有设备插入;
区分速率:DM线上拉是低速模式,DP线上拉是全速\高速模式;
上拉电压:3.3V。USB通信电平是3.3V,而不是总线供电的5V。
USB虚拟串口,简称VPC,Virtual Port Com 的简写。但更习惯于把虚拟串口叫作: CDC,因为它是利用 USB 的 CDC类 实现的一种通信接口。
我们可以利用STM32自带的USB功能,通过CubeMX的配置,很方便地实现一个USB虚拟串口,从而通过USB线,实现电脑与STM32的数据互传。
但是今天我是使用源码直接移植的方式。
三、移植
只要这几个文件直接移植即可
四、配置
这个延迟需要根据自己的系统替换。我这里使用了RTX系统。
五、接收数据处理
六、创建独立任务
这里代码还修改了描述,识别出来的串口就是串口设备没有STM32型号
七、实验效果
————————————————
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/u012507643/article/details/145415155
|