2024新版本如何配置CLion与cubeMX开发STM32

1. 为什么我要在网上有很多教程的情况下再做一个新版

各种大佬们给出的配置教程原本很详细,但是在时间过了这么久之后已经不完全符合现在的环境了。

昨天在教群里萌新安装CLION+CUBEMX时我才发现,在配置过程中新出现的一些变化甚至没有清晰的提示报错,如果没有人解释提醒的话,新人要自己解决需要折腾很久也不一定能解决。

遂决定根据自己的经验,把新的安装教程整理如下。

2.CLion的下载与“激活”

商用用户请购入正版,支持软件行业正常发展

本教程“激活”方式仅提供个人学习用途使用

2.1 下载安装

CLion官网

直接在官网下载最新版即可

安装,看得懂设置就看,看不懂就全程下一步,再不然就去用翻译软件,我没有精力把整个安装界面翻译一遍。

2.2 个人学习用途的激活

这里有三种方案

  1. JetBrains官网申请学生认证(正版合法)

    申请地址
  2. Github申请学生包(容易申请,正版合法)申请地址

在校学生建议使用前两种方案,直接在对应页面申请即可

3. 使用网络补丁+许可证激活码激活(学习版请勿用于商业)

- 下载JetBrainsCrack工具包
- 解压压缩包,双击`index.html`
- 点击上面浮动条的蓝字下载`jetbra.zip`,(点击没反应的话就直接去工具包的files文件夹里复制)PS:内附jetbra已于2024.12.1更新为Meow版,已添加中文验证服务器拦截
- 放到你想要放的地方,解压出来(这个网络补丁得一直放在那不能删所以别干出配置在桌面或者配置在下载文件夹的逆天操作来)
- 进入解压出来的文件夹,进入`script`文件夹,在`install-all-users.vbs`上右键,以管理员身份运行
- 等到运行完成后回到之前的index.html,找到CLion,点击一下下面的****复制激活码
- 运行CLion,选择`Activate CLion`->`Activation code`,在下面的框里粘贴激活码,点击Activate完成激活

3. 工具链的安装

3.1 ARM GNU Toolchain的安装

从 Arm GNU Toolchain 的新页面下载最新的

Windows (mingw-w64-i686) hosted cross toolchains

AArch32 bare-metal target (arm-none-eabi)

  • 下载exe格式的那个就行,安装时候记住自己安在哪里,一会要用

  • 安装完把完成页面的Add path to environment variable勾上!

3.2 STM32CUBEMX的安装

官网下载安装

  • 也要记住安在哪

3.3 OPENOCD的安装

Github下载,找个地方解压

  • 也要记住解压到哪!

4.CLion工具链配置

  • 打开CLion,选择左边Customize,点击右边最下面All settings
  • 弹出窗口选择左边Build, Execution, Deployment里面的Toolchains,
  • C Compiler设置为ARM GNU Toolchain安装目录下bin文件夹里的arm-none-eabi-gcc.exe
  • C++ Compiler设置为ARM GNU Toolchain安装目录下bin文件夹里的arm-none-eabi-g++.exe
  • 点击Apply应用设置
  • 还是左边Build, Execution, Deployment里面,找到Embedded Development
  • 里面的OpenOCD Location去openocd安装目录的bin文件夹找到openocd.exe
  • 里面的Stm32CubeMX Location去stm32cubemx安装目录的bin文件夹找到STM32CubeMX.exe
  • 点击Apply应用设置

5. 新建项目

  • 首先打开STM32CubeMX完成初始化配置
  • 新建项目左边选择STM32CubeMX,右边选择工程存放路径,进入后等待创建完成(此时开发板是STM32F030F4Px)
  • 用CubeMX打开ioc文件,修改为自己的单片机或开发板型号,并完成自己要配置的内容
  • 生成设置里面Project Settings要和CLion里的项目名字一致,Toolchain/IDE要选择STM32CubeIDE
  • 生成代码,完成后回到CLion

6. 编译烧录设置

  • 回到CLion后会弹出一个板卡选择框,基本上都不能用,需要自己写一个烧录配置
  • 在工程根目录下新建一个文件夹config,在里面新建一个配置文件stlink.cfg
  • 例如STM32F1单片机 + ST-Link
source [find interface/stlink.cfg]
transport select hla_swd
source [find target/stm32f1x.cfg]
adapter speed 10000
  • 又如STM32F407VET单片机(说的就是你立创天空星!)+DAP-Link
adapter driver cmsis-dap
transport select swd
set FLASH_SIZE 0x100000
source [find target/stm32f4x.cfg]
adapter speed 10000
reset_config none

之后在OPENOCD运行-配置选择这个cfg文件即可

2024新版本如何配置CLion与cubeMX开发STM32的更多相关文章

  1. 配置CLion作为Qt5开发环境

    使用Qt进行程序开发时QtCreator总是不二之选.作为老牌IDE在提供了强大的功能同时也对Qt的支持做了许多优化.如果没有特别的原因你应该使用它. 然而一个顺手的工具将会极大得提升生产效率,而如果 ...

  2. Hadoop伪分布配置与基于Eclipse开发环境搭建

    国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html内部邀请码:C8E245J (不写邀请码,没有现金送)国内私 ...

  3. 使用镜像安装cygwin、gcc并配置CLion IDE -2020.09.12

    使用镜像安装cygwin.gcc并配置CLion IDE -2020.09.12 Cygwin 官网:http://www.cygwin.com/ 下载64bit安装器,并打开选择next 尽量不要装 ...

  4. 使用EmBitz开发STM32项目的环境配置

    一.EmBitz软件获取与安装 1.EmBitz软件的获取 EmBitz原名Em::Blocks,是基于Code::Blocks开发的,面向嵌入式的C/C++集成开发环境.支持J-Link和ST-Li ...

  5. 转[开发环境配置]在Ubuntu下配置舒服的Python开发环境

    在Ubuntu下配置舒服的Python开发环境 Ubuntu 提供了一个良好的 Python 开发环境,但如果想使我们的开发效率最大化,还需要进行很多定制化的安装和配置.下面的是我们团队开发人员推荐的 ...

  6. 从头开始编写一个Orchard网上商店模块(2) - 配置您的Orchard开发环境

    原文地址:http://skywalkersoftwaredevelopment.net/blog/writing-an-orchard-webshop-module-from-scratch-par ...

  7. 通过Maven配置测试环境和开发环境连接不同的数据库

    通过Maven配置测试环境和开发环境连接不同的数据库   作者及来源: 通灵宝玉 - 博客园    收藏到→_→: 此文来自: 马开东博客 网址:http://www.makaidong.com   ...

  8. 在IntelliJ IDEA 13中配置OpenCV的Java开发环境

    准备工作: 下载IDEA 13(这里以版本13为例,后面简称IDEA): 下载Java JDK(用于配置基本的Java开发环境): 下载OpenCV 2.4.9(这里以版本2.4.9为例,据这篇文章说 ...

  9. react-native —— 在Mac上配置React Native Android开发环境排坑总结

    配置React Native Android开发环境总结 1.卸载Android Studio,在终端(terminal)执行以下命令: rm -Rf /Applications/Android\ S ...

  10. 《React Native 精解与实战》书籍连载「配置 iOS 与 Android 开发环境」

    此文是我的出版书籍<React Native 精解与实战>连载分享,此书由机械工业出版社出版,书中详解了 React Native 框架底层原理.React Native 组件布局.组件与 ...

随机推荐

  1. Discuz7.2 faq.php页面注入漏洞分析

    由于discuz在全局会对GET数组进行addslashes转义,导致该漏洞的产生. 参数问题存在于faq.php的grouppermission函数中.   具体细节访问:网易博客siberia h ...

  2. Go语言切片(Slice)的一些有趣特性

    切片类似数组的引用.更改底层数组中的元素会修改切片的元素.更改切片的元素同样会修改其底层数组中的元素,和它共享底层数组的切片都会观测到这些修改. 点击查看代码 package main import ...

  3. 5.1 Vim及其安装

    通过前面的学习我们知道,Linux 系统中"一切皆文件",因此当我们在命令行下更改文件内容时,不可避免地要用到文本编辑器. 作为一名 Linux 初学者,你必须熟练掌握 Linux ...

  4. Spring-Event入门实践及执行原理

    一.入门案例 1. 添加依赖首先,在 pom.xml 文件中添加 Spring Boot 和 Spring Event 的依赖: <dependencies> <dependency ...

  5. OpenCV开发笔记(八十二):两图拼接使用渐进色蒙版场景过渡缝隙

    前言   对于图像拼接,前面探讨了通过基于Stitcher进行拼接过渡和基于特征点进行拼接过渡,这2个过渡的方式是摄像头拍摄角度和方向不应差距太大.  对于特定的场景,本身摄像头拍摄角度差距较大,拉伸 ...

  6. frida 连接夜神模拟器

    adb connect 127.0.0.1:62001 adb devices adb forward tcp:27042 tcp:27042 adb forward tcp:27043 tcp:27 ...

  7. 【原创】PREEMPT-RT 系统cpu使用率周期CPU飙高问题

    PREEMPT-RT 系统cpu使用率周期CPU飙高问题 目录 PREEMPT-RT 系统cpu使用率周期CPU飙高问题 背景 现象 复现条件 原因 解决措施 背景 在22年进行PREEMPT-RT系 ...

  8. 推荐手绘工具神器Excalidraw素描草图风格白板,支持AI-开源免费

    推荐手绘工具神器Excalidraw素描草图风格白板,支持AI-开源免费 原创 IT软件部落 IT软件部落 Excalidraw 一个开源的虚拟手绘风格的白板,是一个很好的素描工具.它真的很容易使用, ...

  9. 记录个Java/Groovy的小问题:空字符串调用split函数返回非空数组

    问题复现 最近写了一个groovy替换程序增量流水线脚本(会Java也能看懂),示意脚本如下: //获取文件列表方法 def listFiles(folder) { def output = sh(s ...

  10. nginx防盗链接的使用

    以 local.hyperf.com为例 nginx配置文件如下 # 至少需要一个 Hyperf 节点,多个配置多行 upstream hyperf { # Hyperf HTTP Server 的 ...