打印
[应用相关]

USB转串口与虚拟串口相关

[复制链接]
144|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
mollylawrence|  楼主 | 2024-4-30 20:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
一、串口与并口

(一)串行接口(即COM口):

简称串口,也称串行通信接口。按电气标准及协议来分包括RS-232-C、RS-422、RS485、USB、TTL等。 RS-232-C、RS-422与RS-485标准只对接口的电气特性做出规定,不涉及接插件、电缆或协议。USB主要应用于高速数据传输领域。

串口指物理接口形式(硬件)。而TTL、RS-232、RS-485是指的电平标准(电信号)。RS232信号的逻辑1(高电平)电压为-15v逻辑0(低电平)电压为+15v,而TTL的电压则是0v-5v。所以2种接口不能互相兼容,需要转换芯片进行电平转换。一般单片机用的都是TTL串口,而工控机等使用9针串口的都是RS232信号。

TTL:Transistor-Transistor Logic 晶体管-晶体管逻辑(电路)。

RS-232-C:也称标准串口,RS是英文“推荐标准”的缩写,是目前最常用的一种串行通讯接口。它的全名是“数据终端设备(DTE)和数据通讯设备(DCE)之间串行二进制数据交换接口技术标准”。传统的RS-232-C接口标准有22根线,采用标准25芯D型插头座 (DB-25) 的。后来的PC上使用简化了的9芯D型插座。现在应用中25芯插头座已很少采用。电脑一般有两个串行口:COM1和COM2,计算机后面能看到9针D形接口 (DB-9)就是COM1。很多手机数据线或者物流接收器都采用COM口与计算机相连。COM2一般从主板上的插针引出。不过新型电脑一般只有USB接口。



RS-422:为改进RS-232通信距离短、速率低的缺点,RS-422定义了一种平衡通信接口,将传输速率提高到10Mb/s,传输距离延长到4000英尺(速率低于100kb/s时),并允许在一条平衡总线上连接最多10个接收器。RS-422是一种单机发送、多机接收的单向、平衡传输规范,被命名为TIA/EIA-422-A标准。

RS-485:为扩展应用范围,EIA又于1983年在RS-422基础上制定了RS-485标准,增加了多点、双向通信能力,即允许多个发送器连接到同一条总线上,同时增加了发送器的驱动能力和冲突保护特性,扩展了总线共模范围,后命名为TIA/EIA-485-A标准。

Universal Serial Bus(通用串行总线)简称USB,是目前电脑上应用较广泛的接口规范,由Intel、Microsoft、Compaq、IBM、NEC、Northern Telcom等几家大厂商发起的新型外设接口标准。USB接口是电脑主板上的一种四针接口,其中中间两个针传输数据,两边两个针给外设供电。USB接口速度快、连接简单、不需要外接电源,传输速度12Mbps,最新USB2.0可达480Mbps;电缆最大长度5米,USB电缆有4条线,2条信号线,2条电源线,可提供5伏特电源,USB电缆还分屏蔽和非屏蔽两种,屏蔽电缆传输速度可达12Mbps,价格较贵,非屏蔽电缆速度为1.5Mbps,但价格便宜;USB通过串联方式最多可串接127个设备;支持热插拔。

RJ-45接口是以太网最为常用的接口,RJ45是一个常用名称,指的是由IEC (60)603-7标准化,使用由国际性的接插件标准定义的8个位置(8针)的模块化插孔或者插头。

(二)并行接口(简称并口):

并口采用的是25针D形接头。所谓“并行”,是指8位数据同时通过并行线进行传送,这样数据传送速度大大提高,但并行传送的线路长度受到限制,因为长度增加,干扰就会增加,数据也就容易出错,目前,并行接口主要作为打印机端口等。
并口的工作模式:

1:SPP(Standard Parallel Port)称为标准并口,它是最早出现的并口工作模式,几乎所有使用并口的外设都支持该模式。

2:EPP(Enhanced Parallel Port)称为增强型高速并口,它是在SPP 的基础上发展起来的新型工作模式,也是现在应用最多的并口工作模式,目前市面上的大多数打印机、扫描仪都支持EPP模式。

3:ECP(ExtendedCapability Port)即扩充功能并口,它是目前比较先进的并口工作模式,但兼容性问题也比较多,除非您的外设支持ECP 模式,否则不要选择该模式。


二、USB转串口、虚拟串口概念

(一)USB转串口(物理串口,安装驱动后工作,直接与外部设备连接):

即实现计算机USB接口到通用串口之间的转换。当然,即可转RS232标准串口,也可转TTL串口。USB转串口是“物理串口”,直接连接外部设备。

目的:提供串口,与对应的外部设备通信。USB转串口设备等于将传统的串口设备变成支持热插拨、即插即用、传输速度快的USB设备。这个接口模块可以被看作是一个USB2.0协议的转换器。

RS232、RS485、串口接口工控领域应用广泛。在使用编程器编程时也会用到串口;一些机械控制系统,门禁系统,都离不开使用RS232、RS485来通讯。传统的主板有这个接口,但很多新主板(如现在笔记本)仅有USB接口,没有对应接口直接与上述设备通信,需要开发出系列USB转串口产品,来解决这个问题。

如:USB转TTL、USB转RS232等。

USB转串口驱动安装

USB转串口驱动程序是和USB转串口设备的芯片有关的,芯片的质量、电路的设计、制作工艺是USB转串口设备质量的关键,价格也有较大差别。,如果产品芯片不同,则驱动不同。一般windows7、windows10系统也可自动检测设备芯片型号,自动安装与之匹配的驱动程序(windows系统自带驱动程序)。如:慧净电子WINDOWS系统下的CH340驱动程序,就是USB转串口线的驱动,芯片是CH340的都能用。安装驱动后再连接USBL转串口板子就能用了。

1、如果没有USB转串口驱动,可以直接将USB转串口设备直接插在电脑上,让windows系统自动搜索其自带驱动安装(如果windows系统没有自带USB转串口驱动,只能下载厂家或网上同型号芯片的USB转串口驱动程序,右键单击驱动程序——以管理员身份运行安装);
2、通过 USB 线和电脑连接起来,此时电脑右下角会显示查找硬件和安装驱动程序,待安装完成;
3、"计算机"——"设备管理器"——"端口(COM 和 LPT)"——找到USB转成的串口("USB-SERIAL CH340"标识的COM3或COM4,或其他)——右键单击,选择属性——"驱动程序"。如果驱动版本有显示,说明驱动安装成功。

4、修改串口号:设备管理器中找到相应串口——选择"属性"——选择"端口设置"标签——"高级"按钮——对话框中将会看到在"COM端口号"右边有个下拉选择组合框,点击选择想要设置的COM端口号,点击"确定"。

5、通过 STCISP 软件我们可以实际操作一下 USB 转串口,因为我的电脑虚拟出的是 COM4,所以在 COM:一栏选择 COM4,这个选项要根据自己电脑虚拟的 COM口来选择。如果驱动没问题,COM 口选择正确的话,使用 STCISP 在下载程序的过程中,可以看到 COM:右侧的灰色圆点会变成绿色圆点。

(二)虚拟串口(间接与外设连接,或内部测试用等)

增加系统虚拟串口l软件工具:Virtual Serial Port Driver,下载地址:

vspd 虚拟串口 Virtual Serial Port Driver 7.2+**补丁 https://blog.csdn.net/lkfstar/article/details/82193045

VSPD9.0**版虚拟串口工具下载 - 第五驱动  http://www.drv5.cn/sfinfo/16838.html

只**不汉化,好用。先安装压缩包文件夹中原文件,再用**文件覆盖安装路径中的原文件。

1、用途:
(1)创建任意数量的虚拟COM端口。创建的端口分布在设备管理器“端口”组,这意味着他们将是可见的,所有软件和硬件安装容易识别。可以设置哪些应用程序可以访问定义的端口。没有真正的硬件串口被占用。
(2)完整的真正的端口设置仿真。通过虚拟串口驱动程序创建的虚拟端口,工作完全一样以假乱真。他们模拟所有实际串口设置,并提供严格的波特率仿真和全面HandFlow控制支持。此外,你可以很容易地仿真串行线路中断。

VSPD采用先进的Windows内核驱动技术,确保了WDM,WMI,电源管理,即插即用,支持等。虚拟串口驱动程序与COM API完全兼容,并支持所有Windows消息。

(3)管理所有的信号线。与虚拟串口驱动程序的emulate创建的虚拟串口和支持所有标准的硬件信号线(DTR / DSR,RTS / CTS,ERROR,DCD等)。作为真正的调制解调器连接,本地端口的DTR连接到DSR和远程端口的DCD,和本地端口的RTS连接到远程端口的CTS。此外,你可以选择回送的引脚或创建取决于您的硬件配置自定义的。

2、VSPD程序具体使用说明:还是软件自带帮助文件更全面。

(1)Pairing:Creating Pairs of Virtual Ports
To create a virtual port pair, perform the following steps:
1. Choose ports for pairing. You can select ports from the dropdown list or specify custom port names.
2. Click the ‘Add virtual pair’ button.

虚拟串口对:用来实现同一电脑内两个应用之间的串口数据互传。通过虚拟串口对,可以免除真实串口连线。多用于软件测试等场合。

(2)Split:Splitting Real Serial Ports

串口分身:将一个真实串口(物理串口)映射成多个虚拟串口。真实串口接收到的数据转发给每个虚拟串口,虚拟串口接收到的数据都转发给真实串口。常用于多个应用需要同时和一台设备通信的场景。

Share COM port between apps. Serial Data Splitter. [TUTORIAL]  https://www.eltima.com/article/share-com-port-between-apps/

Table of contents:
  • Serial Port Splitter: What it is and how it works?
  • How to share COM ports between applications [step-by-step guide]
  • VSPD PRO benefits beyond simply splitting serial port
  • Hardware Alternatives to Serial Port Splitter software
    • • DB9 Splitter Box
    • • Serial Cable Splitter
  • Scenarios for successful application of the serial RS232 port splitter
    • • Ham radio enthusiasts scenario
    • • Sailing navigation
    • • Collecting weather station data

In this example, COM1 (real port, set as main one) is split into several virtual ones: COM2 (main) and COM3. Real port (COM1) parameters are dynamic and depend on the parameters of the main port of the opposite side (COM2). Now data coming into the split real port (COM1) will be sent to each out-side virtual port (COM2 and COM3), and vice versa.

For example, you have a GPS sensor, connected to COM1. It delivers GPS data to COM 2 and COM3, connected correspondingly to two navigational programs which need GPS data (e.g. Coastal Explorer and Electronic logbook).

To split one real port into several virtual ones, do the following:
1. Select a real port which will be split.
2. Choose virtual ports which will communicate with the split real port and add them to the bundle by clicking the “Add port” button.
3. Choose a virtual port to be set as the main one and click “Set main”.
4. Click the “Add split port” button. Now, your port bundle is automatically created in the Bundle tree.

(3)Join:Joining Several Real Ports
To join several real ports into one virtual, follow these steps:
1. Add real ports to the joining list. To do this, select a port and click the “Add port” button.
2. Set the main port in the bundle. To achieve this, choose the required port and click “Set main”.
3. Select a virtual port to join into.
4. Finally, click the “Add joined ports” button. Now, your port bundle is automatically created in the Bundle tree.


(4)Sharing:【在工作中已经实践,好用】

In this example, a real port (COM1) is shared with two applications which can control signal lines and manage real port settings.

Imagine that now your meteorological station, connected to COM port (COM1), can send to and receive data from two programs simultaneously (e.g., software that allows you to connect your PC to a weather station to display data for analysis) (Weather Display and Virtual Weather Station, for example).

通过共享物理串口,一台计算机中两个应用程序同时使用同一个串口。已经经实践验证,确实可行。

后续:如果正版软件是带USB加密狗,Sharing后可能导致软件检测不到加密狗,造成软件无法正常使用。

建议:如果使用Split模式,能否让软件检测到加密狗呢?没有测试!

序提供串口连接。


…………1先选定一个物理串口,2再选定需共享的程序。Add share加入共享,Edit可对共享设置进行编辑。

cannot unshare real serial port com   please close all application that use shared ports

virtual serial port pro 9.0 by eltima software

cannot share this port. See log for details.To ignore errors and  create bundles anyway,please,enable the corresponding setting in options.

(5)其它

串口聚合:将多个真实串口(物理串口)聚合成一个虚拟串口,每个真实串口的数据都发给该虚拟串口,虚拟串口的数据也会发送给每一个真实串口。常用于一个应用控制多台外部设备的场景。

串口群组:群组可以完成一组串口之间的“群聊”通信。任何一个串口发送的数据,群组中其它串口都可以接收到。

远程客户端:用于将串口数据通过tcp透传给服务端,或接收服务端的数据。可以是真实串口,也可以是虚拟串口。

远程串口服务端:作为tcp服务端,接收来自tcp客户端的数据,并将接收到的数据通过真实串口或虚拟串口发送出来。

Usage scenarios of VSPD Pro  https://wiki.eltima.com/user-guides/vspd-pro/use-cases.html

2、虚拟串口条目无法删除

(1)如果操作正常,物理端口、使用VSPD软件增加的各种虚拟端口都将在“端口(COM和LPT)”下显示。

USB-SERIAL CH340(COM3)端口,为物理的USB转COM端口;

虚拟串口对:ELTIMA Virtual Serial Port(com1->com2)、ELTIMA Virtual Serial Port(com2->com1)

split形成的端口:ELTIMA Virtual Serial Port(com5);

注意:进行物理端口pairing、split操作时,尽量避免重复占用当前已经存在物理端口,否则出现各种冲突问题。

VSPD操作日志:软件界面底部有Activity log(活动日志),记录操作及反馈信息。

(2)有时由于切换不同的VSPD版本等原因,可能出现在pairing“配对”、split“分离”等标签页不能找到原来已经建好的虚拟端口(在设备管理器中仍然显示),不能删除等操作。那么原虚拟端口一般在complex"复合"页签下。

(3)如对在设备管理器中直接对虚拟设备进行删除、卸载等操作,并不能真正删除掉。扫描检测硬件改动,这些删除或卸载的端口出现在“其他设备”列表中。解决方法:重新安装驱动程序。

例:右键点击“ELTIMA_Virtual_Serial_Port_06”——更新驱动程序软件——浏览计算机以查找驱动程序软件——C:\Program Files\Eltima Software\Virtual Serial Port Driver Pro 9.0(以实际VSPD安装文件夹为准,勾选:包含子文件夹)——下一步。

驱动程序安装成功后,该虚拟端口恢复到“端口(COM和LPT)”列表中。应用VSPD软件进行删除等操作。

(4)当上述方法操作完成后,仍然存在异常,需要重启计算机。重新查看设备管理器,虚拟端口一般情况下正常。

(5)进行操作时,点击操作过快,有可能由于设备管理器自动检测,尚未对设备变动进行刷新,导致操作失败或错误。


使用特权

评论回复
沙发
xixi2017| | 2024-4-30 21:14 | 只看该作者
以前MCU速度慢,用并口的多,现在几乎都是串口了吧。

使用特权

评论回复
板凳
xixi2017| | 2024-4-30 21:15 | 只看该作者
比如并口的1602都慢慢淘汰了。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

25

主题

1392

帖子

1

粉丝