当前位置: 首页 > news >正文

树莓派串口调试与 minicom 离线安装全攻略

前言

在使用树莓派进行机器人、嵌入式开发时,串口调试是最常用的手段之一。无论是连接 IMU、深度计,还是与下位机通信,我们都离不开像minicom这样的串口调试工具。然而,很多场景下树莓派可能无法连接互联网(比如在水下机器人、野外机器人中),此时如何离线安装minicom就成了一个棘手的问题。本文将从基础开始,详细讲解如何查看树莓派串口信息、minicom的常规安装与使用,以及在无网络环境下离线安装minicom的完整步骤,同时补充查看系统架构和使用cd命令的小技巧。


一、查看树莓派的串口信息

在连接串口设备(如 USB 转 TTL、RS232/485 模块)后,首先需要确认系统是否正确识别了设备,并找出对应的设备文件(如/dev/ttyUSB0)。

1. 查看可用串口设备

方法1:查看/dev/serial符号链接(推荐)

bash

ls -l /dev/serial*

树莓派系统会自动维护/dev/serial目录,其中by-idby-path会给出更明确的设备标识。

方法2:列出所有 tty 设备

bash

ls -l /dev/tty*

重点关注ttyUSB0ttyACM0ttyAMA0(板载串口)等。

方法3:使用 dmesg 查看内核日志(插拔设备时)

bash

dmesg | grep tty

当插入 USB 转串口模块时,会看到类似cp210x converter now attached to ttyUSB0的信息,直接告诉你设备名。

2. 查看串口配置与权限

查看串口参数(波特率、数据位等)

bash

stty -F /dev/ttyUSB0 -a
解决权限不足问题

如果运行程序时提示Permission denied,需要将当前用户加入dialout组:

bash

sudo usermod -a -G dialout $USER # 然后注销并重新登录,或重启

二、minicom 调试工具介绍与在线安装

minicom是 Linux 下最经典的命令行串口调试工具,功能强大、资源占用低,非常适合在树莓派上使用。

1. 在线安装(树莓派已联网)

bash

sudo apt update sudo apt install minicom -y

2. 基本配置与使用

首次配置

bash

sudo minicom -s

进入配置菜单后:

  • 选择Serial port setup

  • A修改串口设备,如/dev/ttyUSB0

  • E修改波特率(例如115200 8N1

  • 将硬件流控(Hardware Flow Control)设为No

  • Enter返回,选择Save setup as dfl,再选择Exit

快速启动

bash

sudo minicom -D /dev/ttyUSB0 -b 115200
常用快捷键(先按Ctrl+A,再按功能键)
  • Ctrl+AZ:帮助菜单

  • Ctrl+AX:退出 minicom

  • Ctrl+AE:开启本地回显(解决输入看不见的问题)

  • Ctrl+AC:清屏

  • Ctrl+AL:将输出保存到文件

退出

Ctrl+AX→ 按Y确认。


三、树莓派无网络环境下离线安装 minicom

如果你的树莓派无法联网(如 Raspberry Pi OS bullseye 11),可以通过另一台有网络的电脑下载安装包,然后拷贝到树莓派进行手动安装。

1. 查看树莓派系统架构(32位还是64位)

这一步非常重要,因为需要下载对应架构的.deb软件包。

bash

# 方法1:查看内核架构 uname -m # armv7l -> 32位; aarch64 -> 64位 # 方法2:查看用户空间位数 getconf LONG_BIT # 输出 32 或 64 # 方法3:查看软件包架构(最准确) dpkg --print-architecture # armhf -> 32位; arm64 -> 64位

2. 在有网络的电脑上下载 minicom 及其依赖包

以下操作在联想电脑(Ubuntu 20.04 虚拟机)上执行。

方法一:直接下载单个 .deb 文件(简单,但可能缺依赖)

打开浏览器访问 Raspbian 官方镜像站:

text

https://ftp.ubuntu-tw.net/mirror/mirror/raspbian/raspbian/pool/main/m/minicom/

根据上一步查到的架构选择:

  • 32位:minicom_2.8-2_armhf.deb

  • 64位:minicom_2.10-1_arm64.deb

方法二:使用 apt 下载所有依赖(推荐,避免依赖缺失)

bash

# 创建目录 mkdir ~/minicom-offline-packages cd ~/minicom-offline-packages # 下载 minicom 及其所有递归依赖 apt-get download $(apt-cache depends --recurse --no-recommends --no-suggests --no-conflicts --no-breaks --no-replaces --no-enhances minicom | grep "^\w" | sort -u)

执行后会下载多个.deb文件,包含minicom及其依赖。

3. 将文件传输到树莓派

  • 使用 U 盘:将下载好的.deb文件复制到 U 盘,插入树莓派。

  • 或者使用 scp(如果树莓派和电脑之间可以临时组网):
    scp *.deb pi@树莓派IP:~/

4. 在树莓派上安装

进入存放 .deb 文件的目录

假设 U 盘挂载在/media/pi/USB,则:

bash

cd /media/pi/USB

或者,如果文件在用户主目录下的minicom-packages文件夹:

bash

cd ~/minicom-packages
安装所有 .deb 包

bash

sudo dpkg -i *.deb
修复可能的依赖问题

如果提示缺少依赖,但系统中已有某些库,可以运行:

bash

sudo apt-get install -f

注意:apt-get install -f会尝试修复依赖关系,若仍需某些包,则说明下载的依赖包不全,请返回第2步利用apt-get download补全。

5. 验证安装

bash

minicom --version

正常输出版本信息即表示安装成功。


四、附:cd 命令使用小贴士

在离线安装过程中,你需要用cd命令进入存放.deb文件的文件夹。这里总结几个常用用法:

命令说明
cd /home/pi/debs使用绝对路径进入
cd Downloads/debs使用相对路径(当前目录下)
cd ~返回当前用户的主目录
cd ..返回上一级目录
cd -返回上一次所在的目录
cd "my debs"进入包含空格的目录名(加引号)
cd my\ debs进入包含空格的目录名(反斜杠转义)

实用技巧:输入目录名的前几个字母,然后按Tab键,系统会自动补全。


五、总结

本文从实际开发需求出发,详细介绍了:

  1. 如何在树莓派上查看串口设备信息;

  2. minicom的安装、配置与常用快捷操作;

  3. 在树莓派没有网络的情况下,如何通过离线方式安装minicom,包括查看系统架构、下载正确的.deb包、传输文件、使用cd命令进入目标目录、用dpkg安装;

  4. 常用的cd命令使用技巧。

掌握这些技能后,你甚至可以在完全离线的环境下为树莓派部署串口调试环境,为后续的机器人控制、传感器数据采集等工作打下坚实基础。

希望这篇笔记对你有帮助!如果有任何问题或补充,欢迎在评论区留言交流。

http://www.jsqmd.com/news/721858/

相关文章:

  • Fluent新手避坑指南:手把手教你搞定冰块融化模拟(附VOF模型设置要点)
  • 奔驰与埃斯林根大学:时间序列修复实现AI异常检测超越复杂深度学习
  • OpenCore Configurator:黑苹果引导配置的终极图形界面工具指南
  • Vivado里用XPM例化URAM,手把手教你搞定UltraScale+ FPGA的大容量存储
  • STM32F103驱动四路直流减速电机:DRV8848硬件连接与PWM配置避坑指南
  • 基于大数据视角:“东数西算”下高质量算力的技术路径与落地实践
  • 内网渗透核心技术:内网代理从原理到实战全解析
  • 湖南顶俏商城系统制度开发(现成模式)
  • 零代码文本分析神器:5分钟掌握KH Coder的完整指南
  • Kubernetes攻防 创建 cgroup 进行容器逃逸
  • 服务器追踪线程
  • 手机OIS马达拆解:从苹果的悬丝到三星的滚珠,不同方案如何影响你的拍照体验?
  • C# 13内联数组性能真相(Stack-Only Array大揭秘):为什么.NET Runtime团队禁用常规new操作符?
  • 秘语盾技术团队解析 Ledger Nano X 蓝牙连接优化
  • 10款高效降AI率工具深度实测!(附免费优化方案) 【2026权威版】 - 殷念写论文
  • 企业网关高可用实战:当VRRP遇到BFD,如何实现毫秒级故障切换?
  • 实测英文降AI率指南:Turnitin更新后,我如何将AI率从80%降至10% - 殷念写论文
  • 别再让串口数据乱飞了!手把手教你用C语言实现一个通用的FIFO循环队列(附STM32串口收发实战代码)
  • 电视怎么选才不踩坑?2026 高端 Mini LED 电视哪台更适合你?
  • 【神经康复】| 双靶iTBS可更有效改善卒中患者步态功能与脑网络连接
  • MacBook Air M5 免费养个 AI 助手:Gemma 4 本地运行 OpenClaw 完全指南
  • 基于云模型-MABAC决策框架的冷链物流供应商选择研究附Matlab代码
  • PWME 140x8/16驱动器
  • 别再乱装图片插件了!我手写了一个,能扒光整个网页(含背景/iframe/Shadow DOM)
  • 告别手动重复:用Python+HFSS脚本实现天线仿真结果自动导出与报告生成
  • 拥有多个二次元老婆:如何在手机上设置Live2D模型为动态高清壁纸
  • C#-字符串与16进制字节数组转换
  • C# 13指针与fixed语句安全红线:5类高危模式、3层编译器防护、1套企业级审计清单
  • VirtualBrowser 2.1.15:一站式浏览器指纹管理实战指南
  • RS_ASIO:终极低延迟音频解决方案,为Rocksmith 2014带来专业级音频体验