1. 串口调试:为什么你需要minicom和stty这对黄金搭档?
如果你玩过嵌入式开发,或者捣鼓过树莓派、鲁班猫这类板卡,那你肯定没少跟串口打交道。在Linux世界里,串口调试就像家常便饭,但新手常常会一头雾水:为什么我用echo发送的数据,对方收到的全是乱码?为什么我这边敲键盘,接收端会莫名其妙多出一堆字符?这些问题,其实都源于串口默认配置的“小脾气”。
很多朋友一开始会直接用stty、echo、cat这套原生组合拳。比如,用echo "hello" > /dev/ttyUSB0发送,用cat /dev/ttyUSB0接收。这方法确实快,但踩坑的几率也高。最常见的就是“回显干扰”和“换行乱码”。默认情况下,终端会把你的输入字符“回显”出来,这个回显内容也会被当成数据发送出去。更头疼的是,Linux默认会把换行符\n转换成回车换行\r\n,如果你的设备不认这个格式,乱码就来了。
这时候,minicom和stty就该登场了。你可以把它们理解为一对互补的搭档:stty是精准的“外科手术刀”,能直接修改串口设备的底层参数,比如关闭回显、设置原始模式,从根源上解决问题;而minicom则是一个功能齐全的“瑞士军刀”,提供了一个交互式的终端界面,让你能像聊天一样收发数据,还能保存配置、记录日志,特别适合长时间的调试会话。把它们结合起来用,你就能在灵活性和稳定性之间找到最佳平衡点。我自己的经验是,在确定硬件连接没问题后,先用stty把串口的基础参数(波特率、回显等)调好,再用minicom进行实际的交互测试,效率会高很多。
2. 环境准备:快速找到并配置你的串口
2.1 识别你的串口设备
第一步,你得知道你的串口在系统里叫什么名字。在Linux下,串口设备文件通常躺在/dev目录下。最常见的有两类:
- 硬件串口:名字像
/dev/ttyS0、/dev/ttyS1,对应主板上的COM口。 - USB转串口:名字像
/dev/ttyUSB0、/dev/ttyACM0,当你插上USB转串口线时就会出现。
打开终端,用ls命令看一眼就清楚了:
ls -l /dev/ttyS* /dev/ttyUSB*
如果看到类似crw-rw---- 1 root dialout 4, 64 ... /dev/ttyUSB0的输出,就说明设备识别了。注意看权限,普通用户可能不在dialout组,直接操作会报“Permission denied”。临时解决可以加sudo,或者用sudo usermod -aG dialout $USER命令把自己加到dialout组(需要注销重登录生效)。
2.2 安装minicom
大多数Linux发行版默认没装minicom。在Debian/Ubuntu系上,安装就是一行命令的事:
sudo apt update
sudo apt install minicom
对于CentOS/RHEL系,用yum或dnf:
sudo yum install minicom
安装好


888

被折叠的 条评论
为什么被折叠?



