一、简介
USB转串口即可实现计算机USB接口到物理串口之间的相互转换。USB转串口可以为没有串口的计算机或其他USB主机增加串口,使用USB转串口设备时就等同于将传统的串口设备变成了即插即用的USB设备。
USB虚拟串口应用特点:
①USB应用非常广泛,支持热插拔功能,传输速度很快。
②仿真标准串口,可用来升级原串口设备,或通过USB增加额外的串口。
③串口应用程序完全兼容,无需修改。
④支持各式各样操作系统,如:Windows/Linux/Android/macOS。
二、工作原理
USB主机检测到USB转串口设备插入后→对设备复位→开始USB枚举过程。
USB枚举时过程会获取设备描述符、配置描述符、接口描述符等等不同的描述符。其中会包含USB设备的厂商ID,设备ID和Class类别等信息。操作系统会根据该信息为设备匹配相应的USB设备驱动。
USB虚拟串口的实现在系统上依赖于USB转串口驱动,一般由厂家直接提供,也可以使用操作系统自带的CDC类串口驱动等。
驱动主要分为2个功能,
①:注册USB设备驱动,完成对USB设备的控制与数据通讯;
②:注册串口驱动,为串口应用层提供相应的实现方法。
串口收发对应的驱动数据流向:
串口发送时的流向:
串口应用发送数据→USB串口驱动获取数据→驱动将数据经过USB通道发送给USB串口设备→USB串口设备接收到数据通过串口发送
串口接收时的流向:
USB串口设备接收串口数据→将串口数据经过USB打包后上传给USB主机→USB串口驱动获取到通过USB上传的串口数据→驱动将数据保存在串口缓冲区提供给串口应用读取