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. Saas多租户数据权限设计(参考RuoYi)

    导航 引子 场景梳理 基于角色的访问控制(RBAC) 多租户系统的权限设计 RuoYi系统的数据权限设计 最终设计方案 参考 本文首发<智客工坊-Saas多租户数据权限设计(参考RuoYi)&g ...

  2. HTML5+CSS3+JavaScript网页实战

    1. HTML5基础 HTML5,作为构建和呈现网页内容的标准标记语言,带来了许多革命性的变化.它不仅提供了更加语义化的标签,使得网页内容更具可读性和可访问性,还增加了对多媒体的原生支持,无需依赖第三 ...

  3. Linux基础-查看和设置环境变量

    一,查看环境变量 二,环境变量类型 三,设置环境变量 四,参考资料 一,查看环境变量 在 Linux中,环境变量是一个很重要的概念.环境变量可以由系统.用户.Shell 以及其他程序来设定,其是保存在 ...

  4. 通义灵码:体验AI编程新技能-@workspace 和 @terminal为你的编程插上一双翅膀

    1.前言 我是一位运维工程师,用通义灵码个人版的@workspace 和 @terminal 的能力做快速了解一个工程.查找工程内的实现逻辑,以及执行指令不知道如何写,或者不清楚某个指令的意思,对比之 ...

  5. .NET 实现的零部件离散型 MES+WMS 系统

    前言 随着制造业的不断发展,企业对于生产效率和管理水平的要求越来越高. EasyMES 是一款基于 .NET 6 开发的零部件离散型 MES(Manufacturing Execution Syste ...

  6. 2个月搞定计算机二级C语言——真题(7)解析

    1. 前言 本篇我们讲解2个月搞定计算机二级C语言--真题7 2. 程序填空题 2.1 题目要求 2.2 提供的代码 #include <stdio.h> int fun(char* s, ...

  7. Spark Web UI 监控详解

    Spark集群环境配置 我们有2个节点,每个节点是一个worker,每个worker上启动一个Executor,其中Driver也跑在master上.每个Executor可使用的核数为2,可用的内存为 ...

  8. 服务器漏洞修复:TLS 1.0 已启用、HSTS、CSP

    1.TLS 1.0 已启用 描述: 此 Web 服务器支持通过 TLS 1.0 加密.TLS 1.0 不被认为是"强密码术".根据 PCI 数据安全标准 3.2(.1) 的定义和要 ...

  9. 低功耗4G模组HTTP网络协议应用

    ​ 大家好,今天我们来学习合宙Air780E模组LuatOS开发4G通信中HTTP网络协议的应用,实现模组和服务器之间数据的传输. 一.HTTP概述 1.1 简介 HTTP是HyperTextTran ...

  10. 解决window.close()在谷歌浏览器不起作用

    简单明了直接上解决方法: let url = ' '; // 空字符串中间要加空格 window.open(url, '_self').close();