windows下的Eclipse+JLink调试——ARM裸机开发环境搭建
在公司用着eclipse感觉挺不错
调试起来比emblock要舒服
用eclipse+arm-gcc+JLink的人越来越多了吧
仅记录一下配置方法
另外可以参考这一篇
http://www.emb4fun.de/archive/eclipse/index.html
更新记录
2016/08/21 补上遗漏的”Build tools安装”部分
2017/12/06 gnuarmeclipse已经改名为gnumcueclipse了 而且提供了打包好的”GNU MCU Eclipse IDE for C/C++ Developers” 修改几处不严谨的说法 调试部分
IDE及编译环境搭建
0. 国内网络情况的提示
由于你知道的原因, 下载github中的压缩包时可能不顺畅, 请自备代理.
1. 安装JRE
http://www.java.com/en/download/manual.jsp
Eclipse需要在JVM下运行
安装完JRE需要配置环境变量 让PATH包含JRE的bin目录
2. 下载GNU MCU Eclipse IDE for C/C++ Developers并解压
GNU MCU Eclipse插件使Eclipse支持众多的目标微控制器的开发调试. 这里是它的主页
它的作者整合打包了一份Eclipse, 我们就不用自行安装插件了, 下载地址:
https://github.com/gnu-mcu-eclipse/org.eclipse.epp.packages/releases/
下载压缩包 64位系统建议选择win32.x86_64
32位系统选择win32.x86
eclipse选x86或x64必须和JRE相同 否则无法运行
如果提示没有安装JRE 可以尝试重启及检查PATH环境变量有没有包含JRE路径
3. 下载arm工具链(GNU ARM Embedded Toolchain)
https://launchpad.net/gcc-arm-embedded
工具链包括编译器(gcc)/调试器(gdb)等一系列目标平台相关的工具, 以实现交叉编译.
这里解释一下工具链名称前缀arm-none-eabi-
:
1 | arm: ARM平台 |
4. windows下的Build tools安装
https://github.com/gnu-mcu-eclipse/windows-build-tools/releases
Build Tools主要为windows提供unix中一些构建相关的基本工具, 比如make, 它可以通过读取makefile脚本调用以上工具链来完成编译.
P.S. makefile脚本可以由Eclipse的CDT插件自动生成, 也可以由autotools,cmake等更高级的构建工具生成, 一般不手工编写.
P.S.
如果Build Tools无法在你的环境中正常工作 你可以选择使用MSYS2作为这里的Build Tools.
5. Eclipse中的设置
菜单Windows - Preferences
进入设置.
MCU - Global Build Tools Path
填入之前安装好的Build Tools路径MCU - Global ARM Toolchains Path
填入之前安装好的工具链路径
到这里应该可以正常编译了
6. 尝试编译helloworld
新建C Project, 选择
菜单”Build - Build Project”编译, Console中出现以下输出则环境配置成功:
Jlink调试
1. 安装jlink软件包
https://www.segger.com/jlink-software.htmlJ-Link Software and Documentation Pack
中下载新版驱动
有时候新版本驱动无法很好地和eclipse中调试插件共同工作, 可以尝试使用稍旧的版本.
2. Debug设置
进入Debug Configurations 双击”GDB SEGGER J-Link Debugging”创建新的debug设置
这里检查下C/C++ Application
、Device name
是否都填上:
1 | C/C++ Application: 编译好的ELF文件 |
如果你不关心semihosting和swo的用途 建议先把相关选项关掉 比如Debugger中Allocate console for semihosting and SWO
Startup中Enable SWO
Enable semihosting
3. 尝试调试
配置完成后尝试运行调试, 如果配置正确, eclipse会帮你启动一个jlink gdb server以及gdb client, 如果能进行单步调试等操作, 说明配置成功.
P.S. 使用OpenSDA等其他调试器的环境搭建 可以参考这篇文章