串口和TCP互相转发工具

串口与TCP相互转发工具:原理、实现与远程调试实践 在嵌入式开发和工业自动化场景中,串口通信始终是设备调试和采集的基石,但其物理距离受限,难以满足远程运维与设备上云的需求。TCP/IP作为最通用的网络传输协议,天然适合跨地域的数据交互。将串口数据与TCP流量进行双向透传,成为远程调试串口设备、让老旧仪表接入网络以及实现Modbus RTU转TCP网关的关键技术。这类工具不仅要实现基本的字节转发,还需要应对缓冲区溢出、粘包处理、断线重连、多客户端共享等工程难点。本文从串口与TCP的数据模型差异出发,对比了ser2net、socat与硬件串口服务器等常见方案,并 阅读详情
AI摘要

本文详细介绍了在远程服务器环境下,如何通过串口共享和网络工具解决本地串口与虚拟机上位机之间的通信问题。作者在尝试多种软件如SAKURAFRP、VMWare、有人科技的虚拟串口软件、SerialtoEthernetConnector等后,由于各种限制未能成功。最后,作者自行编写了一个名为TCP2Com的程序,实现了物理串口和虚拟串口的TCP转换,具备自动重连、日志跟踪等功能,以满足调试需求。

由于项目调试需求,代码在远程服务器的虚拟机上,在本地计算机通过串口连接需要对接的设备,在远程服务器的上位机程序需要和此设备进行对接,系统结构如图1所示。

图1 系统网络结构图

如何将本地的串口共享给远程服务器上的虚拟机里面的上位机程序呢?远程服务器开启了内网穿透,使用的SAKURA FRP,感兴趣的可以自己摸索下,很好用的。我直接穿透的远程桌面,而远程桌面可以将本地计算机的串口共享到远程服务器,如图2所示:

图2 通过远程桌面共享端口

假设本地计算机的串口如图3所示,经过远程桌面共享后在远程服务器上就会多出一些串口出来,表示的就是本地计算机共享过来的串口,串口号一般和本地计算机的相同,但是在远程服务器的设备管理器中是显示不出来共享过来的串口的,用串口调试助手等软件可以看到,如图4所示。

图3 本地计算机的串口

图4 本地计算机串口映射到远程服务器后的串口

现在差最后一步,将远程服务器的串口共享给虚拟机就可以了,用的是VMWare虚拟机,通过给虚拟机添加串口就可以实现,设置如图5所示。

图5 虚拟机共享串口

但在实际使用的过程中发现虚拟机中的上位机并不能很好的和设备连接,可能是速度的问题或者是数据流转换的问题,总之不成功。但直接放到远程服务器上运行上位机是可以的(不在虚拟机上运行上位机),由于上位机开发环境在虚拟机上,还需要想想办法将远程服务器上的串口共享给虚拟机。

开始查找是否有满足要求的工具软件,其中用的较多的是将串口转换成网络数据,到目的地后再将网络数据转为串口。其中有人科技的工具可以建立一个虚拟串口和网络端口的映射,很方便,如图6所示。

图6 有人的虚拟串口软件

用有人的这个虚拟串口软件,我在虚拟机上就可以很方面的搭建一个虚拟串口,只要在远程服务器上搭建一个物理串口到虚拟机TCP8222端口的透明TCP连接就可以了,但有人的不支持物理串口转发,还需要查找串口到TCP服务器的转发软件才可以。

经过搜索,这个网页Best Serial to Ethernet solutions on the market列出了可选的方案,Serial to Ethernet Connector是用的比较多的,因此下载测试了一下,用其他串口,包括虚拟串口Serial to Ethernet Connector都能正常工作,但是对于这样远程桌面共享过来的串口却怎么都打不开,如图7所示。

图7 共享过来的串口无法打开使用

正常的是能直接打开的,如图8所示。

图8 其他串口是可以打开使用的

而且Serial to Ethernet Connector不是免费的哦。

推荐的第2个TCP-Com,第3个Network Serial Port Kit,网站打不开,从其他地方也下载不下来,只得作罢。

第4个SERIAL-TCP/IP还可以,网站能打开,并下载安装使用了,刚开始测试效果还可以,但当发一些十六进制数时,SERIAL-TCP/IP出现了传输错误,比如发送FF A5 03 04 07,SERIAL-TCP/IP转发过来就变为: FF 3F 04 07,猜测这可能是SERIAL-TCP/IP内存处理字符串的小Bug,如图9所示。另外,SERIAL-TCP/IP还有个小不足,检测不到虚拟串口,只能打开物理串口。

图9 SERIAL-TCP/IP转发出现错误

后面2个也是打开费劲,也没有认真去测。

为了更好地满足调试应用,自己就动手写了一个串口转TCP的小程序,基本特征如下:

1、支持打开物理串口和虚拟串口(不创建虚拟串口,但能打开其他工具创建的虚拟串口)。

2、支持通过TCP客户端连接到远程TCP服务器。

3、支持TCP客户端自动重连,并可配置重连周期。

4、支持TCP服务端监听,支持接入一个TCP连接,不支持多个TCP连接同时接入。

5、支持日志跟踪功能。

6、支持日志自动清空功能,并能配置。

7、支持日志暂停显示功能。

8、支持通信计数功能。

9、支持通信计数手动清零功能。

10、支持配置自动保存功能,软件下次启动自动加载上次配置。

软件名字暂定为TCP2Com,界面如图10所示:

图10 TCP2Com界面

如果需要可以通过下面的链接下载最新版本:

TCP2Com-标签版V1.2.9.1免费好用的串口转TCP工具

TCP2Com-标签版V1.2.8.1免费好用的串口转TCP工具

TCP2Com-标签版V1.2.7.2免费好用的串口转TCP工具

TCP2Com-标签版V1.2.7.1免费好用的串口转TCP工具

【免费】TCP2Com免费好用的串口转TCP工具V1.2.12.1资源-优快云下载

串口被独占?嵌入式调试中多工具共享串口的解决方案 串口通信是嵌入式调试的基础,但串口作为独占式资源,常导致多工具无法同时访问。其原理是操作系统通过文件句柄管理串口,同一时刻只允许一个进程持有。解决串口独占能提升调试效率,避免频繁切换工具。常见应用场景包括日志监控、AT指令发送和固件烧录。针对串口被占用问题,可通过虚拟串口、端口转发或自定义脚本实现多工具共享,同时需注意驱动兼容性和进程管理。 阅读详情

相关推荐

多功能串口工具:232接口与TCP/UDP协议的综合应用

串口通信是一种常见的设备间通信方式,依赖于串行通信接口,它通过串行数据线按位顺序逐个发送数据。RS-232是一种串行通信标准,广泛应用于计算机与设备之间的数据传输,它定义了信号电压、信号功能和连接器的布局。在网络编程中,客户端(Client)和服务端(Server)是两种基本的角色。服务端通常是指能够提供网络服务的应用程序或设备,它在固定的IP地址和端口上监听客户端的连接请求,处理客户端发送的数据,然后做出相应的响应。

weixin_31869917的博客 445

双串口数据透传转发监听工具

可以用于排查两个设备间串口通信异常的问题,主要目的是能够不影响原先的正常通信工作,同时可以监听数据或者手动发指令测试。串口参数配置(包括输入和输出)自己编写的一款小工具。

csdn727的博客 2746

Serial to Ethernet Connector 7.1 Build (7.1.876) 内附注册机

Serial to Ethernet Connector是一款强大的串口转网络工具,版本比较新,压缩包内带注册机,网上收集来的,仅供测试。 实现网络共享,共享端选择COM口时尽量要使用没有占用的串口号,安装后选择服务器的IP地址及所映射的端口号,设置工作模式。

串口转发工具 串口屏调试神器 PC串口监视神器

chuank

bxd1234的博客 6505

串口转发工具配合虚拟串口即可实现一串口数据转发到另外几个串口

串口转发工具~~把串口1的数据,实时转发到另外3个串口。。。配合虚拟串口工具,即可实现用软件实现把一个串口的数据转发到另外串口提供给各个软件使用~

串口转发助手,用于不同接口设备调试

串口转发工具,用于不同接口设备调试。

C#网口通信和串口数据互相转发

最近闲来无事写了一个串口转网口的模拟机程序: 实现原理创建tcpserver监听端,接收客户端发送过来的信息,在通过com口转发出去。同样收到串口数据在通过服务端转发给客户端 如图 串口发送端代码: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text

weixin_43542114的博客 5053

TCP转串口工具 VSPort TCP转串口工具虚拟串口程序

可以把TCP通讯的设备转换成本机上的虚拟串口 改IP:Tool - IPsearch - Refresh - 搜索到IP后 在下面的方框里更改 然后点Alter 转串口:在COM选择处选你要虚拟成的串口,点Create - 弹出来的地方 把IP ADD改为你刚改的IP地址 点保存就可以了

TCP和串口间的互相通信(透传)

TCP和串口间的互相通信(透传) Tcp作为服务端,接收消息,通过串口发送 private void TcpDataReceive(object clientmsg) { string tcpReceiveFormat = "Hex"; Dispatcher.Invoke(new Action(() => { if (TcpSendFormat.IsChecked == true)

qq_40397362的博客 5060

【论文笔记】Reaching agreement in the presence of faults (EIG)

1 问题定义 2 交互一致性 3 单点故障 m=1 n=4 4 多点故障(n>=3m+1) 计算过程 m=2 n=7 5 n<3m+1不能达成协定 6 带认证的算法 7 总结 这篇论文在1980年发表,是1982年著名的拜占庭将军问题论文的前身。作者Leslie Lamport是2013图灵奖得主,两篇论文引用次数分别为5000+和2000+。该论文提出的算法现在被...

zjwreal 2994

【故障排查】telnet连接失败:端口23不可达的深度分析与解决方案

本文深度剖析了telnet连接失败,特别是端口23不可达的常见原因与系统性解决方案。文章从客户端本地配置、服务器端服务与防火墙、中间网络路径三个层面,提供了详细的排查步骤与命令,并强调了Telnet协议的安全风险,建议使用SSH等更安全的替代方案进行远程管理与端口测试。

weixin_29306011的博客 898

两个TCP转虚拟串口软件

两个TCP转虚拟串口软件 【下载地址】两个TCP转虚拟串口软件 本开源项目提供了两个功能强大的TCP转虚拟串口软件,能够轻松创建虚拟串口设备,实现数据在TCP/UDP与串口之间的双向转换和传输。通过该软件,用户可以将发往虚拟串口的数据转换为TCP或UDP数据包发送,同时也能接收TCP或UDP数据包并转发到虚拟串口,为应用...

gitblog_06784的博客 509

【yolov8】与yolov5的区别及改进详解

yolov8-----有点厉害的目标检测框架.

qq_44878985的博客 3万+

TCP桥接工具设计

TCP桥接工具是一个TCP服务程序,能够将连接到此程序的TCP连接进行数据透明桥接转发。为了让桥接更加灵活,软件设计了2个监听端口,一个用于完全的透明桥接,一个用于基于标签的桥接。 在非标签桥接中,基本的处理流程就是将从任意一个TCP连接发来的数据,转发给所有其他的TCP连接,没有应用层的连接过程,适合于简单的点对点透传。 在基于标签的桥接中,加入了应用层的连接建立过程。在TCP连接建立成功后,客户端需要首先发送标签信息,这样所有的客户端连接都会在TCP桥接工具上关联到一个标签上。

庞景元的技术专栏 6万+

告警不是闹钟:AI 如何把告警过滤成真正的“求救信号”?

告警不是闹钟:AI 如何把告警过滤成真正的“求救信号”?

Echo_Wish 241

【01】总目录——软件设计师50讲通关地图|从零基础到工程师职称

本文是《软件设计师·50讲通关|从零基础到工程师职称》专栏的01篇总目录,系统梳理了50篇博文的完整架构与核心逻辑。专栏覆盖软考软件设计师(中级)全部考点,分为导学规划、基础知识、设计模式、下午题专项、算法实战、冲刺模拟、收官进阶七大模块,既兼顾上午题75道单选题的理论攻坚,也聚焦下午题案例分析的解题能力提升。每篇博文均包含考点精讲、真题解析、实战技巧与速记方法,配套可运行代码、解题模板及备考资源。无论你是零基础转行、在校学生还是在职程序员,都能通过这份学习地图明确进度、精准定位薄弱环节,高效搭建知识体系

专注于人工智能、软件开发、工控自动化、工厂数字化及智能化等领域,希望和大家共同进步! 1279

Python实现串口与TCP互相转发:原理、代码与实战

串口通信与TCP/IP网络是工业控制和物联网设备中最常见的两种数据通道。当设备仅有RS232/RS485串口而需要远程访问时,将串口数据与TCP字节流双向互转就成为了调试与集成的关键环节。这种转换本质上是在两个异构物理链路间建立透明的字节搬运通道:一方从串口读取数据写入socket发送,另一方从socket接收数据写入串口。理解双向桥接、串口参数配置、TCP Server/Client模式转换、粘包半包处理及断线重连等原理,能够显著提升转发工具的稳定性与实时性。该技术广泛应用于单片机远程日志抓取、Modbu

weixin_42692935的博客 298

太美了!现代女主jk海军风穿搭四视图

哪个女孩子初高中的时候不买几套JK衣服啊,穿上完全是青春女孩。那还愣着干啥,不得也给你的漫剧女主也穿上!直接就是分享三套JK穿搭,红棕双麻花辫配经典水手服,是那种乖乖巧巧的元气学妹;粉色羊毛卷双马尾,搭配蝴蝶结和小挎包甜度直接拉满;还有灰棕色侧麻花辫,浅蓝上衣配黑色百褶裙,温柔里又带点小酷。下面把这三套角色的完整提示词分享出来,喜欢哪套就拿去参考,改改发型和配色,还能继续解锁新角色!

欢迎来到鸾姝淡月博客,专为程序员和编程爱好者打造的技术博客。我们分享编程语言趋势、开发工具、编程哲学、职业发展等,助你掌握新技术,优化技能,激发编程热情。 51

【亲测免费】 TCP2Com-标签版V1.2.9.1:免费高效串口转TCP实用工具

TCP2Com-标签版V1.2.9.1:免费高效串口转TCP实用工具 【下载地址】TCP2Com-标签版V1.2.9.1免费高效串口转TCP实用工具 TCP2Com-标签版V1.2.9.1是一款专为解决远程串口通讯难题而设计的软件工具。它巧妙地将串口通讯与TCP协议相结合,极大地便利了开发者和工程师在需要远程操作或调试串...

gitblog_09718的博客 3803

石油化工软件:ProII二次开发_(9).案例研究:ProII二次开发实例

我们将上述三个步骤整合到一个完整的案例中,展示如何从头到尾实现一个ProII二次开发项目。这个项目包括自动化流程模拟、数据处理与分析以及动态工艺参数调整。

kkchenjj的博客 918

128、点云配准与ICP:经典配准算法与深度学习配准

上周调试一台双臂协作机器人,左手持结构光相机扫描桌面上的随机堆叠工件,右手准备执行抓取。问题出在“对齐”这一步——相机扫描得到的点云和CAD模型点云之间差了大约15度的旋转,导致抓取姿态计算出来直接怼到桌面上。我第一反应是“ICP跑一下不就行了”,结果跑了三分钟,误差纹丝不动,甚至越迭代越发散。后来查了日志才发现,初始位姿给得太离谱,ICP直接掉进了局部最优。这个场景太典型了——很多人以为点云配准就是调个ICP库函数,实际工程里坑比想象中多得多。今天这篇笔记,咱们把点云配准这件事从头捋一遍。

sundong_81的博客 42

串口与网络调试合并:SSCOM5实现TCP与串口双向透传实战

在嵌入式开发中,串口通信和TCP网络通信是设备调试的基础。串口用于MCU日志输出与AT指令交互,TCP则承载网络数据传输。将两者结合,可在同一工具内实现串口与网络数据的双向透传,提升调试效率。SSCOM5作为串口/网络调试助手,支持TCP Server与TCP Client模式,并能与串口功能同时运行,适用于串口WiFi模块、4G DTU、串口服务器等场景的快速验证。通过配置监听端口、建立连接、设置转发规则,即可完成串口到TCP及TCP到串口的双向通信测试,帮助开发者快速排查硬件连接与协议匹配问题。

weixin_31534091的博客 136

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

SSCOM5串口与TCP双向透传调试实战:Server/Client搭建与通信测试

串口通信与TCP网络通信是嵌入式开发中两种基础且高频使用的调试手段。串口通信通过UART协议实现设备与PC间的异步数据传输,TCP则提供可靠的网络字节流通道。将两者结合进行双向透传测试,能够有效验证串口转以太网、物联网网关等场景下的数据链路完整性。在实际工程中,开发者常面临多工具切换导致时间戳错位、数据比对困难等问题。SSCOM5作为集成串口与网络功能的调试工具,支持TCP Server与TCP Client模式,可在同一界面完成串口数据与网络数据的双向转发,适用于STM32数据上报、ESP32传感器转发及

weixin_29195217的博客 216

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

【亲测免费】 TCP2Com-标签版V1.2.9.1:串口转TCP的利器,助您高效远程通讯

TCP2Com-标签版V1.2.9.1:串口转TCP的利器,助您高效远程通讯 【下载地址】TCP2Com-标签版V1.2.9.1免费高效串口转TCP实用工具 TCP2Com-标签版V1.2.9.1是一款专为解决远程串口通讯难题而设计的软件工具。它巧妙地将串口通讯与TCP协议相结合,极大地便利了开发者和工程师在需要远程操作...

gitblog_09786的博客 1140

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

服务器端口 虚拟串口,怎么将本机的网络端口,虚拟成串口

如题,最近项目上有个需求,我们的客户机通过网络发送信息到本地PC,但本地PC的处理软件是通过串口接收数据的,怎么将网络端口虚拟成串口呢?解决方案10买个以太网转串口的网关这类产品市面上很多的.你安装了它的驱动之后,会自动给你安装个客户端配置工具,然后你就可以把它的IP和Port映射成本地的串口10又看了一遍需求什么本地PC用串口接收数据,云里雾里的接收什么数据???服务器发来的数据保证是TCP...

weixin_42342206的博客 1533

串口转TCP实战:TCP2Com标签版实现串口设备远程调试与数据采集

串口转TCP是工业数据联网的常用桥接方案。RS232传输距离短、RS485主从总线难以跨区域组网,现场大量PLC、仪表、传感器仍以串口为主,而上位机与云平台又依赖TCP/IP网络,因此需要把串口数据封装成TCP数据流。TCP2Com标签版V1.2.9.1正是这一环节的轻量工具,支持TCP服务端与客户端两种模式,可将本机串口映射为网络端口,供远程上位机直接读写;也能借助虚拟串口把远端设备虚拟成本地COM口,兼容老旧上位机。部署时确认串口参数、端口规划与心跳机制,配合日志排查,即可实现远程调试、数据采集和多设备

weixin_34159110的博客 293
上一篇: SVN客户端修改密码
下一篇: TCP桥接工具设计
kernelspirit
博客等级 码龄25年 135粉丝 92原创
评论 25
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值