串口转tcp软件_tcp转虚拟串口软件

串口转tcp软件_tcp转虚拟串口软件由于项目调试需求,代码在远程服务器的虚拟机上,在本地计算机通过串口连接需要对接的设备,在远程服务器的上位机程序需要和此设备进行对接,系统结构如图1所示。图1系统网络结构图如何将本地的串口共享给远程服务器上的虚拟机里面的上位机程序呢?远程服务器开启了内网穿透,使用的SAKURAFRP,感兴趣的可以自己摸索下,很好用的。我直接穿透的远程桌面,而远程桌面可以将本地计算机的串口共享到远程服务器,如图2所示:图2通过远程桌面共享端口假设本地计算机的串口如图3所示,经过远程桌面共享后在远程

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

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

串口转tcp软件_tcp转虚拟串口软件

图1 系统网络结构图

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

串口转tcp软件_tcp转虚拟串口软件

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

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

串口转tcp软件_tcp转虚拟串口软件

图3 本地计算机的串口

串口转tcp软件_tcp转虚拟串口软件

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

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

串口转tcp软件_tcp转虚拟串口软件

图5 虚拟机共享串口

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

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

串口转tcp软件_tcp转虚拟串口软件

图6 有人的虚拟串口软件

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

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

串口转tcp软件_tcp转虚拟串口软件

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

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

串口转tcp软件_tcp转虚拟串口软件

图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还有个小不足,检测不到虚拟串口,只能打开物理串口。

串口转tcp软件_tcp转虚拟串口软件

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

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

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

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

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

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

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

5、支持日志跟踪功能。

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

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

8、支持通信计数功能。

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

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

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

串口转tcp软件_tcp转虚拟串口软件

图10 TCP2Com界面

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

TCP2Com-标签版V1.2.7.1免费好用的串口转TCP工具-嵌入式文档类资源-CSDN下载

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/196955.html原文链接:https://javaforall.net

(0)
上一篇 2025年9月16日 下午8:22
下一篇 2025年9月16日 下午9:01


相关推荐

  • db4o java_DB4O 社区版 8.1.3 发布,面向对象数据库[通俗易懂]

    db4o java_DB4O 社区版 8.1.3 发布,面向对象数据库[通俗易懂]Db4o是一个面向对象数据库,能对复杂的对象结构进行持久化,如树结构等,并使用本地语言进行数据查询,支持单用户模式,多用户模式。社区版本升级到全面支持Linux.使用例子初始化importcom.db4o.cs.Db4oClientServer;publicclassNode{publicStringname;publicNodeLeft;publicNodeRight;}St…

    2022年7月21日
    11
  • es6字符串的方法_es6模板字符串

    es6字符串的方法_es6模板字符串       模板字符串(templatestring)也就是模板字面量,是增强版的字符串,用反引号(`)来表示。它既可以当作普通字符串来使用,也可以在字符串中嵌套变量。注意:在模板字符串中嵌入变量的时候,需要将变量名写在${}中。       传统…

    2022年8月21日
    8
  • pandas的columns函数_python value_counts

    pandas的columns函数_python value_counts一般常用的有两个方法:1、使用DataFrame.index=[newName],DataFrame.columns=[newName],这两种方法可以轻松实现。2、使用rename方法(推荐):DataFrame.rename(mapper=None,index=None,columns=None,axis=None,copy=True,inplace=False…

    2025年11月11日
    12
  • 整整1600套Axure原型图设计源文件UI UX交互设计案例

    整整1600套Axure原型图设计源文件UI UX交互设计案例网络上的 Axure 教程看了很多 大多数都是讲软件如何操作 讲交互逻辑和用户体验的却寥寥无几 而实际项目中却非常重交互逻辑和用户体验 把这 1536 套原型文件一一拆解 慢慢分析作者的设计思路 会发现 互联网产品交互设计真的很有意思 很容易掌握 文件格式 AxureRP 为防止打不开的情况 建议使用 9 0 10 0 版本以上的软件打开 文件数量 1536 套文件大小 5 95GB 资源包内包含相当丰富的项目原型 各行各业的小程序原型 APP 原型 网页前端原型 中后台原型等等都有收录 涵盖教育 电商 直播及短视

    2026年3月16日
    2
  • visio professional2007产品密钥_输入您的产品密钥

    visio professional2007产品密钥_输入您的产品密钥W2JJW-4KYDP-2YMKW-FX36H-QYVD8

    2022年8月13日
    11
  • 如何用c语言return数组函数

    如何用c语言return数组函数对于一维数组来说就像下面这个例子 是这样一个题给定一个整数数组 nums 和一个整数目标值 target 请你在该数组中找出和为目标值的那两个整数 并返回它们的数组下标 你可以假设每种输入只会对应一个答案 但是 数组中同一个元素不能使用两遍 你可以按任意顺序返回答案 int twoSum int nums intnumsSize inttarget int returnSize for inti 0 i

    2026年3月16日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号