socat 实现串口与网络转发

2020-04-28  本文已影响0人  炎鸿

1.创建虚拟串口

$ sudo socat -d -d PTY PTY
  ##/dev/pts/4 /dev/pts/5就是虚拟串口
  2020/04/28 15:47:52 socat[51149] N PTY is  /dev/pts/4
  2020/04/28 15:47:52 socat[51149] N PTY is /dev/pts/5
  2020/04/28 15:47:52 socat[51149] N starting data transfer loop with FDs [5,5] and [7,7]

2.建立串口与网络的双向数据流

2.1.tcp-server:

$ sudo socat -d -d /dev/pts/4,b115200,raw,nonblock,ignoreeof,cr,echo=0 TCP4-LISTEN:5555,reuseaddr

2.2.tcp-client:

$ sudo socat -d -d /dev/pts/4,b115200,raw,nonblock,ignoreeof,cr,echo=0  TCP:192.168.1.100:5555

2.3.udp-server:

$ sudo socat -d -d /dev/pts/4,b115200,raw,nonblock,ignoreeof,cr,echo=0 udp-listen:5555,reuseaddr

2.4.udp-client:

$ sudo sudo socat -d -d /dev/pts/4,b115200,raw,nonblock,ignoreeof,cr,echo=0  UDP:192.168.1.100:5555

3.测试

终端1->虚拟串口
$  sudo socat -d -d PTY PTY
终端2 终端3->建立串口网络互连
$  sudo socat -d -d /dev/pts/4,raw,nonblock,ignoreeof,cr,echo=0 TCP4-LISTEN:5555,reuseaddr
$  sudo socat -d -d /dev/pts/5 TCP:192.168.1.100:5555
终端4 终端5->minicom串口助手
$  minicom  -D  /dev/pts/4   -b  9600
$  minicom  -D  /dev/pts/5   -b  9600

4.只要你愿意,xx<=>yy

上一篇下一篇

猜你喜欢

热点阅读