使用方法

  有些设备和程序只能使用COM端口。如果计算机没有COM端口,或者已经被其他应用程序占用,则需要创建虚拟串行端口。在串行分配器中,我们使用虚拟串行端口驱动程序技术,它可以在系统中创建任意数量的纯虚拟串行端口。它们在系统或任何Windows应用程序中显示为“标准”串行端口。

  现在,您可以根据自己的需求管理真实和虚拟端口。以下是一些如何创建端口捆绑包的示例。

  分裂

  在这个例子中,COM1(主端口,主端口)被分成几个虚函数:COM2(main)和COM3。实时端口(COM1)参数是动态的,取决于对端主端口(COM2)的参数。现在进入拆分实际端口(COM1)的数据将被发送到每个外部虚拟端口(COM2和COM3),反之亦然。

  例如,您有一个连接到COM1的GPS传感器。它将GPS数据传送到COM2和COM3,相应地连接到需要GPS数据的两个导航程序(例如Coastal Explorer和Electronic logbook)。

  将几个实际端口加入一个虚拟机

  这里,几个实际端口COM1和COM2(主)连接到一个虚拟端口(COM3)中。发送到加入端口(COM3)的所有连接将被复制到所有连接端口:COM1和COM2。

  例如,连接到stenograph写入机的两个串行端口(COM1和COM2)连接到PC(COM3)上的单个端口。连接到COM3的应用程序只能使用一个端口。因此,将两个端口连接到一个,您可以使应用程序同时使用两个设备。

  创建端口切换器

  这里,几个实际端口 - COM1,COM2 - 加入一个虚拟端口(COM3)。

  几个应用程序与虚拟COM3一起工作。每当任何应用程序需要使用串行设备时,COM3的数据将被发送到COM1或COM2。港口选择将取决于目前是否免费; 这个选择将自动完成。

  一些应用程序可以一次打开虚拟COM3,并连接到几个相同设备之间的空闲设备,连接到实际的COM1,COM2。可以连接到COM3的应用程序数量不能超过捆绑包中的实际端口数量。

  在几个应用程序中共享一个真正的串行端口

  在此示例中,实际端口(COM1)与两个应用程序共享,可以控制信号线并管理实际端口设置。

  想象一下,现在您连接到COM端口(COM1)的气象站可以同时发送和接收两个程序的数据(例如,允许您将PC连接到气象站以显示数据进行分析的软件)(天气显示和虚拟气象站)。

  注意:您可以与任意数量的应用程序共享实际端口,不仅仅是两个,就像在这个例子中一样。

  将所有串行流量从任何实际端口重定向到另一个端口(实际或虚拟)

  在此示例中,来自实际端口(COM2)的所有串行流量被重定向到虚拟的另一个端口(COM3)。实端口参数是动态的,取决于对端主端口(COM3)的参数。

  这是一个理想的解决方案,可以利用任何需要特定配置设置的串行端口设备或应用程序来简化工作,例如,它可以仅与COM3一起使用,就像我们的示例一样。

  在端口流量重定向的另一个例子中,我们有两个必须交换数据的设备。这就是为什么我们创建端口捆绑包,真正的COM1在侧面和真正的COM2在外面。然后我们将两个设备相应地连接到COM 1和COM2:

  现在这两个设备可以交换数据。此外,您可以从COM端口收集数据,以便使用一些监控软件进行进一步分析,例如串行端口监视器。

  复杂的端口捆绑

  数据来自虚拟端口COM1的捆绑包,然后被分成几个流,并定向到COM3(虚拟主机)和COM4(虚拟)。反之亦然,数据来自COM3和COM4,并连接到COM1中的单个流中。

  这样的复杂端口捆绑是理想的连接,例如,GPS模拟器应用程序(虚拟COM1)和两个程序(一些导航)(COM3和COM4)。因此,进入虚拟端口(COM1)的数据将被发送到每个外部虚拟端口(COM2和COM3),反之亦然。

  现在我们来研究复杂的捆绑包创建的另一个例子,其中COM1是一个共享端口:

  我们可以将GPS Emulator应用程序连接到虚拟COM2,并与几个应用程序共享COM1,现在可以从COM2接收数据。

适用范围

  将实际端口分成几个虚拟端口

  将几个串行端口加入一个虚拟机

  将数据流从实际端口重定向到实际或虚拟端口

  在几个应用程序之间共享一个真正的串行端口

  组织多个端口的复杂捆绑包

  将几个实际端口连接到一个虚拟机中进行进一步自动切换

  拆分真正的串口说明

  要将一个实际端口拆分为几个虚拟端口,请按照下列步骤操作:

  选择真正的端口进行拆分。

  通过按“添加端口”按钮将虚拟端口添加到捆绑包中。

  选择要在捆绑中设置为主的虚拟端口。选择虚拟端口后,按“设置主”按钮。在这里

  阅读更多关于主端口。

  最后按“添加拆分端口”按钮。您的端口捆绑包将在Bundle树中自动创建。

更新说明

  添加:可以将几个实际端口加入到一个虚拟机中进行进一步的自动切换。这使得应用程序可以自动访问几个相同设备之间的免费设备。

  添加:设置实际和虚拟端口的权限的可能性:现在您可以允许或禁止写入和从其他方向读取。

  添加了通过动态链接库(适用于OEM许可证所有者)进行捆绑管理的两个新功能:

  * BundlePortSetPermissions - 设置实际或虚拟端口的权限;

  * BundlePortGetPermissions - 获取实际或虚拟端口的权限。

  添加:串行分配器现在通过什么应用程序进行日志记录,以及哪个参数打开虚拟端口

  补充:可能会自动检查更新

  改进:我们的驱动程序成功通过了Microsoft Windows硬件质量实验室(WHQL)测试,并由Microsoft现在进行数字签名

  内部驱动变得更加稳定:

  虚拟端口之间的数据传输得到改善。这使数据传输无损,有助于避免应用挂起;

  - 改进了多核系统的数据传输。这有助于避免数据失真和挂起;

  - 虚拟端口创建现在消耗较少的CPU资源,这在创建多个连接时非常有用。

  改进:一些用户界面元素被调整以适当地适应高DPI

  更新:不推荐通过PIPE和Windows注册表进行的服务管理; 服务只能通过动态链接库功能进行管理 - 对于OEM许可证所有者

Serial Splitter 4.2 串口拆分说明的更多相关文章

  1. guava字符串工具 Splitter 主要功能是拆分字符串为集合 Map

    public class SplitterTest { public static void main(String args[]){ //1.拆分字符串为List集合 String str=&quo ...

  2. python serial 获取所有的串口名称

    http://blog.csdn.net/qq61394323/article/details/44619511 #!/usr/bin/env python # -*- coding: utf-8 - ...

  3. Arduino 串口通讯参考笔记 - Serial 类库及相关函数介绍

    声明: 本ID发布的所有文章及随笔均为原创,可随意转载,单转载文章必须注明作者 aiyauto 及包含原文出处地址 http://www.cnblogs.com/aiyauto/p/7071712.h ...

  4. ROS常用库(二) Serial库(单片机和上位机串口通讯)

    比如我们做了个单片机,在win里面用串口调试助手接收和下发数据,那么在ubuntu里用ros怎么实现?换个说法,怎么实现上位机和下位机的通讯? 首先,用python自带的库就可以实现这个功能. 安装p ...

  5. Python Serial 串口基本操作(收发数据)

    1.需要模块以及测试工具 模块名:pyserial 使用命令下载:python -m pip install pyserial 串口调试工具:sscom5.13.1.exe 2.导入模块 import ...

  6. C# 虚拟串口通信

    将主端口COM8拆分成 COM1和COM2两个虚拟端口 COM8接收的消息会传递给COM1和COM2 SerialPort spSend;//spSend,spReceive用虚拟串口连接,它们之间可 ...

  7. 串口控RGB三色灯

    本文由博主原创,如有不对之处请指明,转载请说明出处. /********************************* 代码功能:串口控RGB三色灯 使用函数: Serial.flush(); / ...

  8. Arduino101学习笔记(十)—— 串口通信

    //打开串口 Serial.begin(); //获取串口上可读取的数据的字节数.该数据是指已经到达并存储在接收缓存(共有64字节)中 Serial.available(); //读串口数据,串口上第 ...

  9. LabVIEW串口通信

    Instrument I/O 利用LabVIEW内置的驱动程序库和具有工业标准的设备驱动软件,可对 GPIB(通用接口总线).Ethernet(以太网)接口.RS-232(标准串行接口总线)/RS-4 ...

随机推荐

  1. 第12章 X.509证书库的Fluent API - IdentityModel 中文文档(v1.0.0)

    存储X.509证书的常见位置是Windows X.509证书存储区.商店的原始API有点神秘(在.NET Framework和.NET Core之间也略有变化). X509类是一个简化的API从所述存 ...

  2. 如何高效的学习WEB前端

    IT 行业的变化快是众人皆知的,需要持续去学习新的知识内容.但是,往往我们工作之后,经常发现学习的东西很少了,学习效率非常低,感觉自己到了一个瓶颈期,久而久之,就演变成『一年工作经验,重复去用十年』的 ...

  3. 【Android】用Cubism 2制作自己的Live2D——官方App样例源码学习(1)!

    前言- 上几篇文章,我们一个一个的研究了Cubism官方提供的Android使用Live2D的简单例子,但是依旧和大家平时见到的还是有很大差距的.在研究了代码差不多一周以后,我决定还是用文字的形式记录 ...

  4. Git 分支模型

    翻译自:https://nvie.com/posts/a-successful-git-branching-model/ 在这篇文章中,主要介绍 Git 分支模型.不会谈论任何项目的细节,只讨论分支策 ...

  5. 和我一起学习爬虫之HTTP/HTTPS抓包工具--Fiddler

    HTTP/HTTPS抓包工具--Fiddler Fiddler[ˈfɪdlə(r)] 1. HTTP代理神器Fiddler Fiddler是一款强大Web调试工具,它能记录所有客户端和服务器的HTTP ...

  6. mysql关联表更改表多个字段值

    关联表更改某一个字段值:更改部分数据,外层where条件控制更改记录的数量 BEGIN; " ; "; ROLLBACK; -- COMMIT; 关联表更改某一个字段值:更改全部记 ...

  7. MonacoEditor 主动触发代码提示功能

    MonacoEditor是微软提供的代码编辑器 vscode即是使用它作为编辑器. 它的开发语言是ts,可以嵌入到浏览器中. 代码提示或者说代码补全功能是我们经常需要定制的部分. 目前它提供的快捷键是 ...

  8. wtf!rds数据同步居然出问题了--菜鸟db的数据修复历程

    由于一次上线操作的数据变更太多,导致执行时间很长! 由于做手动主从关系,所以操作落在了主库上. 由于主从关系不是对整个库的操作,所以在有表新增的地方,添加了dts新的同步关系. db变更完成后,就发布 ...

  9. shell打印 菱形

    #!/bin/bashread -p "input the length: " n        for i in `seq 1 $n`do    for ((j=$n;j> ...

  10. 【Spark篇】---SparkSql之UDF函数和UDAF函数

    一.前述 SparkSql中自定义函数包括UDF和UDAF UDF:一进一出  UDAF:多进一出 (联想Sum函数) 二.UDF函数 UDF:用户自定义函数,user defined functio ...