测试杂文 - 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* 可以帮助你找到正确的设备路径。

相关推荐
Web3探索者11 小时前
可视化服务器管理和传统命令行区别是什么?新手教程:Linux 运维到底该用图形界面还是 SSH 命令行?
linux·ssh
zylyehuo13 小时前
Linux系统中网线与USB网络共享冲突
linux
荣--15 小时前
一键部署不是为了省时间 —— 它是把"买来的 PaaS"变成"自己的平台"的拐点
运维·zabbix·工程化·一键部署·平台化·边界设计
江华森16 小时前
动手实战学 Docker — 从零到集群编排完全指南
运维
Avan_菜菜1 天前
FRP 内网穿透完整实战:从 HTTP 映射到 HTTPS 自签代理
运维·nginx·https
Sokach10152 天前
Linux Shell 脚本从零到能用:一个新手的一天学习总结
linux
SelectDB2 天前
Litefuse 开源并推出单进程轻量模式,25 秒就能跑起来的 Agent 可观测与评估平台
运维·后端·自动化运维
AlfredZhao2 天前
Docker 容器时区不对,`timedatectl` 不存在怎么办?
linux·timezone
zzzzzz3104 天前
9K Star 炸裂开源!这个 C 语言写的代码知识图谱,把 Linux 内核索引压缩到了 3 分钟
linux·服务器·sql
XIAOHEZIcode4 天前
Linux系统鼠标偏移常见原因以及修复方案
linux·运维·游戏