STM32CubeMX+Eclipse+gcc+Jlink 实现STM32开发环境搭建

本节记录通过STM32CubeMX+Eclipse+gcc+Jlink 进行STM32环境搭建的过程;

文章目录

  • 一、环境确认
  • 二、Eclipse建立工程
  • 三、指定编译路径
  • 四、选择gcc路径
  • 五、选择make路径
  • 六、 选择Device

参考:
https://blog.csdn.net/qq_35787848/article/details/124395509
https://blog.csdn.net/cyf1294311560/article/details/127115730

一、环境确认

1、我这边已经装好了STM32CubeMX、Eclipse、ARM gcc环境、JLINK等;如果你没有安装,请进行安装;
2、我这边已经安装配置好了STM32CubeMX,并通过CubeMX创建了一个Makefile的项目;如果你没有完成,请参考:

  • 从零开始搭建STM32CubeMX开发环境
  • STM32CubeMX使用示例—生成LED闪烁工程

二、Eclipse建立工程

打开eclipse,右上角,文件->新建->项目->c/c+±>已有代码的Makefile项目

STM32CubeMX+Eclipse+gcc+Jlink 实现STM32开发环境搭建_第1张图片
STM32CubeMX+Eclipse+gcc+Jlink 实现STM32开发环境搭建_第2张图片

选择之前CubeMX生成的Makefile项目,并选择Arm Cross GCC,如下图所示:

STM32CubeMX+Eclipse+gcc+Jlink 实现STM32开发环境搭建_第3张图片
点击完成后,工程创建完成,如下图所示:

STM32CubeMX+Eclipse+gcc+Jlink 实现STM32开发环境搭建_第4张图片

三、指定编译路径

此时我们打开工程里的main.c,会发现有很多红色的波浪线,这些红色波浪线表示找不到变量的定义,原因是当前的工程并不知道include的路径和一些symbol的定义,如下图所示:

STM32CubeMX+Eclipse+gcc+Jlink 实现STM32开发环境搭建_第5张图片
此时需要我们打开Makefile,可以看到里面的-D参数和-I参数,如下图所示:

STM32CubeMX+Eclipse+gcc+Jlink 实现STM32开发环境搭建_第6张图片

“-D”和“-I”后面的参数才是具体的Define和Include,Makefile中之所以这么写是为了方便把这些设置直接作为gcc编译的选项。比如“-DSTM32G030xx”实际上是需要定义“STM32G030xx”这个变量。

为了消除上面的波浪线,也就是说为了让编译器能找到这些变量的定义,我们需要设置定义这些变量的文件路径,也就是需要在工程的Properties中添加这些include和symbol;

打开工具栏的,项目->属性:

STM32CubeMX+Eclipse+gcc+Jlink 实现STM32开发环境搭建_第7张图片

C/C++常规->路径和符号:

STM32CubeMX+Eclipse+gcc+Jlink 实现STM32开发环境搭建_第8张图片
将Makefile中的头文件路径添加到“包含”下,添加方法如下:
STM32CubeMX+Eclipse+gcc+Jlink 实现STM32开发环境搭建_第9张图片

Makefile和添加后如下图所示:

STM32CubeMX+Eclipse+gcc+Jlink 实现STM32开发环境搭建_第10张图片

然后同样的方法,将变量路径添加到“符号”下:

STM32CubeMX+Eclipse+gcc+Jlink 实现STM32开发环境搭建_第11张图片
然后点击应用并关闭即可。

四、选择gcc路径

项目->属性->MCU->Arm Toolchains Paths,然后将gcc的路径填进去:

STM32CubeMX+Eclipse+gcc+Jlink 实现STM32开发环境搭建_第12张图片

五、选择make路径

项目->属性->MCU->Build Tools Path,然后将gcc的路径填进去:

STM32CubeMX+Eclipse+gcc+Jlink 实现STM32开发环境搭建_第13张图片

六、 选择Device

要通过编译还有非常重要的一步,就是选择Device。

因为Makefile是我们自己生成的,所以前面即使不往工程里添加的include和symbol,我们根据这个Makefile进行make,一样能够完成编译。当工程目录下没有Makefile时,Eclipse CDT会帮我们生成一个Makefile,那时候才会用到我们在上面设置的东西。

我发现如果不选择Device,就无法编译,问题好像是找不到make。但只要选了相应的Device就可以正常编译了,所以下面我们需要选择:

STM32CubeMX+Eclipse+gcc+Jlink 实现STM32开发环境搭建_第14张图片
这里应该选择对应G0的单片机,但是由于我做到这步无法往下进行了,公司的防火墙无法下载这些CMSIS,所以到这儿就停了。

后续待更新。。。。。。。。

你可能感兴趣的:(开发工具使用汇总,stm32,eclipse,嵌入式硬件)