繁体   English   中英

在 Linux 上共享串口

[英]Share Serial Port on Linux

我正在将 Raspberry Pi 用于需要能够读写串行端口但来自不同程序的项目。 程序 A 需要能够从串口读取,外设 A 正在发送数据。 程序B需要向串口写入数据,外设B正在监听(供参考,本例中程序A是GPSD,程序B是我写的)。 程序 A 永远不需要写,程序 B 永远不需要读。

是否可以让两个程序同时访问端口? 如果没有,是否可以编写一个程序来创建两个设备节点(将/dev/ttyAMA/dev/ttyAMA_1/dev/ttyAMA_2 ,也许?)并复用到串行端口?

在此先感谢您的帮助!

-马修

我相信多个应用程序可以同时访问一个 TTY 设备。 您从一个用户空间应用程序执行读取操作并从另一个应用程序执行写入操作这一事实意味着您不太可能遇到问题。

要验证这一点,您可以使用控制台从串行读取到串行设备:

cat /dev/ttyS0

如果您打开另一个终端,则可以毫无问题地写入设备:

echo "stuff" > /dev/ttyS0

如果您需要控制消息和响应,您可以使用管理串行端口访问的第三个进程。 类似于: https : //stackoverflow.com/a/63537265/4702399

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM