linux 下用 socat 模拟串口调试

$ socat -d -d pty,raw,echo=0 pty,raw,echo=0
2020/05/01 12:08:12 socat[8341] N PTY is /dev/pts/2
2020/05/01 12:08:12 socat[8341] N PTY is /dev/pts/3
2020/05/01 12:08:12 socat[8341] N starting data transfer loop with FDs [5,5] and [7,7]

-d -d 前面两个连续的 -d -d 代表调试信息的输出级别

启一个终端,运行:

echo "test string" > /dev/pts/3

再启一个终端 ,运行:

cat < /dev/pts/2

可以看到向 pts3 发送的数据,由 pts2 接收到了。开发调试的程序连接到 pts2 就可以实现数据接收了。