首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
Coding
V2EX  ›  Linux

Shell Script 实现使用 cat 读串口的同时向串口写数据

  •  
  •   Lily0756 · 2018-08-08 13:54:57 +08:00 · 2418 次点击
    这是一个创建于 493 天前的主题,其中的信息可能已经有所发展或是发生改变。

    脚本必须执行完 timeout 5 cat -v < /dev/ttyUSB0 后才执行 echo "命令" > /dev/ttyUSB0
    但我是想在读串口的过程中发送数据并读取反馈
    目前只能写两个脚本,一个读,一个写,用两个终端窗口分别运动同时跑。

    第 1 条附言  ·  2018-08-08 16:10:52 +08:00
    目标是把读和写都放到同一个脚本里,因为两个终端跑不是很方便。
    12 回复  |  直到 2018-08-09 14:59:59 +08:00
        1
    truehyp   2018-08-08 15:29:05 +08:00
    第一句,写个死循环嘛
        2
    Lily0756   2018-08-08 15:36:01 +08:00
    @truehyp 写个死循环那岂不是永远不会执行第二句命令 echo "cmd" > dev/ttyUSB0 了?
        3
    truehyp   2018-08-08 15:46:03 +08:00
    @Lily0756 不是在两个终端分别跑?
        4
    meta   2018-08-08 15:50:32 +08:00
    &到后台不行吗?
        5
    Lily0756   2018-08-08 16:08:05 +08:00
    @truehyp 目前是两个终端分别跑 目标是读写都放到一个脚本里。
        6
    Lily0756   2018-08-08 16:09:38 +08:00
    @meta 能说具体一点吗 不能 get 到你的意思
        7
    orzfly   2018-08-08 16:12:13 +08:00
    echo "命令" >/dev/ttyUSB0 &
    timeout 5 cat -v </dev/ttyUSB0
        8
    izoabr   2018-08-08 22:52:44 +08:00
    应该是一个循环开始读,读完给 echo,然后继续循环吧,我记得这个不能双工呀
        9
    Lily0756   2018-08-09 14:24:20 +08:00
    @orzfly 即时响应的命令还是抓不到。
        10
    Lily0756   2018-08-09 14:25:57 +08:00
    @izoabr 就是不能双工所以很头疼
        11
    orzfly   2018-08-09 14:51:53 +08:00
    那就反过来啊)

    timeout 5 cat -v </dev/ttyUSB0 &
    echo "命令" >/dev/ttyUSB0
        12
    Lily0756   2018-08-09 14:59:59 +08:00
    @orzfly 试了几轮 成功率还是比较高的 非常感谢~
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2288 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 34ms · UTC 10:25 · PVG 18:25 · LAX 02:25 · JFK 05:25
    ♥ Do have faith in what you're doing.