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. AI五子棋_09 消息循环实现自动对局

    AI五子棋 第九步 恭喜你到达第九步! 上一步我们已经完成了一个AI大脑的最核心功能.我们可以用它来对战了. 访问服务器 http://202.207.12.156:9012/join_game,会返 ...

  2. redis的CPA三进二原则

    CAP C:consistency,数据在多个副本中能保持一致的状态. A:Availability,整个系统在任何时刻都能提供可用的服务,通常达到99.99%四个九可以称为高可用 P:Partiti ...

  3. php日志分割

    为了方便查看php错误日志信息,将php的日志按照时间进行分割,器脚本如下 phpPid='/usr/local/webserver/php-5.3.27/var/run/php-fpm.pid' p ...

  4. 0基础读顶会论文—Kappa:一种用于无服务器计算的编程框架

    原文链接 代码:快速使用kappa 首先的首先,可以先去了解一下lambda架构 Abstract 在本文中提出了Kappa,一个简化无服务器开发的框架.它使用检查点来处理lambda函数超时,并提供 ...

  5. 【问题解决】java.lang.SecurityException: JCE cannot authenticate the provider BC

    问题复现 历史项目升级JDK(由1.7升级到8),进行加密/解密时出现报错java.lang.SecurityException: JCE cannot authenticate the provid ...

  6. 基于常量值提取浅析elf文件结构

    Elf(可执行和可链接文件)是一个永远也绕不开的话题,只要我们还在使用安卓手机/linux服务器,我们就需要了解elf的一些方方面面,现在就让我们从一个常量值提取的小需求出发,逐步解析elf文件结构吧 ...

  7. 根据docker镜像反推dockerfile

    Dockerfile 是一个文本文件,其中包含我们为了构建 Docker 镜像而手动执行的所有命令. Docker 可以从 Dockerfile 中读取指令来自动构建镜像.我们可以使用 docker ...

  8. 两个新出的 JavaScript 运算符

    在 ECMAScript 2021(ES12)中,JavaScript 引入了新的逻辑赋值操作符 &&= 和 ??=.这些操作符将逻辑运算符与赋值运算符相结合,提供了更加简洁.直观的赋 ...

  9. 1、oracle实例、软件、库简单讲解

    oracle的基本结构 oracle软件(RDBMS) oracle软件:关系型数据库管理系统 在linux系统上,oracle软件安装在:/u01/app/oracle这个目录下 oracle数据库 ...

  10. Redis中的分布式锁(步步为营)

    分布式锁 概述 分布式锁指的是,所有服务中的所有线程都去获取同一把锁,但只有一个线程可以成功的获得锁,其他没有获得锁的线程必须全部等待,直到持有锁的线程释放锁. 分布式锁是可以跨越多个实例,多个进程的 ...