测试杂文 - linux串口打印

在Linux系统中,你可以使用多种工具和方法来打印串口接收到的信息。以下是几种常见的方法:

使用 cat 命令

cat 命令可以简单地从串口设备读取并打印数据。假设串口设备是 /dev/ttyS0,你可以使用以下命令:

bash 复制代码
cat /dev/ttyS0

注意 :使用 cat 命令时,终端会被阻塞,直到你手动停止(例如按 Ctrl+C)。

使用 screen 命令

screen 是一个终端仿真程序,也可以用于读取串口数据。你可以通过以下命令启动 screen

bash 复制代码
screen /dev/ttyS0 9600

这里的 9600 是波特率(Baud Rate),根据你的串口通信设置进行调整。

使用 minicom

minicom 是一个功能强大的串口通信工具,通常用于配置和调试串口设备。

  1. 首先安装 minicom(如果尚未安装):

    bash 复制代码

sudo apt-get install minicom # 对于Debian/Ubuntu系统 sudo yum install minicom # 对于CentOS/RHEL系统

```

  1. 配置 minicom

    bash 复制代码
    sudo minicom -s

    在配置菜单中,选择 Serial port setup,然后设置串口设备(例如 /dev/ttyS0)和波特率等参数。保存并退出配置菜单。

  2. 启动 minicom

    bash 复制代码
    minicom

使用 cu 命令

cu 是另一个串口通信工具,通常与 uucp 包一起安装。

  1. 安装 uucp(如果尚未安装):

    bash 复制代码
    sudo apt-get install uucp  # 对于Debian/Ubuntu系统  sudo yum install uucp      # 对于CentOS/RHEL系统
  2. 使用 cu 连接串口并打印数据:

    bash 复制代码
    cu -l /dev/ttyS0 -s 9600

    连接成功后,你可以看到串口接收到的数据。要退出,通常可以使用 ~.(即波浪号加句点)。

使用 Python 脚本

你也可以使用Python编写脚本来读取和打印串口数据。以下是一个简单的示例,使用 pyserial 库:

  1. 安装 pyserial

    bash 复制代码
    pip install pyserial
  2. 编写并运行Python脚本:

    python 复制代码
    import serial   ser = serial.Serial('/dev/ttyS0', 9600, timeout=1)   while True:      if ser.in_waiting > 0:          data = ser.readline().decode('utf-8').rstrip()          print(data)

注意事项

  1. 权限 :访问串口设备通常需要超级用户权限。你可以使用 sudo 提升权限,或者将当前用户添加到 dialout 组(或其他管理串口设备的组):

    bash 复制代码
    sudo usermod -aG dialout $USER  newgrp dialout  # 重新登录或执行这个命令以应用组更改
  2. 设备路径 :不同的Linux发行版和硬件设置可能会使用不同的设备路径(例如 /dev/ttyUSB0)。使用 dmesg 命令或 ls /dev/tty* 可以帮助你找到正确的设备路径。

相关推荐
YuMiao9 小时前
gstatic连接问题导致Google Gemini / Studio页面乱码或图标缺失问题
服务器·网络协议
chlk1231 天前
Linux文件权限完全图解:读懂 ls -l 和 chmod 755 背后的秘密
linux·操作系统
舒一笑1 天前
Ubuntu系统安装CodeX出现问题
linux·后端
改一下配置文件1 天前
Ubuntu24.04安装NVIDIA驱动完整指南(含Secure Boot解决方案)
linux
碳基沙盒1 天前
OpenClaw 多 Agent 配置实战指南
运维
深紫色的三北六号2 天前
Linux 服务器磁盘扩容与目录迁移:rsync + bind mount 实现服务无感迁移(无需修改配置)
linux·扩容·服务迁移
SudosuBash2 天前
[CS:APP 3e] 关于对 第 12 章 读/写者的一点思考和题解 (作业 12.19,12.20,12.21)
linux·并发·操作系统(os)
哈基咪怎么可能是AI2 天前
为什么我就想要「线性历史 + Signed Commits」GitHub 却把我当猴耍 🤬🎙️
linux·github
十日十行3 天前
Linux和window共享文件夹
linux
Sinclair3 天前
简单几步,安卓手机秒变服务器,安装 CMS 程序
android·服务器