Clion 是一款专门开发 C 以及 C++ 所设计的跨平台的 IDE。它是以 IntelliJ 为基础设计的,包含了许多智能功能来提高开发人员的生产力。
这种强大的 IDE 帮助开发人员在 Linux、OSX 和 Windows 上来开发 C/C++ ,同时它还能使用智能编辑器来提高代码质量、自动代码重构并且深度整合 Cmake 编译系统,从而提高开发人员的工作效率。
CLion 支持 GCC、clang、MinGW、Cygwin 编译器以及 GDB 调试器。提供对 Cmake 支持:包含自动处理 Cmake changes 和 Cmake Targets,更新新创建的 C/C++ 档案以及 Cmake Cache 编辑器。
https://www.jetbrains.com/zh-cn/clion/download/#section=windows
等待下载完成后双击运行.exe
next
更改路径后,next
勾选后,next
install
完成
https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-rm/downloads
安装完后添加bin环境变量
输入arm-none-eabi-gcc -v
https://sourceforge.net/projects/mingw-w64/files/Toolchains targetting Win64/Personal Builds/mingw-builds/
解压,添加环境
进入 CLion,新建一个工程,选择存放路径,并点击建立
选择 File-Settings-Build-Toolchains,添加 MinGW,右边会自动匹配好路径信息
配置MinGW完成
https://gnutoolchains.com/arm-eabi/openocd/
解压,配置环境
选择 File-Settings-Build-Embedded Development,将右侧的 OpenOCD 文件目录转换到自己下载的位置,最后点击 Test 发现提示颜色为墨绿色,即代表配置成功 (顺便把 CubeMX 也配置了)
设置完后,点击open with STM32cubeMX进行工程创建
使用 Clion2021,采用一套新的嵌入式软件开发工具包(替代 Keil ),完成 stm32F103 点亮 LED 的程序
选择 STM32CubeMX ,填写好项目要保存的路径,点击 Create 即可
工程创建好后,点击 Open with STM32CubeMX,进入 CubeMX
打开之后,点击左上角的如图位置,进入芯片选择
选择使用 STM32F103C8,之后点击 Start Porject 开始配置
配置 SYS
配置 RCC
配置引脚
设置 PC13 引脚为 GPIO_Output 来点亮 LED 灯。
配置串口 USART1
命名工程文件并设置
Project Name 要重新填写一下(因为换芯片的过程,其实是 Cube 新建了一个 ioc 文件),建议填写之前的工程名和文件目录,这样就可以把之前不想要的那个 .ioc 文件覆盖掉。
然后" Toolchain/IDE "那里,选择 SW4STM32
回到 CLion,可以看到出现了如下界面,选择 st_nucleo_f103rb.cfg 文件,并使用
注意:如果回到 CLion之后没有出现如下界面,那就可能是你上一步生成 CubeMX 工程的时候,文件命名和目录选择与之前的不同导致的,只需要重新在 CLion 打开你重新生成的 CubeMX 工程文件目录即可。
寻找 st_nucleo_f103rb.cfg 文件位置
点击左上角如图位置
出现下面界面,点击图中的 …
即可查看到文件目录,如下:
修改 st_nucleo_f103rb.cfg 文件
根据刚才查看到的目录位置打开该文件,将第十行注释掉
注解:
第 4 行是选了连接方式是 stlink
第 6 行是选择 swd 通信模式
第 8 行是选择 stm32f1x 的配置文件
第 10 行是选择重启模式,貌似要将其注释起来,不注释掉下载可能失败。
添加代码
打开 main.c 文件,在 while 循环里添加使 PC13 引脚 LED 闪烁的代码
while (1) { /* USER CODE END WHILE */ HAL_GPIO_WritePin(GPIOC, GPIO_PIN_13, GPIO_PIN_SET); HAL_Delay(500); HAL_GPIO_WritePin(GPIOC, GPIO_PIN_13, GPIO_PIN_RESET); HAL_Delay(500); /* USER CODE BEGIN 3 */ }
编译前配置
点击 File-Settings-CMake,选择下图中的选项,最后点击 OK
编译运行
点击右上角的“小锤子”,开始运行,结果如下:
可见,编译成功,生成了 hex 文件。
将 hex 文件烧录到 STM32F103C8T6 核心板中
运行效果
pc13led闪烁
可见,实现了 PC13 端 LED 闪烁。
奇怪的知识又增加了
CLion2021 的详细安装并基于 CLion 实现 stm32F103 点亮 LED