[小技巧] shell 下查看串口是否工作正常

时间:2022-05-07 13:11:48

在 Linux 下调试串口,是个麻烦的事情,尤其是嵌入式环境,很多时候要借助另一台设备来进行调试。

这里琢磨出一种可行的串口调试方法,可以简单的查看串口是否在正确工作。

1. 短接 tx 和 rx,让串口自发自收 (DB9 插头上的 2 和 3 脚,不管有没有交叉;反正交叉了也只是 2 和 3 换了个位置,不影响本测试)

2. 使用 "cat /dev/ttyUSB0 &" 在后台监视串口设备 /dev/ttyUSB0 的输出

3. 使用 echo “hello” > /dev/ttyUSB0 给串口写数据,这里的数据是字符串 “hello“

如此一来,如果串口是正常工作的,那么,指令 3 执行完之后,屏幕上会打印出一个 hello,此为该串口自发自收的数据;如果设备已经挂掉了,那么不会有任何反应。

如果想进一步找出串口的 tx 和 rx 对应哪个脚,则需要另外一个设备。

不过,有多个串口的话,我们可以使用上面的方法:先用上面方法验证两个串口工作正常;然后,分别短接两个串口的 2 脚或 3 脚,监视其中一个的接收(比如 ttyUSB0,cat /dev/ttyUSB0 &);从另一个串口发送说据(比如 ttyUSB1,echo “hello” > /dev/ttyUSB1);如果成功接收,则此时短接线 ttyUSB1 侧为 tx,ttyUSB0 侧为 rx;若没有成功,可以尝试其它组合,并继续验证。