少于 1 分钟阅读 次阅读

一、 硬件接线:交叉连接

在敲击任何命令前,必须先完成物理引脚的接线。要验证两个串口的互通,将它们短接:

  • USB0 TX <—> USB1 RX
  • USB0 RX <—> USB1 TX
  • GND <—> GND(如果从不同模块引出,共地必不可少)

二、 软件测试:开启双终端验证

为了直观观察收发情况,强烈建议同时打开两个 SSH 终端窗口(窗口 A 和窗口 B)进行操作。

方法一:使用轻量级工具

图形界面的本质是在后台帮你配好了参数,命令行下最稳妥的方式也是使用专用的串口终端工具,如 microcompicocomminicom

避坑指南:microcom 的语法差异 在部分系统中(如 Ubuntu/Debian 的独立版本),使用 microcom必须显式加上 -p 参数指定端口。如果仅使用 microcom -s 115200 /dev/ttyUSB0,它会忽略后面的设备节点,直接退回连接系统默认的 /dev/ttyS0,导致测试完全无效。

注意,没有microcom工具则使用下面的命令安装:

sudo apt update
sudo apt install microcom

命令演示:

  1. 在窗口 A 打开 USB0:
microcom -p /dev/ttyUSB0 -s 115200

  1. 在窗口 B 打开 USB1:
microcom -p /dev/ttyUSB1 -s 115200

  1. 在任意窗口输入字符,即可在另一个窗口实时看到回显。

替代工具: 如果系统没有 microcom,也可以使用:

  • picocom -b 115200 /dev/ttyUSB0
  • minicom -D /dev/ttyUSB0 -b 115200

方法二:纯命令法(stty + cat + echo)

如果系统极其精简,没有任何串口工具可用,可以借助基础命令。

错误示范: 直接使用 echo "test" > /dev/ttyUSB0 极大概率会失败。因为这会导致系统瞬间打开设备、发送数据、然后立刻关闭设备。关闭过快会清空底层缓冲区,导致数据丢失。

正确步骤:

  1. 初始化串口参数(极其关键) 在两边窗口分别执行,将波特率设为 115200,并配置为 raw(透传模式):
stty -F /dev/ttyUSB0 raw speed 115200
stty -F /dev/ttyUSB1 raw speed 115200

  1. 在窗口 A 开启持续监听 执行以下命令后,窗口会阻塞并保持串口文件的打开状态:
cat /dev/ttyUSB1

  1. 在窗口 B 发送测试数据 打开另一终端向 USB0 写入数据(建议带上换行符以触发某些串口的中断):
echo -e "Message from USB0\r\n" > /dev/ttyUSB0

此时,在保持监听的窗口 A 中,便能顺利看到打印出的测试字符串。

留下评论