【问题标题】:how to duplicate /dev/ttyUSB0 stream?如何复制 /dev/ttyUSB0 流?
【发布时间】:2016-11-16 14:56:56
【问题描述】:

有没有办法在 Linux (Ubuntu 14.04) 上复制串行设备 /dev/ttyUSB0 ?

我制作了一个从 RS232 端口读取数据的程序,我想并行执行具有不同选项的程序的两个实例。但是,我无法从我的程序(用 C 语言编写)打开 /dev/ttyUSB0 两次。

理想情况下,我希望 ttyUSB0 驱动程序创建两个相同的设备。 (/dev/ttyUSB0 和 /dev/ttyUSB1)。驱动程序会确保 ttyUSB1 是 ttyUSB0 的精确副本。

有没有办法从命令行(bash)执行此操作,或者我应该制作自己的特殊串行端口驱动程序?

【问题讨论】:

    标签: linux bash serial-port duplicates linux-device-driver


    【解决方案1】:

    您可以使用tee 将写入/dev/ttyUSB0 的任何内容输出到两个命名管道。

    mkfifo copy1 copy2
    tee copy1 copy2 < /dev/ttyUSB0 > /dev/null &
    program1 < copy1
    program2 < copy2
    

    (严格来说,您只需要一个命名管道;另一个程序可以从直接连接到tee 的匿名管道中读取。不过,这种对称处理更简洁一些。)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多