CLion入门2.0(优雅进行STM32和ESP32开发)(船新版本)

CLion入门2.0(优雅进行STM32和ESP32开发)(船新版本)

image-20220713234905868

文章目录

0.前言

先偷懒抄一段自己的前言:

在正点原子和学校教学中都是教我们使用Keil进行代码编写,但是估计用过Keil的用户都会觉得这个软件的界面实在是太老了,看上去实在不是特别的舒服。之前学python接触了PyCharm这款编译器,发现JetBrains家编译器很全,也包括C的编译器CLion。搜一下发现还真有大佬将CLion配置用于STM32开发,因此就学着配了一下。

对了,假如你和笔者一样是学生,可以通过学信网的验证报告申请免费的JetBrains全家桶。笔者的CLion和PyCharm就是白嫖来的

补充一些:

JetBrains不仅支持学生认证,还支持开源开发者认证,具体如何认证都可以在CSDN上找到详细教程,此处不再赘述。

其实用了一阵Keil感觉编译尤其是调试还是很方便的,本来不打算换回CLion了(毕竟配环境实在是太痛了)。但是接触了ESP32,发现自己实在是不适应VSCode,查到CLion也可以开发ESP32,那就长痛不如短痛,直接把STM32和ESP32的环境都配好。查了查相关的资料,现在已经有很多博客讲怎么配置CLion开发STM32,怎么配置CLion开发ESP32,好像还没有人在一篇里把这俩都讲了。

这篇博客的目的就是一口气配好这两个环境,并且实现开发过程的无缝切换。

配环境是一个比较有时效性的工作,我再根据两年前写的那篇【软件入门】 CLion在工程中添加目录&新文件_clion中鼠标右键怎么设置-CSDN博客,发现已经有很多东西都变了。所以在前面声明一下:本文写于2025.01.03,写完于2025.01.08。如果间隔的时间很长,很可能会在配置过程中具体步骤有变化,但是如果你仔细思考配置的过程其实都大差不差,一定要边配边琢磨。

如果严格按照本博客的顺序配环境出了问题,可以在网上搜一搜那个报错,一般都会有解决办法。如果搜不到解决办法,可以全部卸载环境全部重装一次,有时候重装一次问题就解决了,可能是不知道在哪一步细节搞错了自己却没发现。本文的安装过程是经过二次验证的,我在配好所有环境之后又卸掉了所有环境,重新配了一遍,是没问题的(起码在我写博客的时候是没问题的)。

建议大家在选择版本时,选择当时最新的release版,如果没有特别的需求就不要选老的。尤其不要其中几个组件选老版本,几个组件选新版本,很可能会出现不能互相配合工作的情况。

1.准备工作

1.1.安装CLion

有两种方法,一种是先安装一个JetBrains Toolbox,一种是直接在官网安装CLion。推荐第一种。

下载链接:JetBrains Toolbox App: Manage Your Tools with Ease

JetBrains Toolbox可以对JetBrains家的IDE进行统一管理。软件安装一路下一步即可,唯一需要注意的是Toolbox工具安装的默认位置是C盘,需要手动改一下:

image-20250113140737074
image-20250103151536617

然后直接在Toolbox下载CLion即可,他直接会自动安装好。

如果不想用这个Toolbox,就直接下载CLion:CLion: A Cross-Platform IDE for C and C++ by JetBrains,与Toolbox一样都是一路下一步即可。

1.2.下载STM32环境依赖

注意,以下链接和版本截至2025年01月04日都是最新的,但是所有东西都在更新,请在跳转官网后下载最新的release版本,以防出现新老版本不匹配的问题。如:我一开始装的是21年更新的gcc-arm,但是使用的是最新的STM32CubeMX,导致编译报错:non constant or forward reference address expression for section .ARM.extab

1.2.1.STM32CubeMX

STM32CubeMX - STM32Cube initialization code generator - STMicroelectronics

这个软件的快速入门教程链接:【软件入门】STM32CubeMX快速入门_cubemx stm32c0-CSDN博客

这篇博客中有详细的安装和使用教程。

1.2.2.OpenOCD

Download OpenOCD for Windows (gnutoolchains.com)

先下载&解压,无需安装。

image-20250103153739313

1.2.3.MinGW

Releases · niXman/mingw-builds-binaries (github.com)

先下载&解压,无需安装。

image-20250104110802128

注意,后续版本号可能会更新,但是我们选择的都是x86_64-版本号-release-posix-seh-ucrt-rt_v12-rev0。关于这些参数,可以参考这位大佬的博客:[CLion搭建STM32开发环境(基于野火开发板STM32F103C8T6)_clion stm32-CSDN博客](https://blog.csdn.net/qq_46226142/article/details/142715291?ops_request_misc=%7B%22request%5Fid%22%3A%221103a1bb8609b3a9633f0f431a77538b%22%2C%22scm%22%3A%2220140713.130102334…%22%7D&request_id=1103a1bb8609b3a9633f0f431a77538b&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allsobaiduend~default-2-142715291-null-null.142v101pc_search_result_base2&utm_term=CLion STM32&spm=1018.2226.3001.4187),相关描述如下:

image-20250104094617428

注意,如果链接失效,可以在CLion的设置中直接点击下载跳转到最新链接:

image-20250104094749411

1.2.4.GNU Arm Embedded Toolchain

Arm GNU Toolchain Downloads – Arm Developer

先下载&解压,无需安装。往下翻,选一个zip格式的:

image-20250104103056939

1.3.下载ESP32环境依赖

1.3.1.ESP-IDF

dl.espressif.cn/dl/esp-idf/

先下载,无需安装。

image-20250103154126043

1.4.整理

建议临时放至一个文件夹中:

image-20250104104912103

并准备好这样一个路径:

image-20250106165127962

注意,这个路径需要全程没有空格、没有中文,文件夹的名字随意。以图中的文件夹为例,CLion-Environment中可以有任何其他的文件/文件夹。

如果实在下载不成功: https://pan.baidu.com/s/1gxEOqZyS7jf1nCtyD2j-0Q?pwd=hdgy 提取码: hdgy

2.实现STM32开发

2.1.配置STM32开发环境

依然参考稚晖君大佬的经典文章:配置CLion用于STM32开发【优雅の嵌入式开发】 - 知乎 (zhihu.com)

当然了,也可以直接看本篇博客,比较新一些。下面正式开始配环境。

2.1.1.配置OpenOCD

把解压好的OpenOCD文件夹复制到CLion-Environment中,具体如下:

image-20250106165215818

在系统的环境变量中加入一条:

image-20250106165345322

打开命令行,输入:

openocd -v

image-20250106165934335

说明安装成功。如果不成功,可以试试重启电脑,重新输入这行指令。

2.1.2.配置MinGW

把解压好的mingw64文件夹复制到CLion-Environment中,具体如下:

image-20250106165540579

在系统的环境变量中加入一条:

image-20250106165624317

打开命令行,输入:

gcc -v

image-20250106165718590

说明安装成功。如果不成功,可以试试重启电脑,重新输入这行指令。

2.1.3.配置gcc-arm

把解压好的arm-gnu-toolchain-14.2.rel1-mingw-w64-x86_64-arm-none-eabi文件夹复制到CLion-Environment中,具体如下:

image-20250106165744124

添加系统环境变量如下:

image-20250106165821959

打开命令行,输入:

arm-none-eabi-gcc -v

image-20250106165915233

说明安装成功。如果不成功,可以试试重启电脑,重新输入这行指令。

2.1.4.配置CLion

注意:每次设置完环境变量都必须重启CLion!

打开CLion,进入设置:

image-20250103155942159

选择嵌入式开发选项卡,配置路径,并进行测试:

image-20250106165503925

完成后点击右下角应用

新建一个MinGW工具链:

image-20250103171302653

设置如下:

image-20250106170134685

然后配置CMake:

image-20250103172841904

至此所有环境配置完成。

注意:每次设置完环境变量都必须重启CLion!

2.2.验证环境

点个灯看一下。

2.2.1.新建CLion工程

在CLion中新建项目:

image-20250104083714295

创建好后会有一个.ioc文件:

image-20250104084029577

直接双击,通过STM32CubeMX打开:

image-20250104084055393

2.2.2.配置CubeMX

默认芯片是STM32F030F4P,点击左上角更改芯片:

image-20250104084143351

配置IO、时钟的过程略,具体可以参考这篇:【软件入门】STM32CubeMX快速入门-CSDN博客

如果你使用的是H7系列,也可以参考这篇:STM32H7开发笔记(1)——H7基本配置_stm32 h7-CSDN博客

配置完IO和时钟树后,来到Project Manager,配置如下:

image-20250104101132528

路径需要一致:

image-20250104085150768

然后配置Code Generator如下:

image-20250104101408658

配置好后,点击GENERATE CODE,会提示你已经存在文件,直接覆盖即可。生成完毕后回到CLion:

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值