📌 TIP
本文介绍如何在 Linux 系统下配置 STM32 开发环境,包括必要的工具安装、驱动配置、调试支持等。
📚 目录
开发环境概述
💡 测试环境说明:
- 操作系统:Ubuntu 20.04 LTS
- MCU 型号:STM32F103C8T6
- 开发工具:STM32CubeMX、CLion、STM32CubeCLT
- 调试接口:ST-Link v2
这套组合是 Linux 下开发 STM32 的主流方案,具备完全开源、可定制的特点。
安装 STM32CubeMX
⚠️ 注意:
STM32CubeMX 依赖 Java 环境,安装前请确保系统已正确配置 JDK。
STM32CubeMX 是 ST 官方提供的图形化初始化配置工具,可生成 HAL 库工程框架。
- 前往 ST 官方下载页面,下载最新版 Linux 安装包。
- 下载后解压到你想存放的位置(例如
~/Iot/
)。 - 解压后文件结构如下:
📘
Readme.html
是官方用户手册,可供参考。
-
授予安装文件执行权限并安装:
1 2
chmod +x SetupSTM32CubeMX-6.14.1 ./SetupSTM32CubeMX-6.14.1
安装过程与 Windows 类似,按照提示操作即可。
-
安装完成后界面如下:
安装 CLion
Windows 下常用 Keil 开发 STM32,本次尝试使用 JetBrains 的 CLion 进行跨平台开发,参考了 B站 UP 主 keysking 的教学视频。
- 前往 CLion 官网 下载 Linux 安装包。
-
解压后进入
~/CLion/bin
目录,运行:1
./clion
-
为方便启动,可创建桌面图标:
1
nano ~/.local/share/applications/clion.desktop
粘贴以下内容(路径请根据实际修改):
1 2 3 4 5 6 7 8 9 10
[Desktop Entry] Version=1.0 Type=Application Name=CLion Icon=/home/yourusername/apps/clion-2025.1/bin/clion.svg Exec=/home/yourusername/apps/clion-2025.1/bin/clion.sh Comment=JetBrains CLion IDE Categories=Development;IDE; Terminal=false StartupNotify=true
⚠️ 替换路径为实际安装路径,可将
.desktop
文件复制到桌面以便图形化启动。
安装工具链 STM32CubeCLT
- 在 STM32CubeMX 右下角点击 External Tools,进入 ST 官网下载 STM32CubeCLT。
-
下载并解压后,在终端执行:
1 2
chmod 777 st-stm32cubeclt_xx_amd64.sh ./st-stm32cubeclt_xx_amd64.sh
⚠️
xx
为具体版本号,例如1.18.0
,建议全屏运行安装程序避免错过条款提示。 -
安装过程中全程按
Y
同意协议,设置安装路径(如/home/xx/st/stm32cubeclt_1.18.0
)。 -
安装成功提示:
1
STM32CubeCLT installed successfully
-
插入 ST-Link V2(不接开发板),运行 CLT 目录下的
STLinkUpgrade.sh
升级调试器固件。 -
添加环境变量:
1 2
echo 'export PATH=$PATH:/home/xx/st/stm32cubeclt_1.18.0/bin' >> ~/.bashrc source ~/.bashrc
❗ 安装完成建议重启系统,否则 CLion 可能找不到
arm-none-eabi-gcc
等工具。
创建第一个工程
-
启动 CLion,选择非商业许可证。
-
选择新建 STM32 项目:
- 配置 STM32CubeMX 路径:
- 启动 CubeMX,新建项目,选择芯片(如 STM32F103C8T6):
- 配置调试接口(SW),设置 PC13 为 GPIO_Output:
- 设置工程路径:
- 配置工具链,使用 GCC 和 Ninja:
- 勾选 Reload CMake Project,确保路径生效:
- 启用调试服务器:
- 配置 ST-Link:
- 关闭持久会话以支持自动复位:
-
烧录测试(点灯):
-
点击右上角运行,左下角查看烧录日志:
- 点灯成功 🎉: