对于使用SerialPorts进行通信的应用程序(确切地说,是Modbus),为了测试目的,我需要在网络上架起SerialPort的桥梁。
因此,我希望有以下设置:
Device | Network | PC
SerialPort |------------------| SerialPort
Map Serialport| | Map network to Serialport
to Network | | 我已经开始使用socat的第一部分了。
我打开了PC上的TCP端口
nc -l 8080在我的设备上
socat pty,link=/dev/virtualcom0 tcp:PC-IP:8080将写在/dev/virtualcom0上的所有东西映射到端口8080上的PC.
但现在,要将套接字映射回Serialport有问题。
socat tcp:PC-IP:9123 pty,link=/dev/virtualport0这给我带来了一个Connection Refused,这一点很明显,因为我使用了TCP,并且设备已经使用了端口。
所以我用同样的方法
socat pty,link=/dev/virtualcom0,raw udp:PC-IP:8080也把其他的东西都换成了UDP。
但是,在我的电脑上,我的/dev/virtlalcom0/上什么都没有。
发布于 2015-03-23 10:34:00
tcp连接的一方需要侦听端口(第一个您启动的端口),而第二个端则连接到它。
对于第一方,请做:
socat tcp-listen:8080 pty,link=/dev/virtualport0至于第二方面,请:
socat pty,link=/dev/virtualcom0 tcp:IP-of-other-machine:8080别管网猫了,你不需要它。
https://stackoverflow.com/questions/29207980
复制相似问题