Ubuntu 16.04下CH340 USB转TTL串口驱动安装与Minicom配置实战 1. 硬件识别与驱动准备第一次在Ubuntu 16.04上使用CH340模块时我盯着那个小小的USB转TTL模块发愁——系统居然识别不出来后来才发现旧版Ubuntu的内核驱动对CH340支持并不完善。先别急着插设备咱们得做好准备工作。首先把模块插入USB口打开终端输入lsusb。如果看到类似1a86:7523 QinHeng Electronics CH340 serial converter的信息说明硬件已被识别但可能缺少驱动。这时候再输入dmesg | grep tty如果出现ch341-uart converter now attached to ttyUSB0的提示恭喜你系统已经识别了设备。不过根据我的经验这种情况在Ubuntu 16.04上很少见大多数时候我们需要手动安装驱动。建议先检查系统现有驱动情况lsmod | grep usbserial modinfo ch341 2/dev/null || echo 未安装CH340驱动如果输出显示已加载ch341驱动建议先卸载旧驱动sudo rmmod ch341 sudo rm /lib/modules/$(uname -r)/kernel/drivers/usb/serial/ch341.ko2. 驱动编译安装实战从官网下载的CH340驱动包CH341SER_LINUX.ZIP解压后你会看到Makefile和几个.c文件。直接make可能会遇到各种错误我踩过的坑可以帮你省时间。第一次编译时最常见的错误是关于wait_queue_t的error: unknown type name wait_queue_t解决方法是用文本编辑器打开ch34x.c文件找到wait_queue_t定义处通常只有一行直接注释掉这行在文件开头添加#include linux/sched/signal.h修改后保存重新编译make clean make编译成功后依次执行sudo make load # 临时加载驱动 sudo cp ch341.ko /lib/modules/$(uname -r)/kernel/drivers/usb/serial/ sudo depmod -a # 更新模块依赖关系这时候再插拔USB模块用dmesg查看系统日志应该能看到设备成功挂载到ttyUSB0的消息。3. Minicom配置详解驱动搞定后串口终端软件的选择很重要。Minicom虽然界面复古但在稳定性上完胜其他工具。安装命令很简单sudo apt update sudo apt install minicom配置环节才是重点运行sudo minicom -s进入配置界面选择Serial port setup按A键设置设备路径通常是/dev/ttyUSB0按E键设置波特率嵌入式设备常用115200按F键关闭硬件流控多数情况需要关闭这里有个细节容易忽略普通用户默认没有串口设备访问权限。建议将用户加入dialout组sudo usermod -aG dialout $USER需要注销重新登录才能生效。配置保存后我习惯创建快捷配置minicom -D /dev/ttyUSB0 -b 115200可以把这个命令写成别名加到.bashrc里下次直接输入minicom-ch340就能连接。4. 常见问题排查手册实际使用中总会遇到各种问题我把典型故障现象和解决方法整理如下现象1设备权限不足minicom: cannot open /dev/ttyUSB0: Permission denied解决方法sudo chmod 666 /dev/ttyUSB0 # 临时方案 # 永久方案是修改udev规则 echo KERNELttyUSB*, MODE0666 | sudo tee /etc/udev/rules.d/50-ch340.rules sudo udevadm control --reload-rules现象2波特率不匹配接收到的全是乱码说明波特率设置错误。建议尝试这些常用波特率9600老设备常用115200现代设备主流57600Arduino默认38400部分工业设备现象3设备突然断开可能是USB供电不足导致可以换用带电源的USB Hub缩短USB线长度检查模块上是否有跳线需要设置最后提醒一点Ubuntu 16.04的内核版本较旧如果遇到无法解决的问题可以考虑升级到18.04 LTS。不过对于必须使用16.04的环境按照本文的方法应该能解决绝大多数CH340的使用问题。记得每次内核更新后可能需要重新编译驱动建议把驱动源码包保存在固定位置方便后续使用。