跳到主要内容

Clion开发STM32

提示

需要使用STM32CubeMX生成工程代码,可阅读安装STM32CubeMX 🔗

安装编译环境

CLion自带了编译环境(CMake、GDB等),但对于STM32的交叉编译环境还需要我们自己安装:ArmGCC用于代码编译,OpenOCD用于烧录和调试。

1️⃣ OpenOCD与ArmGCC

一、下载解压交叉编译环境压缩包

立即下载

点击上方按钮下载我们为您准备的交叉编译环境压缩包

建议您建立一个专门用于防止编译环境的文件夹, 比如 D:\DevEnv,然后将下载的压缩包解压到该文件夹下

注意

注意路径中不能包含中文字符

环境1

二、给GCC设置环境变量

方式一:自动设置(推荐)

解压后,双击 install.bat 文件,双击运行即可自动设置环境变量

自动安装
方式二:手动设置

在Windows搜索栏中输入“环境”,打开环境变量设置

环境2

点“环境变量”

环境3

选中“Path”,点“编辑”

环境4

将刚刚解压出来的ArmGCC的bin目录添加进Path变量,比如我的是 C:\DevEnv\GNU-tools-for-STM32\bin

环境5

确定、确定、确定

环境6
提示

CLion需在设置完成后重启,才能读取到新设置的环境变量

2️⃣ 使用CubeMX创建工程

点击“ACCESS TO MCU SELECTOR”

创建1

搜索、选择你要使用的芯片,比如我这里选择STM32F103C8T6,然后点击“Start Project”

创建2

按照你的需求对芯片进行配置

创建3

切换到“Project Manager”选项卡,填写项目名称,选择项目路径(路径中不要有中文字符)

选择Toolchain/IDE为“CMake”,然后点击“Generate Code”生成代码

创建4

生成代码后,在Clion中打开刚刚生成代码的文件夹

导入1

可能会弹出如下提示,都勾选上,点信任就好

导入2

第一次打开项目会弹框选择工具链,使用默认工具链就好,点下一步

导入3

取消默认Debug配置,切换到Debug-Debug预设配置文件

导入4
导入5

若此时出现报错,参考:新工程CMake解析失败 🔗

若显示如下内容,说明CMake项目加载成功

导入7

这下就可以愉快地编写代码了

编写代码

点击右上角的小锤子按钮可以对代码进行编译

编译烧录调试

若此时出现编译错误,参考:2.新工程编译报错 🔗

若出现如下图的信息,说明代码编译成功!

编译成功

3️⃣ 配置OpenOCD

第一次使用OpenOCD进行烧录时,要先告诉CLion OpenOCD的路径

如下图打开相应配置,将openocd.exe的路径设置进去

打开设置
设置OpenOCD路径

随后我们还需要为项目设置OpenOCD的配置

如下图所示,编辑配置

打开编辑配置

点击左上角的“+”号,选择“OpenOCD下载并运行”添加OpenOCD配置

添加OpenOCD配置

选择可执行二进制文件

选择可执行二进制文件

然后还要根据你使用的调试器以及芯片型号,选择对应的配置文件,如果你与我一样使用的是ST-Link调试器,芯片是STM32F103C8T6,那么可以选择我在DevEnv中写好的stm32f1_stlink.cfg文件

OpenOCD选择Config

stm32f1_stlink.cfg的文件内容为:

source [find interface/stlink.cfg]
source [find target/stm32f1x.cfg]
reset_config none

若你使用其他的调试器或者芯片型号,可以到OpenOCD的interface与target文件夹中,找到相应的型号进行修改

OpenOCD寻找cfg文件

若出现如下图的信息,说明代码下载成功!

OpenOCD下载成功

若出现如下图的报错,说明没有安装STLink驱动,或者驱动安装不正确,按照安装STLink驱动 🔗进行安装即可

未安装STLink驱动