linux – socat两个串口一起
发布时间:2020-12-13 23:27:41 所属栏目:Linux 来源:网络整理
导读:我正在编写一个JUnit测试来测试我的应用程序.该应用程序是用 Java编写的,并使用purejavacomm库.为了测试串行解析器,我想设置一个虚拟串口,以便测试可以与解析器通信.除了简单的解析之外,它还可以在可用时动态连接到串口,因此我不想使用PipedInputStream. 此
我正在编写一个JUnit测试来测试我的应用程序.该应用程序是用
Java编写的,并使用purejavacomm库.为了测试串行解析器,我想设置一个虚拟串口,以便测试可以与解析器通信.除了简单的解析之外,它还可以在可用时动态连接到串口,因此我不想使用PipedInputStream.
此库仅查找以ttyS,ttyUSB或ttyACM开头的设备文件.因此,我不能做常规(这会产生/ dev / pts / x中的串口): socat -d -d pty,raw,echo=0 pty,echo=0 我试过做: socat /dev/ttyS20 /dev/ttyS21 但它不起作用.它不会退出,也不会打印错误.我尝试用屏幕连接到/ dev / ttyS20,但它只是说,[屏幕正在终止]. 我查看了ttyS20(和21)的用户权限,他们都有我的用户所在的组,拨出(用户:root)(chris). 我是否忽略了权限?有没有更好的方法一起完成这一切? 解决方法
您需要将新创建的ptys链接到另一个位置
socat -u -u pty,echo=0,link=/dev/ttyS20 pty,link=/dev/ttyS21 使用socat创建虚拟端口后,尝试更改管道两端的所有权以允许更轻松的访问. sudo chown user:user /dev/ttyS20 sudo chown user:user /dev/ttyS21 您还可以使用chmod将权限更改为777. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |