minicom 是 Linux 系统下极为经典的串口通信工具,其配置核心可以总结为一句话:通过 minicom -s 进入配置菜单,完成串口设备、波特率、硬件流控三大核心参数的设定,保存为默认配置后即可实现即插即用的串口调试,本文将从零开始,系统讲解 minicom 的安装、参数配置、脚本化自动操作及常见故障排查,帮助你在嵌入式开发和网络设备调试中彻底摆脱“连不上、乱码、断线”的困扰。
minicom 的安装与初次启动
在绝大多数主流 Linux 发行版中,minicom 均可通过包管理器直接安装。
- Debian/Ubuntu 系:
sudo apt-get install minicom - RHEL/CentOS 系:
sudo yum install minicom - Arch Linux:
sudo pacman -S minicom
安装完成后,不要直接运行 minicom,否则可能因为缺少配置文件而提示无法打开设备,正确的做法是运行 sudo minicom -s 进入配置模式,此时会看到蓝色背景的设置菜单,这是整个配置流程的入口。
核心参数配置详解
运行 minicom -s 后,选择 “Serial port setup” 选项,你会看到一串以字母为快捷键的配置项,这是最重要的一步。
- A 项(Serial Device):默认是
/dev/modem,必须修改为你实际的串口设备,对于 USB 转串口,一般为/dev/ttyUSB0或/dev/ttyUSB1;对于板载串口,一般为/dev/ttyS0到/dev/ttyS3,可以根据dmesg | grep tty的输出确认插上 USB 转串口后识别到了哪个设备。 - E 项(Bps/Par/Bits):设置波特率、校验位和数据位,按
E键进入子菜单,选择对应的波特率(通常是 115200 或 9600),无校验(None),数据位 8 位,停止位 1 位,即
8N1
标准,这也是绝大多数网络设备和开发板的默认格式。 - F 项(Hardware Flow Control):务必设置为 No,硬件流控(RTS/CTS)在直连设备调试时极易造成数据发送不出去,是新手最常踩的坑。
- G 项(Software Flow Control):同样设置为 No。
设置完毕后,按 Enter 返回主菜单,然后选择 “Save setup as dfl” 将当前配置保存为默认配置,之后直接运行 minicom 即可自动加载。
高效使用技巧
配置好基础参数只是第一步,minicom 的实用功能远不止于此。
退出与终端复位
退出 minicom 的快捷键是 Ctrl+A 然后按 X,这是一个两步操作,新手容易直接按 Ctrl+C 结果发现没有任何反应,当串口数据出现乱码或屏幕显示错乱时,按 Ctrl+A 然后按 L 可以清屏并复位终端,比断开重连更高效。
收发文件
minicom 内置了 Zmodem 协议支持,在嵌入式开发中,如果需要将编译好的固件通过串口传给开发板,可以在 minicom 中按 Ctrl+A 然后按 S,选择 zmodem 再浏览本地文件发送,接收文件时,需要在开发板端运行 rz 命令,然后按 Ctrl+A 然后按 R 触发接收。这个功能在局域网不可用或 SSH 未配置时,是传输小文件最快捷的通道。
自动记录日志
用 minicom -C log.txt 启动,minicom 会将所有串口输入输出实时写入该文件,此方法在调试设备启动日志时非常有用,可以避免因为终端缓冲区有限导致日志被冲掉的尴尬情况。
非交互式发送指令
在通过脚本或定时任务调用串口指令时,可以直接使用管道或者

-S 脚本参数。
echo "reboot" > /dev/ttyUSB0
但这种方式无法处理回显和时序,更理想的方案是编写 minicom 脚本,利用 -S scriptname 执行预定义的发送和等待操作,实现自动化的设备批量测试。
基于酷番云服务器的远端串口调试实战案例
minicom 通常运行在本地物理机上,但有时候你的 PC 和开发板并不在同一个物理位置,基于酷番云的云服务器,结合 ser2net 或 socat,可以轻松构建一条 “云端到串口”的安全隧道。
具体方案如下:
- 在本地机房或实验室中的一台 ARM 开发板上,外接一个 USB 转串口模块连接目标硬件设备,然后在这台开发板上运行
ser2net,并将串口/dev/ttyUSB0映射到 TCP 端口3333。 - 在 酷番云服务器 上通过
socat将 TCP 端口转发到另一个远程端口,或直接暴露给可信内网。 - 你出差在外时,只需要 SSH 登录到酷番云服务器,执行
minicom -D tcp://localhost:3333,即可直接操作远在千里之外的串口设备。
该方案的价值在于:彻底摆脱了物理距离限制,且云端服务器拥有固定的公网 IP,配合安全组策略可以做到比本地直连更强的访问控制,我们在实际操作中遇到过某些型号的 USB 转串口芯片在长时间开串口后会出现假死状态,通过在酷番云侧部署一个定时巡检脚本,每 5 分钟尝试发送一个换行符检测设备响应,无响应则自动 reset 本地开发板的 USB HUB,稳定性显著提升,人工介入频率下降了 90% 以上。
常见问题排查
提示 “Cannot open /dev/ttyUSB0: No such file or directory”
首先确认设备是否已插好,执行 ls /dev/ttyUSB 查看是否存在,如果设备存在但提示权限不足,将当前用户加入

dialout 组:sudo usermod -a -G dialout 用户名,然后重新登录终端。
出现乱码
乱码的 90% 原因是波特率不匹配,确认双方波特率一致,其次检查校验位和数据位,少数情况是 G 项软件流控被开启,串口数据流中混入了 XON/XOFF 控制字符。
进入 minicom 后输入无反应
检查 F 项 Hardware Flow Control 是否关闭,如果硬件连接了 RTS/CTS 线,但设备端不支持流控,发送方会一直等待 CTS 信号导致数据发出不去。
退出 minicom 后串口被占用
minicom 异常退出时可能没释放串口设备,执行 sudo fuser -k /dev/ttyUSB0 即可强制释放。
相关问答
问:minicom 和 screen 命令配置串口有什么区别,哪个更好用?
答:两者在底层都是直接操作终端设备文件,但设计理念不同。minicom 是专门的串口通信软件,提供了菜单化配置、日志记录、文件传输等丰富功能;screen 本质上是一个终端复用器,它的优势在于内置了串口支持,启动极其迅速(如 screen /dev/ttyUSB0 115200),并且支持多窗口切换,如果只是临时查看串口输出,screen 更轻量,但对于需要交互式传输文件、保存多套不同设备的配置文件场景,minicom 的体验明显更好。
问:使用 minicom 连接设备时,设备端需要额外安装驱动吗?
答:不需要,minicom 运行在宿主机上,它直接通过系统的 TTY 设备文件与串口通信,设备端只需要遵循标准的串口协议即可,例如采用 USB 转 TTL 模块连接开发板的 UART 引脚时,开发板上运行的是 Linux 或者 RTOS,都不需要理会 minicom 的存在,唯一需要做的是在宿主机上确认 USB 转串口芯片(如 CP2102、CH340、FT232)驱动已加载,多数现代内核已内置这些驱动。
图片来源于AI模型,如侵权请联系管理员。作者:酷小编,如若转载,请注明出处:https://www.kufanyun.com/ask/740027.html

