文章目录

  • 1 使用环境
  • 2 Clion环境配置以及编译运行
    • 2.1 安装 Clion,gdb,MinGW
    • 2.2 安装 ARM GCC 工具链
    • 2.3 安装OpenOCD
    • 2.4 下载STM32CubeMX
  • 3 使用Clion配置STM32项目
    • 3.1 打开Clion, File->New Project 创建新项目
    • 3.2 配置 ARM 编译工具链
    • 3.3 根据openOCD以及STM32CubeMX的安装路径,配置对应的exe文件路径,可以通过test按钮测试是否路径选择是否正常
    • 3.4 开启Stm32CubeMX配置STM32项目
  • 4 编译&调试
    • 4.1 生成代码后,点击编译按钮
    • 4.2 烧录文件
    • 4.3 调试
  • 参考链接

1 使用环境

  1. Windows10
  2. Clion 2021.2.2
  3. 安装GCC编译器
  4. 安装ARM GCC工具链
  5. 安装OpenOCD
  6. 安装STM32CubeMX

2 Clion环境配置以及编译运行

2.1 安装 Clion,gdb,MinGW

Clion C编译环境搭建

2.2 安装 ARM GCC 工具链

GNU Arm Embedded Toolchain

在此,我选择的是当前最新版本

现在安装,并设置环境变量。

如何在win10上添加环境变量

确认工具链是否安装成功。

以及arm gdb调试

2.3 安装OpenOCD

openocd下载

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-afY7o1P9-1632069909642)(Clion调试STM单片机/image-20210919225715717.png)]

当前openOCD使用的版本 openocd-20210729.7z

下载完毕后,解压到对应的目录

添加环境变量。

测试OpenOCD是否生效

2.4 下载STM32CubeMX

STM32CubeM 下载链接 并安装。

3 使用Clion配置STM32项目

3.1 打开Clion, File->New Project 创建新项目

3.2 配置 ARM 编译工具链

3.3 根据openOCD以及STM32CubeMX的安装路径,配置对应的exe文件路径,可以通过test按钮测试是否路径选择是否正常

3.4 开启Stm32CubeMX配置STM32项目


重新选择STM32芯片方案

然后选在 “Project Manager" 生成代码

Note: 这里要注意Porject Name和项目路径一定要和创建项目一致。

配置成功后,显示如下:

4 编译&调试

4.1 生成代码后,点击编译按钮


查看输入日志,提示编译成功。

4.2 烧录文件


需要创建板文件,配置好后,点击OK. (板载文件不做过多描述)

配置完成后,点击 三角形 按钮。

查看输出日志

显示烧录成功。

4.3 调试

调试是需要基于OpenOCD,调用arm gdb进行调试。因此,在Clion中需要创建一个嵌入式GDB调试模板。

配置GDB server

编译后,点击 小虫子 ,可以看看红色方框亮起,表是gdb server启动。

可设置断点,开始调试。

因为Clion不是专门的单片机编译器,因此,如果需要查看寄存器,需要将单片机的SVD文件下载下来.

STM32F103 SVD 下载

将其下载下来,并放入对应的目录。回到Clion后,进入到以下界面

添加SVD文件后,勾选需要显示的寄存器(我这边是全选)

勾选后,在调试的Peripheals可以看到寄存器信息

参考链接

配置CLion用于STM32开发【优雅の嵌入式开发】

Clion调试STM单片机相关推荐

  1. (转)jLink使用ITM机制实现调试stm32单片机

    ----------------------------------------------------------------------------------------------- 作者:p ...

  2. semihost/ITM机制浅析以及使用JLINK通过ITM调试stm32单片机

    使用ITM机制实现调试stm32单片机,实现printf与scanf. ITM简介 ITM机制是一种调试机制,是新一代调试方式,在这之前,有一种比较出名的调试方式,称为半主机(semihosting) ...

  3. 【经验分享】调试STM32F107VC单片机驱动DP83848以太网PHY芯片时遇到的问题

    调试时使用的程序:https://blog.csdn.net/ZLK1214/article/details/105457370 [杜邦线(或普通电线)影响时钟信号的完整性] 笔者调试STM32F10 ...

  4. 007 - 配置 Clion 调试显示 Qt 变量

    配置 Clion 调试显示 Qt 变量 文章目录 配置 Clion 调试显示 Qt 变量 引言 尝试解决 配置 Lekensteyn's qt5printers KDevelop formatters ...

  5. 009:semihost/ITM机制浅析以及使用JLINK通过ITM调试stm32单片机(转)

    ----------------------------------------------------------------------------------------------- 作者:p ...

  6. 通过CLion 调试JDK源码

    通过CLion 调试JDK源码 0. 简述 0.1 使用环境: 宿主机操作系统:Windows 10 专业版 虚拟机软件:VMware® Workstation 16 Pro 虚拟机操作系统:[ubu ...

  7. 使用st-link+keil下载和调试华大单片机的教程

    使用st-link+keil下载和调试华大单片机的教程 首先说明一下,手里只有M0和M4内核的芯片,也就只测试了这两种,但是理论上讲这个方法是通用的 一.下载支持包 从华大官网找到你芯片资料页,下载D ...

  8. CLion调试redis6源码

    背景 clion使用cmake来管理编译redis源码,而redis源码本身使用原生的make,因此直接将redis源码导入clion无法直接运行,需要配置cmake. 写c程序大体步骤为: 1).用 ...

  9. clion调试出现optimized out

    clion调试时候debug总是出现变量optimized out 解决方案: 修改CMakeLists: On high optimization levels, the compiler can ...

  10. semihost/ITM机制浅析以及使用JLINK通过ITM调试stm32单片机(转)

    ----------------------------------------------------------------------------------------------- 作者:p ...

最新文章

  1. cordova + vue cli构建跨平台应用
  2. Redis 分布式缓存 Java 框架
  3. 职业素养和职业技能问题_中职生职业素养提升的综述
  4. postman 发送到onenet,chinanet
  5. html缓慢下拉,html - 列表下拉导航-适用于除野生动物园之外的所有浏览器。 间隔开并缓慢 - 堆栈内存溢出...
  6. ARKit:增强现实技术在美团到餐业务的实践
  7. JupyterNotebook配置远程登录
  8. c语言python零基础教学_编程零基础应当如何开始学习 Python?
  9. (转)Hibernate框架基础——cascade属性
  10. python 装饰器相关 从后往前看
  11. 运维,你是选择25k的996还是18k的八小时工作日?
  12. 解决UITableView分割线距左边有距离的办法
  13. RIP实现等开销负载均衡的配置
  14. python正则表达式模块re
  15. Winrunner经验
  16. phpdesigner(php开发工具) 注册码,php 开发工具 phpDesigner7 附注册机
  17. Ubuntu 安装netstat网络工具
  18. 中学生心理测试系统软件,学校心理测评软件
  19. 设置自动清理mysql binlog日志_自动清理MySQL binlog日志
  20. Spring Boot 错误页面解析原理(超级无敌详细)

热门文章

  1. 笔记-51,k60,stm32
  2. 基于ELK 7.50搭建elastalert 监控报警和权限控制
  3. 论mybatisPlus 连表插件(MPJBaseMapper) 与自定义SQL注入器冲突
  4. 修改Android 模拟器IMEI
  5. 【网页设计】基于HTML+CSS+JavaScript制作美食网站舌尖上的美食
  6. java解析json类型的list
  7. 安卓问题-第三方相关
  8. 简单常用的互联网赚钱工具分享
  9. 微信公众号:地图定位
  10. 火山视频解析,火山视频去水印