IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> 使用CLion+stm32cubmx替代keil实现stm32F103点亮 LED -> 正文阅读

[嵌入式]使用CLion+stm32cubmx替代keil实现stm32F103点亮 LED


一. 环境(windows下)

环境搭建挺简单的,有的以前装过,这里就不演示了

clion:CLion: A Cross-Platform IDE for C and C++ by JetBrains

CLion 是 JetBrains 推出的全新的 C/C++ 跨平台集成开发环境。与vscode类似

arm-none-eabi-gcc:GNU Toolchain | GNU Arm Embedded Toolchain Downloads – Arm Developer

用来编译stm32程序的交叉编译工具链

mingw:(对于最新版的clion,这似乎是个可选的)
MinGW-w64 - for 32 and 64 bit Windows - Browse /Toolchains targetting Win64/Personal Builds/mingw-builds at SourceForge.net

gcc/g++工具,用来编译调试C/C++的

OpenOCD:Download OpenOCD for Windows (gnutoolchains.com)

用来下载程序和调试程序

检测安装是否成功:(需要添加环境变量)

添加变量就是在高级系统设置的环境变量中,用户变量和系统变量选一个,将要添加的路径添加到path中即可。
添加到用户变量的path就是只能在当前用户中有效,系统变量就是全部用户都有效。

  • gcc -v :检测mingw
  • arm-none-eabi-gcc -v
  • openocd -v

gcc是我以前装过的

image-20211215123444371
image-20211215123621355
image-20211215124611080

二. 使用clion创建工程

1. 新建工程

image-20211215125902837

2. 选择使用stmcubmx创建工程

工程位置路径这里不能有数字及空格(这是个错误示范)

image-20211215130544270
如果出现上图中找不到的情况,选择自己安装的路径即可。
在这里插入图片描述

工程位置路径这里不能有数字及空格,换个路径

image-20211215131120296
新的路径如下
image-20211215131253764

3. 编译器配置

点击创建工程后,等待一会就会弹出下方页面。

如果没有出现,菜单栏点击 file-> setting->toolchains 即可

我们需要将 debugger 选择 arm-none-eabi-gcc 路径下bin文件夹中的arm-none-eabi-gdb.exe,其它可以不变

image-20211215131849922

4. 打开stm32cubmx

image-20211215132305979

5. stm32cubmx创建自己的工程

stm32cubmx的其余配置,详情参考本人另一篇博客

STM32F103 + STM32CubeMX实现流水灯闪烁_diyu-CSDN博客

这次只是实现led闪烁,所以只使用了端口A0

据图可以重新选择自己的芯片

image-20211215132539698

这里不同。project name建议和之间clion选择的工程文件名一样,因为之前clion会创建一个同名的 ioc文件

image-20211215170607358

因为工程文件名和之前clion选择的一样,选择yes覆盖掉就好

image-20211215170737983

出现警告,这是以后的stm32cubmx即将不支持 SW4STM32。点击yes即可。

image-20211215161445071

6. 配置 CLion 工程文件

回到 CLion,等待一会儿就可以看到出现了如下界面,选择合适的文件或者自行配置

如果回到 CLion并且等待了之后没有出现如下界面,那是你上一步生成 CubeMX 工程的时候,文件命名和目录选择与之前在clion中的不同导致的,只需要重新在 CLion 打开你生成的 CubeMX 工程文件即可。

如果你使用串口烧录程序,可以不管这个,直接关闭即可。

image-20211215172052518

我这里选择 st_nucleo_f103rb.cfg

你可以参考网上自行配置此文件。

image-20211215174449161

7. 添加代码

在core/src/main.c 中添加代码

前面stmcubumx创建工程 选择端口时,我这次只选择了 A0

HAL_GPIO_WritePin(GPIOA, GPIO_PIN_0, GPIO_PIN_SET);
HAL_Delay(500);
HAL_GPIO_WritePin(GPIOA, GPIO_PIN_0, GPIO_PIN_RESET);
HAL_Delay(500);

image-20211215172641925

8. 编译代码

点击右上角小锤子即可

如果你使用串口烧录,这样就可以了,如果你要使用stlink进行下载程序,请查看下一节

生成的 hex文件在 cmake-build-debug文件夹下

image-20211215173127154

9. 番外

如果你使用串口烧录,不用管这个,如果你要使用stlink进行下载程序,请注意

打开前面选择的cfg文件注释掉最后一行

image-20211215174819263

第 4 行是选了连接方式是 stlink
第 6 行是选择 swd 通信模式
第 8 行是选择 stm32f1x 的配置文件
第 10 行是选择重启模式,

在重新编译即可。

三. 最终效果

image-20211215175531262

led

四. 总结

总体而言,还是很简单,因为以前自己都搞过类似的。clion这个软件还是挺不错的,不过我还是比较喜欢vscode,因为习惯了,且vscode较简洁。

五. 参考链接

CLion2021 的详细安装并基于 CLion 实现 stm32F103 点亮 LED_L-GRAZY的博客-CSDN博客

基于clion下与stm32cubemx点亮LED_Laul Ken-Yi的博客-CSDN博客

  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2021-12-16 17:50:31  更:2021-12-16 17:51:34 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/27 10:39:48-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码