eclipse+gcc STM32开发环境搭建及调试
记录一下本人进行eclipse+gcc stm32开发环境的搭建过程,以便后续学习使用
参考资料如下:
CubeMX+Eclipse+Jlink STM32开发环境搭建_小裘HUST的博客-CSDN博客_eclipse jlink stm32
Windows下用Eclipse搭建stm32f1xx的编译、调试(openocd+stlink)环境 - 知乎
Eclipse+STM32 IDE 搭建 - 知乎
目录
一.软件安装
1.eclipse下载安装,
2.STM32CubeMX,安装地址STM32CubeMX - STM32Cube initialization code generator - STMicroelectronics
3. 编译器工具:gcc-arm-none-eabi,网址:
4.安装make工具,下载地址:
5.安装调试工具:openocd,下载地址:Getting OpenOCD
6.调试器驱动:STlink驱动
二.STM32CubeMX生成初始化代码
三.Eclipse创建项目工程,环境配置
四.调试
一.软件安装
需要下载的东西比较多,建议新建一个文件夹(不要有中文路径),将下载的所有东西都装到一个文件夹中,方便寻找路径。
1.eclipse下载安装,
c/c++版的(Eclipse IDE for Embedded C/C++ Developers),下载网址:安装过程不再赘述
Eclipse Downloads | The Eclipse Foundation
2.STM32CubeMX,安装地址STM32CubeMX - STM32Cube initialization code generator - STMicroelectronics
选择对应自己的操作系统的,Windows就选Win。
3. 编译器工具:gcc-arm-none-eabi,网址:
Downloads | GNU Arm Embedded Toolchain Downloads – Arm Developer
下载 .exe或者 .zip都可以,建议下载.zip,下载完后是一个压缩包,直接解压就可以了。
4.安装make工具,下载地址:
GnuWin download | SourceForge.net
下载的是sed安装文件,目前sed安装后不包含make.exe工具,生成GnuWin32文件夹。
然后下载make.exe ,下载地址:Releases · xpack-dev-tools/windows-build-tools-xpack · GitHub
下载之后是个压缩包,将解压后的里面的make工具拷贝到GnuWin32文件夹下面的bin文件夹。
5.安装调试工具:openocd,下载地址:Getting OpenOCD
点击上图的红色箭头部分,跳转到新的网页(见下图)。
然后下载openocd。(电脑系统是windows64位,所以下载下图红框的zip包。)
下载之后解压到新建的文件夹中。
6.调试器驱动:STlink驱动
STSW-LINK009 - 为Windows 7、Windows 8、Windows 10签署的ST-LINK、ST-LINK/V2、ST-LINK/V2-1 USB驱动 - STMicroelectronics
下载解压完之后安装下图中的stlink驱动。
二.STM32CubeMX生成初始化代码
按需要进行引脚串口配置与时钟配置,配置方法可自行百度,
STM32CubeMX还支持FreeRTOS,如有需要,可进行配置
各种配置完毕后就可以生成项目了。进行项目配置,项目名称和路径设置。
生成项目的类型选择makefile,因为要用eclipse进行项目开发,最后全部设置完毕后点击create code,生成项目代码。
三.Eclipse创建项目工程,环境配置
路径选择刚刚用Cube生成的makefile的路径,makefile文件所在的路径。
项目创建好后接下来就该配置各种环境了。
打开Makefile可以看到里面的-D参数和-I参数。去掉“-D”和“-I”才是具体的Define和Include,Makefile中这么些是方便把这些设置直接作为gcc编译的选项。比如“-DSTM32L051xx”实际上是需要定义“STM32L051xx”这个Symbol。
把C_DEFS = \ 下的,去掉-D,将后面的东西加入Symbols中。
把C_INCLUDES = \ 下的 去掉 -I,将后面的东西加入includes中。
右击项目,选择properties。
把makefile中涉及到的路径加入到includes中
makefile中的symbols也加入
Help -> Eclipse Marketplace
下载完成后接着下一步,配置编译环境,右击项目 -> properties
配置gcc编译路径,选择我们上边下载的编译器工具:gcc-arm-none-eabi的路径,找到bin目录
配置make路径,选择我们上边下载的make工具拷贝后GunWin的路径,找到bin目录,make.exe就在bin中。
然后进行我们用到的芯片的选择
打开后如果是空白,就点击下图中的按钮进行刷新,刷新很慢时间较长,耐心等待,中间有失败的直接忽略即可。等刷新完之后就会出现很多芯片。
然后找到我们要用的芯片,然后双击,或者右击点install
再点击下图便可以回到自己的项目目录
然后右击项目 -> properties,选择我们要用的芯片,然后apply
至此,eclipse+gcc开发环境配置基本完成,可以build试试是否还有其他错误。代码中可能也会出现错误,我出现的一个错误是freertos中的一个函数只声明未定义,根据自己实际错误进行解决。
四.调试
找到下图的图标,点击旁边的倒三角,选择debug Configurations
双击下图红框中的
如下图所示,选择我们上边下载的调试工具:openocd目录,找到bin文件中的openocd.exe文件,选中,apply
继续配置,如下图
上图红框中的路径就是我们上边安装的openocd目录中scripts中的两个文件夹中的文件,路径前需要加 -f 不要漏掉。
下图这里选择我们需要的芯片文件:
全部配置完之后便可调试了,debug之前,请将ST-link接好,板子通电
至此,eclipse+gcc stm32开发环境搭建完成
eclipse+gcc STM32开发环境搭建及调试相关推荐
- CubeMX+Eclipse+Jlink STM32开发环境搭建
Eclipse还是我用得最多的IDE,不管是CCS还是Xilinx的SDK,都是Eclipse的开发环境.所以最近准备做STM32相关的开发时,也准备用Eclipse. 软件下载与安装 STM32 ...
- 1、STM32开发-环境搭建-Keil5安装
MDK Keil STM32开发环境搭建 一.准备 1.MDK 安装包获取 MDK安装官网下载,在官网选择MDK-Arm选项 在表单中填写个人信息,最后点击Submit提交,便自动进入软件下载界 ...
- QQ玩一玩(轻游戏)开发环境搭建与调试
玩一玩开发环境搭建与调试 前言 Android 调试 下载Android Studio 配置环境变量 进入用户当前目录 设置环境变量 设置生效 检查配置是否正常 下载特殊版测试Q 调试时Android ...
- Linux 下 STM32 开发环境搭建
安装编译器 如果还没安装编译器的,先安装: sudo apt install gcc-arm-none-eabi sudo apt install gdb-arm-none-eabi sudo apt ...
- stm32 vscode 编译_vs code+gcc stm32编译环境搭建
/* 操作系统:Ubuntu16.04 硬件平台:原子Stm32F767+7'RGB屏幕 其他操作系统与开发板搭建环境基本差不多,注意的地方我会提到的. */一.软件安装 l VSCode 为什么用 ...
- java中的adt安装配置,Android SDK 2.3与Eclipse最新版开发环境搭建
一.背景和准备 1.Android 简介 Android是谷歌于2007年11月5日宣布的基于Linux平台的开源手机操作系统的名称,该平台由操作系统.中间件.用户界面和应用软件组成,号称是首个为移动 ...
- Android SDK 2.3与Eclipse最新版开发环境搭建(一)
一. 背景和准备 1. Android简介 Android是Google于2007年11月5日宣布的基于Linux平台的开源手机操作系统的名称,该平台由操作系统.中间件.用户界面和应用软件组成,号称是 ...
- linux eclipse下qt开发环境搭建,Qt Eclipse开发环境的部署 上篇
关于Qt Eclipse的开F发,将会从不同的环境中区安装部署,分为上.中.篇,三篇文章来讲.Windows,Linux平台下安装使用eclipse + QT4.4.3开发环境,Windows,Li ...
- Eclipse C/C++开发环境搭建
1 Eclipse的安装 到http://java.sun.com/j2se/1.5.0/download.jsp 下载JRE安装: 到http://eclipse.org下载Eclipse安装.(这 ...
最新文章
- php找不到phpmyadmin,nginx下找不到phpmyadmin文件
- 【正一专栏】钱都从哪里来的?
- python自动搜索请求失败_http请求 request失败自动重新尝试代码示例
- 《Objective-C入门经典》——2.1节Objective-C世界中的面向对象程序设计
- sublime运行python_sublime交互执行python文件方法
- Android 蓝牙开发之搜索、配对、连接、通信大全
- 离散小波变换wavedec matlab,Matlab实现小波变换
- 如何用Python制作词云,对1000首古诗做词云分析!
- ff14服务器建信号,《FF14》服务器人口平均化公告 陆行鸟区关闭角色创建
- SPL工业智能:发现时序数据的异常
- 【Unity3D日常开发】时间类Time和DateTime的使用
- 阅读源码的三种境界 (转 码农翻身 微信公众号)
- 【汉诺塔】C语言递归解法,深层次地带你理解汉诺塔公式
- 杨文俊的座右铭“君子欲讷于言而敏于行”
- ThinkPad X270 升级固态硬盘(M2 2242 NVMe)
- MATLAB代码:储能参与调峰调频联合优化模型
- TF Live 直播回放丨Frank Wu:当OpenStack遇到Tungsten Fabric
- foreach变异非变异_神经网络产生了一堆看起来很变异的新动物
- iOS快捷指令 | iPicGo,随时随地用手机上传图片到图床
- base.apk软件下载免费_Zoom Meetings免费版软件-Zoom Meetings正式版下载