虚拟机中linux系统的串口通信

时间:2024-05-18 17:30:25

虚拟机中默认的串口为/dev/ttyS0, 我看大家都说在一个终端里cat /dev/ttyS0,另一个终端里echo hello>/dev/ttyS0,就能看到数据。我在虚拟机里测试不行,有哪位高手知道,指点一下!

有的人说可以在同一个虚拟机中通过建立命名管道\\.pipe\com_1进行通信,我尝试了下没有成功。

我采取的是在两个虚拟机linux系统之间建立命名管道\\.pipe\com_1,这样测试时成功的。步骤如下:

1.关闭虚拟机中的linux系统,点击其中一个Linux系统的编辑虚拟机设置,添加一个串行端口,选择输出到命名管道,\\.pipe\com_1,选择该端为服务器,另一端为虚拟机;

2.同样操作另一个Linux系统,命名管道一定要相同\\.pipe\com_1,选择该端为客户端,另一端为虚拟机。

如图:

虚拟机中linux系统的串口通信

虚拟机中linux系统的串口通信

3.我添加的串口显示“串行端口2”,相应的在linux下应为/dev/ttyS1。

4.打开两个虚拟机,一台终端 sudo cat /dev/ttyS1, 另一台在root下echo hello>/dev/ttyS1,然后就能看到发送hello了。