Linux Debian下STM32CubeProgrammer串口连接失败解决方案

Linux Debian下STM32CubeProgrammer串口连接失败解决方案

主流 Linux 发行版(包括 Debian)默认集成了 CH341所需的驱动, Linux 内核中对应的驱动模块名称是 CH341。这个驱动同时兼容 CH340、CH341 等系列芯片。Linux Debian13系统使用USB转TTL串口模块,STM32CubeProgrammer连接STM32F103C8T6开发板,提示连接串口失败,虽然打开命令终端运行ls /dev/ttyUSB*,出现ttyUSB0串口

bash 复制代码
debian@debian:~$ ls /dev/ttyUSB*
/dev/ttyUSB0

但是连接串口失败,执行下面命令,临时才能连接成功,

bash 复制代码
dabian@debian:~$ sudo chmod 666 /dev/ttyUSB0

sudo chmod 666 虽然能立刻解决问题,但它只是临时修改了当前这次插入的 /dev/ttyUSB0 文件的权限,一旦你拔掉 USB 转串口模块再重新插上,设备节点会被重新创建,权限又会恢复原样。

要一劳永逸地解决,核心是让你的用户账户拥有访问串口设备的权限。


方案:将用户加入 dialout 组(推荐,最标准)

Debian 系统默认将串口设备(如 /dev/ttyUSB0)的所有者设为 root,所属组设为 dialout,并且组权限通常是可读写的。你只需要把自己加入这个组即可。

  1. 执行添加命令:

    bash 复制代码
    sudo usermod -a -G dialout $USER

    $USER 会自动替换为你的当前用户名。

  2. 使更改生效 :

    这一点非常关键,需要直接重启电脑。

  3. 验证 :

    重新登录后,可以运行 groups 命令,确认输出中包含 dialout。之后你直接运行 STM32CubeProgrammer 连接 /dev/ttyUSB0 应该就不会再报权限错误了。


相关推荐
深圳老胡1 小时前
C语言实现C++面向对象程序设计示例
笔记·stm32·单片机·代码规范
LCG米1 小时前
STM32时钟树配置实测:HSE起振失败回退HSI、PLL分频倍频计算与Flash等待周期陷阱
stm32·单片机·嵌入式硬件·嵌入式
远方16092 小时前
108-ORA-00600 [kdsgrp1-qetlbr] 内部错误排查与 RMAN 块级恢复
大数据·linux·数据库·oracle
yunwei372 小时前
eBPF 实例教程:BPF 动态指针处理可变长度数据
linux·后端·性能优化
巴巴媛6662 小时前
【Debug1】程序死机,while(1)循环,怎么办?
c语言·笔记·stm32·嵌入式硬件·bug
TDTC_XQ2 小时前
模板类的写法
linux·c++
Lxx_Zw2 小时前
PID 用顺了,然后呢:增强手术与前馈
c语言·stm32·单片机·嵌入式硬件
帷幕落秋3 小时前
经典命令场景与软硬链接
linux·运维
CCCCCCCCharlie3 小时前
深入解析I/O底层:文件描述符与缓冲区真相
linux·开发语言·c++·算法