在M2芯片上配置Clion编译和下载stm32

前言

本文以我在M2 pro芯片的Mac os系统上配置Clion来完成我学习和开发stm32工程的经历,分享在配置过程中的问题和解决。本文当然不限于M2芯片,而是对于整个Apple Sillicon ARM芯片的mac电脑适用。

开始安装和配置

首先中,无论是windows还是macOS,使用Clion配置stm32环境都需要你安装stm32CubeMX,当然安装Clion(学习版:你懂的)也是必不少的,这里我不介绍安装这两个软件。另外,在macOS上使用和编译C你需要安装Xcode工具,可以减少不必要的麻烦,在Apple Store上即可安装,然后在Xcode里安装macOS环境包即可。

在macOS上交叉编译stm32你需要一下三个工具:

1.Arm-toolchain工具链和arm-none-eabi-gcc用于编译debug

brew install --cask gcc-arm-embedded

        亲测brew install arm-none-eabi-gcc会有问题没法用

        使用arm-none-eabi-gcc -v判断是否正确安装

2.openocd工具用于下载程序       

 brew install open-ocd

        使用openocd -v判断是否正确安装

3.stlink如果你用的是stlink下载器就需要这个

brew install stlink

注:安装这些工具需要macOS在已经安装好brew install工具的基础上完成,请先自行安装好brew包工具。

配置Clion

1.打开clion安装Embeded Development Support插件

2.然后在设置中配置工具链

3.在配置中配置嵌入式

4.创建一个工程

创建过程中我碰到一个提示,但是不会影响我的项目创建,点OK就行,有大佬可以帮我解决么?好像是跟Java环境有关

如果你已经正确配置CubeMX,就可以看到“用Stm32CubeMX打开”,正常用CubeMX打开即可,一般默认是进入了stm32f030f4的配置界面,点击前面的配置芯片即可:我这里用f103c8t6

除了正常的配置外,你需要在SYS内配置你需要的Debug模式,我这里是stlink的JTAG

在Project Manger页面需要配置好你的项目名和项目位置,这里的你项目要放在没有中文的路径中,不然编译会报错!选择STM32CubeIDE并勾选后后面的选项即可Generate Code,因为Clion已经创建了一个.ioc文件,cubeMX会弹出overwrite的提示,OK即可。

这里选择你需要的开发板“复制到项目并使用”,不然你得自己配置CMake

如果你的配置没问题,看一看到这里的编译配置

使用stlink编译和下载

如果你使用的stlink下载器,在项目根目录下新建文件夹stlink.cfg,编辑如下(需要根据使用的芯片做一定的更改)

source [find interface/stlink.cfg]

transport select hla_swd

source [find target/stm32f1x.cfg]

reset_config srst_only

然后在编译器中更改配置文件

看见下面的编译信息,你就编译和下载成功了

重定向printf:除了在CubeMX中配置usart和中断,在main.c文件中添加#include <stdio.h>

#ifdef __GNUC__
#define PUTCHAR_PROTOTYPE int __io_putchar(int ch)
#else
#define PUTCHAR_PROTOTYPE int fputc(int ch, FILE *f)
#endif

PUTCHAR_PROTOTYPE
 {
    HAL_UART_Transmit(&huart1, (uint8_t *) &ch, 1, 0xFFFF);
    return ch;
 }

  • 24
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
CLion配置STM32开发环境需要进行以下几个步骤: 1. 安装OpenOCD:OpenOCD是一个开源的调试和仿真工具,用于与STM32芯片进行通信。你可以从OpenOCD的官方网站下载并安装它。 2. 配置OpenOCD:在CLion中,你需要配置OpenOCD以便与你的STM32芯片进行通信。你可以在OpenOCD的安装目录下的`share\openocd\scripts`文件夹中找到与你的芯片和仿真器对应的配置文件。根据你使用的芯片和仿真器,选择合适的配置文件并将其复制到你的项目目录下。 3. 配置CMakeLists.txt:在你的项目目录下,打开CMakeLists.txt文件,并添加以下代码来配置编译选项和链接选项: ``` cmake_minimum_required(VERSION 3.10) project(your_project_name C ASM) set(CMAKE_C_STANDARD 11) # 添加你的源文件 add_executable(your_project_name main.c # 添加其他源文件 ) # 设置编译选项 target_compile_options(your_project_name PRIVATE -mcpu=cortex-m4 -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 ) # 设置链接选项 target_link_options(your_project_name PRIVATE -T${CMAKE_SOURCE_DIR}/STM32F4xx.ld -mcpu=cortex-m4 -mthumb -mfloat-abi=hard -mfpu=fpv4-sp-d16 ) # 添加OpenOCD调试配置 set(OPENOCD_SCRIPTS_DIR ${CMAKE_SOURCE_DIR}/openocd_scripts) set(OPENOCD_CFG_FILE ${OPENOCD_SCRIPTS_DIR}/your_config_file.cfg) add_custom_target(flash COMMAND openocd -f ${OPENOCD_CFG_FILE} -c "program ${CMAKE_BINARY_DIR}/your_project_name.elf verify reset exit" DEPENDS your_project_name WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} ) add_custom_target(debug COMMAND openocd -f ${OPENOCD_CFG_FILE} DEPENDS your_project_name WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} ) ``` 请注意,你需要将上述代码中的`your_project_name`替换为你的项目名称,并根据你的实际情况修改其他选项。 4. 编译和调试:在CLion中,点击菜单栏中的"Build"按钮来编译你的项目。然后,你可以使用CLion的调试功能来调试你的STM32应用程序。你可以通过点击菜单栏中的"Run"按钮来启动调试会话。 希望以上步骤对你有所帮助!如果你有任何其他问题,请随时提问。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值