可以,可以用socat模拟串口。
需要使用socat的PTY地址类型:
PTY: Generates a pseudo terminal (pty) and uses its master side. Another
process may open the pty's slave side using it like a serial line or
terminal.
最简单的选择是:
socat PTY,link=./virtual-tty,raw,echo=0 -
让您正在测试的应用程序打开virtual-tty。从你的输出
应用程序将打印到控制台。您输入的文本将发送到您的
应用。
如上所述,PTY 地址类型创建一个
peudo-terminal。 link
选项在伪终端和给定文件之间创建软链接。
您可以选择任何您想要的文件名。如果没有软链接,您将需要
打开设备,很难确定正确的设备。 raw
将伪终端置于原始模式。你通常想要这个,因为你不想要
任何特殊的终端处理选项。 echo=0 禁用回显模式。
如果您拥有(或创建)一个应用程序来模拟在
Arduino,您也可以通过 socat 连接它。如果你的模拟器
通过 stdin/stdout 进行通信,然后使用以下命令:
socat PTY,link=./virtual-tty,raw,echo=0 EXEC:simulator-command
上面将simulator-command的stdin/stdout连接到
伪终端。
如果您的模拟器也通过串行端口进行通信,则使用 PTY
命令两次:
socat PTY,link=./arduino-sim,raw,echo=0 PTY,link=./virtual-tty,raw,echo=0
打开你的模拟器arduino-sim。