1. Eclipse 软件和相关工具的安装
使用 Eclipse 开发 STM32 等嵌入式软件项目时,需要安装的软件或者工具有:
- Eclipse 软件本身,eclipse-inst-jre-win64.exe
- 交叉编译工具链,gcc-arm-none-eabi-10.3-2021.10-win32
- make 构建工具,用于自动生成 makefile 文件
- openocd 调试工具,用于下载或者调试代码
- J-Link 驱动(如果有则不用安装)
下面一一介绍安装这些工具。
1.1 安装Eclipse
Eclipse是一个开放源代码的、基于Java的可扩展的开发平台。它只是一个框架和一组服务,通过添加各种插件来搭建开发环境(这点和VS Code有点像),因此只要添加了C/C++等语言的开发插件,就可以作为C/C++等其它语言的开发环境。
对于嵌入式开发,我们下载的版本是 Eclipse IDE for Embedded C/C++ Developers ,可以通过下面的连接下载:
https://www.eclipse.org/downloads/packages/release/2020-12/r/eclipse-ide-embedded-cc-developers
下载完成之后,我们双击打开软件,下面是安装过程介绍:
1、双击打开 eclipse-inst-jre-win64.exe 程序,然后选择 Eclipse IDE for Embedded C/C++ Developers 版本进行安装。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LyjR0GEq-1668914120056)(../picture/image-20221119103834701.png)]](https://img-blog.csdnimg.cn/f1c844c525234edebddda25be5070427.png)
2、选择安装路径,然后点击安装。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-29JTNrmy-1668914120057)(../picture/image-20221119104643295.png)]](https://img-blog.csdnimg.cn/f17f60b66da34d38aa3194b3cbae53e3.png)
3、安装完成,点击 Launch 首次启动 Eclipse。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dqRm3e18-1668914120058)(../picture/image-20221119110422938.png)]](https://img-blog.csdnimg.cn/3c512d6b68e0463c929d6c890a16b414.png)
4、首次启动后的界面选择:
首次启动 Eclipse ,会出现下面的界面:
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-aE47DBjQ-1668914120058)(../picture/image-20221119111428897.png)]](https://img-blog.csdnimg.cn/8f952b531afb4a04a39f02232d62ea3f.png)
- 这里让我们选择 Eclipse 的工作空间路径,以后使用 Eclipse 创建的项目,都会自动创建在这个文件夹下面。默认路径是在C盘的用户目录下的,这里我修改为D盘存放。
- Use this as the … 这个选项框不要勾选,这样以后我们想改变工作空间所处的文件夹不用浪费时间
- 最后点击 Launch 即可打开 Eclipse 界面了。
5、首次启动后,界面如下,会弹出欢迎的界面,我们直接关闭即可。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yHW8fcKB-1668914120058)(../picture/image-20221119112342501.png)]](https://img-blog.csdnimg.cn/3221014af9b14d9fa1935eb21b0f0a5c.png)
1.2 安装交叉编译工具链
交叉编译工具链可直接到ARM官网下载。下载链接如下:
https://developer.arm.com/downloads/-/gnu-rm
打开官网,拉到下面可以看到下载所需的软件,有windows、linux、mac os的。我们选择第一个即可:
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kP1eTVm4-1668914120059)(../picture/image-20221119143223613.png)]](https://img-blog.csdnimg.cn/35316b0a9bee429bbd5e07342bd426cc.png)
说明:当然下载 .exe 可执行程序或者 .zip 压缩包都可以的,压缩包的话解压出来也是一样的。
下载完之后,我们把它解压或者安装到某个目录即可(最好把Eclipse用到的所有工具都安装或解压在一个目录下,这样方便管理和查找)。然后需要指定环境变量,让Eclipse可以识别到交叉编译工具链的路径。
1.3 安装make构建工具
make工具主要的作用是自动生成makefile文件,当然 CDT 内嵌的make工具也可以实现,但是建议使用外部make工具,编译速度更快。
make 工具官网:
https://xpack.github.io/windows-build-tools/
下载地址:
https://github.com/xpack-dev-tools/windows-build-tools-xpack/releases/
打开下载的网址,点击下面的版本下载:
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cwH49k7A-1668914120059)(../picture/image-20221119142250187.png)]](https://img-blog.csdnimg.cn/697cbf107b634108b9c4f6760b8bb1d2.png)
下载完之后,make工具其实就是一个压缩包,我们把它解压到和交叉编译工具链同样的目录下,以便备用(后续创建工程时,需要指定make工具路径)。
1.4 安装调试工具openocd
openocd ,即 Open On-Chip Debugger ,其实就是一款开源的GDB调试工具,是我们调试代码时需要用到的工具,它可以支持很多调试工具(ST-LINK, JLINK, DAP-LINK等等)在线调试。
我们可以到他的官网下载。
https://openocd.org/pages/getting-openocd.html
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tAAIAsyR-1668914120059)(../picture/image-20221119233751689.png)]](https://img-blog.csdnimg.cn/26e0abb99b43458ea0369bbc1ceafcaa.png)
然后点击跳转的 github 界面进行下载:
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-O4XxDYgp-1668914120060)(../picture/image-20221120094842188.png)]](https://img-blog.csdnimg.cn/721d23a6b8ad4c46af967d7d52e39a8d.png)
下载完之后其实也是一个压缩包,解压到上面工具的同一个文件夹里,以便后面创建Eclipse STM32项目的时候备用。
1.5 J-Link驱动安装
如果使用的是J-Link调试器的话,需要安装J-Link驱动。可以到J-Link官网下载:
https://www.segger.com/downloads/jlink/
正版J-Link调试器是比较贵的,最新版本的J-Link驱动可以识别出我们使用的调试器是否是盗版,然后每次调试的时候就会弹出一个警告对话框,非常麻烦。

所以可以选择相对老版本的J-Link驱动。
下载完一路默认安装就行。
到这里软件和一些必要的工具全部准备完毕。
2. Eclipse新建STM32工程,环境配置
2.1 新建STM32工程
1、新建工程
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LY918uLE-1668914120060)(../picture/image-20221120101643582.png)]](https://img-blog.csdnimg.cn/e66c3fc2d26e424b876048868c924eb6.png)
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Ti2NM9B4-1668914120060)(../picture/image-20221120101759329.png)]](https://img-blog.csdnimg.cn/3b288ce5efd142ae9b72fd60a2fcee37.png)
2、选择芯片项目类型、编译工具等。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UduUS6wZ-1668914120060)(../picture/image-20221120102330465.png)]](https://img-blog.csdnimg.cn/f14acca74ed045a09fdca016ae280da4.png)
3、配置芯片信息,Flash大小,板子外接晶振频率等,这些信息是用来自动生产对应的链接脚本文件的,以及一些配置宏定义。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QJiodIiC-1668914120061)(../picture/image-20221120103011277.png)]](https://img-blog.csdnimg.cn/f120b5e59e3f4ba79dfbec7914d086a1.png)
4、定义项目文件夹,这里默认即可,不过管。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KHnd4qBQ-1668914120061)(../picture/image-20221120103221252.png)]](https://img-blog.csdnimg.cn/cee9d3271e964db8a3f2e46badabfb7e.png)
5、指定本项目的交叉编译工具链路径。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HtUAryYJ-1668914120061)(../picture/image-20221120103652123.png)]](https://img-blog.csdnimg.cn/3b31dbdc9ab44afa87122b7808bc692d.png)
最后点击完成,即可创建 Eclipse STM32工程完成,这个时候会自动生成一些代码。
2.2 Eclipse环境配置
这个时候,如果我们对新建的项目进行编译的话,会提示一些保报错,说钟爱不大make工具,这个是因为还没有进行一些必要的环境配置。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7um7BgBY-1668914120062)(../picture/image-20221120104337567.png)]](https://img-blog.csdnimg.cn/1efb18b197e04e75b780dbe131c23fce.png)
下面还需要进行一些环境的配置。
1、进入属性配置界面。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dyM7hVpP-1668914120062)(../picture/image-20221120104555604.png)]](https://img-blog.csdnimg.cn/b76c556af3484e58b91a7f6e2fa73d03.png)
2、使能多线程编译。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jUOkNVes-1668914120062)(../picture/image-20221120105012931.png)]](https://img-blog.csdnimg.cn/4574d3345bd94e9d8c5a929810afb318.png)
3、使用外部的make构建工具,且指定该工具的路径。
一般来说是默认使用了外部的make构建工具的,所以我们只要指定make工具路径即可。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Y1ICFfQc-1668914120063)(../picture/image-20221120105250356.png)]](https://img-blog.csdnimg.cn/82e4b1a85bdd42c8931538eac00227e2.png)
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SbusdRh3-1668914120063)(../picture/image-20221120105545602.png)]](https://img-blog.csdnimg.cn/8c689e1b58ef431e85b39de7f41cda35.png)
如果是内部构建工具,那么就选择 CDT Internal Builder. 上面这两个选项一般都是默认选择了外部构建工具的,所以我们检查一些是不是就好了。
下面就需要指定外部make工具的路径了,指定到bin目录下。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4actnjYv-1668914120063)(../picture/image-20221120105918491.png)]](https://img-blog.csdnimg.cn/d4147dc03a5e46f884901025a4ed1ba7.png)
3. 编译Eclipse STM32项目
上面的配置搞完之后,没有错误的话一般就可以编译通过了。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tUEQ24IL-1668914120064)(../picture/image-20221120110355144.png)]](https://img-blog.csdnimg.cn/5525dd80e437415e99131213dbe7334d.png)
然后点击那个锤子进行编译工程,结果如下:
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4foPtTtR-1668914120064)(../picture/image-20221120110450970.png)]](https://img-blog.csdnimg.cn/d85b12010fc244e1afcf2a5fbe826709.png)
提示已经编译成功,但是有一个警告,这个是因为 Eclipse 创建STM32项目自动生成的代码输出的警告。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3mZrMVoy-1668914120064)(../picture/image-20221120110616834.png)]](https://img-blog.csdnimg.cn/e238be61764f49ad9d4ba39965af303f.png)
如果我们检查系统时钟配置没有问题的话,可以注释掉即可。
到这里就已经搞定了Eclipse 的STM32项目创建了。那么我们怎么使用Eclipse进行调试和下载程序到STM32呢,我们前面下载的 openocd 工具不是还没用上吗?
下面的文章接着介绍怎么使用 openocd 调试下下载程序到STM32。
















