保姆级教程!如何使用CLion优雅高效地进行STM32开发

0.前言

        Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统。与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。Keil提供了包括C编译器、宏汇编、链接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(μVision)将这些部分组合在一起。运行Keil软件需要WIN98、NT、WIN2000、WINXP等操作系统。如果你使用C语言编程,那么Keil几乎就是你的不二之选,即使不使用C语言而仅用汇编语言编程,其方便易用的集成环境、强大的软件仿真调试工具也会令你事半功倍。---keil_百度百科 (baidu.com)

         确实,Keil这款老牌IDE陪伴着我们从入门到提高,功不可没。But,现在随着科技的发展和技术的进步,一个“喜新厌旧”、喜欢尝鲜、喜欢折腾的硬件攻城狮在接触和使用计算机行业的一些优而美的IDE(CLion、Pycharm、VScode .etc)之后,不禁感叹这些工具真**好用,代码自动补全、智能分析检查真的会让人事半功倍,对于一个打字慢、英文差、记性不好的开发者来说简直是天赐的福音,直接缩小差生和优生之间的部分(严谨)差距😁。自动格式化代码、分门别类的颜色显示等特性让你从此爱上写代码,好吧我承认是个颜控,还有好多好多可以提高效率的特性感兴趣的话自行入坑探索......这段话纯粹是一些心里话,如果你跟作者臭味相投,那么废话不多说,直接上正菜。

        本文是由华为天才少年稚晖君种草,并结合其他网友的慷慨分享,以及本人实际搭建开发环境踩坑总结而来,在此致谢大家。

1开发环境及所需工具 

硬件环境:

  • STM32F103VET6
  • ST-Link下载器

软件环境:

  • Windows 11(22H2) 

  • STM32CubeMX
  • Clion2023.2
  • MinGW
  • OpenOCD
  • arm-none-eabi-gcc

你要的全拿走 (Live)_胡彦斌

传送门:链接:https://pan.baidu.com/s/1IuGkt4vR3AxMPMLTpHQ0bA 
提取码:pb1d

工具安装

1.CLion

支持正版,建议大家从官方网站下载安装。
传送门:Download CLion: A Smart Cross-Platform IDE for C and C++ (jetbrains.com)

Step1:双击Clion-2023.2.exe打开安装程序,点击Next。

Step2:选择安装目录,点击Next。

Step3:配置安装选项,这里全选,点击Next。

 

Step4:选择启动菜单文件夹创建快捷方式,点击Install。

Step5:等待安装完成,稍后重启,点击Finish。

Step6:激活。双击install-current-user.vbs或install-all-users.vbs,等待完成,显示Done。

Step7:打开CLion,同意并继续,数据共享随便选一个。

 Step8:输入激活码,点击Activate,恭喜获得两年订阅,狠狠使用吧。

 

2.STM32CubeMX

官方免费下载最新版本,不用客气,狠狠使用吧。

STM32CubeMX:图形化工具 - 意法半导体STMicroelectronicsa

安装过程不多说了,选择合适安装路径,然后一路Next,最后Done完成安装。

下面简单介绍下新建工程、配置以及生成代码的步骤 ,关于软件的详细使用大家自行学习。

Step1:打开STM32CubeMX,New Project,Start My project from MCU。第一次使用会从服务器自动安装一些东西,别着急耐心等待安装。

Step2:安装完成后自动进入下面界面,选择目标芯片,双击它。

 Step3:双击以后,进入芯片引脚配置界面,展开左侧导航栏System Core,选择SYS,右侧Debug下拉框选择Serial  Wire 。

 Step4:在左侧导航栏System Core,选择RCC,右侧High Speed Clock(HSE)下拉框选择Crystal/Ceramic Resonartor 。

 Step5:在最右侧芯片图,选择PB5和PE5配置为GPIO_Output,因为我的板子上这俩引脚控制LED灯。各位自行发挥~

  Step6:配置时钟,再满足时钟约束条件下自己随便捣鼓。

 Step7:项目管理。填写项目名称,选择项目路径以及Toolchain/IDE,点击GENERATE CODE

 Step8:打开项目。点击生成代码后弹窗点击Close,待会直接去项目文件夹右键鼠标使用CLion打开文件夹作为项目。

打开项目后会弹窗,别怕~是因为我们还没配置嵌入式开发环境、编译和调试工具等。

 有句古话叫缺啥补啥。来,走着~

3.MinGW

 Step1:打开mingw-get-setup.exe,点击Install。

 Step2:修改安装目录,不要有空格,点击Continue,等待安装完成。

 Step3:安装完成后选择组件进行下载,这里选择Basic Setup里面的全部组件,然后点击菜单栏Installation->Apply changes,在弹窗中点击Apply开始安装

 

 

 等待安装完成,点击close。

 4.OpenOCD

        OpenOCD(Open On-Chip Debugger)是一个开源的片上调试器,可以用于烧写调试程序,支持多种硬件调试接口,如JTAG(Joint Test Action Group),SWD(Serial Wire Debug),提供许多不同芯片和处理器体系结构的调试。

        下载好直接解压到一个目录(不要有中文和空格),我解压到Program File文件夹下,路径包含了空格,导致Debug功能报错,在网上苦苦查询才得以解决,很多教程没有提到这点,写下此篇记录。

5.arm-none-eabi-gcc 

         下载ZIP压缩包形式的,然后解压到一个目录即可,我选择跟STM32CubeMX一个根目录,方便管理。传送门:Downloads | GNU Arm Embedded Toolchain Downloads – Arm Developer

OK,到此完成所有工具的安装~接下来是非常重要的配置过程了 

首先,将MinGWarm-none-eabi-gcc 添加进环境变量,确定确定,然后关闭重启电脑

 重启后可以测试一下Windows+R ->CMD 测试gcc -v 和arm-none-eabi-gcc -v两条指令, 验证安装是否成功以及环境变量设置是否正确。成功安装可参照下图:

 CLion配置

 找到项目路径,鼠标右键选择Open Folder as CLion Project。打开后,进行配置:

一、点击File->Settings->Build,Execution,Deploment->Toolchains,参照下图进行设置:

  1. 点击➕,新建一个工具链
  2. 重命名,这里叫MinGW-STM32
  3. 选择MinGW文件夹
  4. 保持默认捆绑
  5. 保持默认
  6. 分别选择arm-none-eabi-gcc、arm-none-eabi-g++、arm-none-eabi-gdb

设置完成点击OK。 

 二、点击File->Settings->Embedded Development,分别选择OpenOCDSTM32CubeMX路径,点击Test,显示绿色即表示没问题,点击OK。

 三、回到工程中,查看左下角CMake,可以点击刷新按钮,不报错了。

 四、创建工程配置文件。方法:在工程路径下新建config文件夹,新建文本文件,将下面内容粘贴进去,保存,重命名st_link.cfg,注意将后缀txt改为cfg。

# choose st-link/j-link/dap-link etc.

source [find interface/stlink.cfg]

#transport select swd

transport select hla_swd

#这里的stm32f1x.cfg对应的是你的板子的相应芯片型号
source [find target/stm32f1x.cfg]

# download speed = 10MHz

adapter speed 10000

 五、点击顶栏竖着的三点->Edit,点击➕,新建OPenOCD配置,按下图配置:

 好的,至此完成全部配置了,让我们愉快地去点个灯~⭐一闪一闪亮晶晶

 打开main.c,在while(1)中添加代码:

      HAL_GPIO_WritePin(GPIOB,GPIO_PIN_5,GPIO_PIN_RESET);
      HAL_GPIO_WritePin(GPIOE,GPIO_PIN_5,GPIO_PIN_SET);
      HAL_Delay(200);
      HAL_GPIO_WritePin(GPIOE,GPIO_PIN_5,GPIO_PIN_RESET);
      HAL_GPIO_WritePin(GPIOB,GPIO_PIN_5,GPIO_PIN_SET);
      HAL_Delay(200);

这里用到HAL库,有更好的移植性,引脚需改为自己板子上LED控制引脚。

点击上图的小锤子,Build一下。需要Load点击中间三角,需要Debug就点击小虫子。

 最后来看一下成功下载和成功进入Debug的界面开心下吧~

 

 码字不易,第一次写这么详细的教程,点个赞支持一下吧 ~囧rz

 

  • 7
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值