基于GNU ARM Eclipse的集成环境搭建

背景

老师送给我的STM32的板子不小心给我坏了,现在疫情还没过去,为了复习巩固stm32有关的移植,只能先玩玩仿真了。

我们在这一讲主要以搭建环境为主。

host平台   :Ubuntu 16.04

GNU ARM Eclipse 介绍

GNU ARM官网:https://gnu-mcu-eclipse.github.io/

GNU ARM Eclipse是在eclipse的基础上集成了编辑器,编译器,调试器,下载器(JLINK),模拟器,跟踪器的整套环境。

可以非常方便的在一个窗口完成绝大部分操作。

以下操作均在windows上验证,不保证但是有很大可能支持linux
为了方便懒人们,本博文有下载链接和下载页面。
如果时间久远版本迭代,请自行前往下载页面。

现在开始英文阅读环节

1. 安装JAVA和eclipse

(话说最新的eclipse的版本号怎么是氧气吖?)

2. 安装GNU ARM-plugin

推荐使用update site方式,Marketplace我试了好像不行。
选的时候我反正一股脑的都选上了,高玩们可以根据自己的需求选择。
以后缺了可以再装了。
Tutorial of GNU ARM-plugin
不推荐去官网上下载安装包,因为我试了好几次都没成功。毕竟github.io不是一个网盘。

3. 安装GNU ARM Embedded

这个是arm的交叉编译器(可能还有个gdb在里面?)
Linux请使用apt-get install gcc-arm-none-eabi gdb-arm-none-eabi(适用于Ubuntu,其他linux请自行考虑)
Tutorial of GNU ARM Embedded
虽然教程里一再强调了不要装在奇怪的路径,但是我还是装在了奇怪的路径,最后会有找不到文件的解决办法
Download Page
[Download gcc-arm-none-eabi-6-2017-q2-update-win32.exe(这好像是个动态链接,最好进上面的下载页面自行下载(对了,没有64位))](https://developer.arm.com/-/media/Files/downloads/gnu-rm/6-2017q2/gcc-arm-none-eabi-6-2017-q2-update-win32.exe?revision=5be44457-9afb-4a2c-9575-3297fbe4f0f9?product=GNU Arm Embedded Toolchain,32-bit,,Windows,6-2017-q2-update)

4. 安装Windows Build Tools

这个是为了在windows下也能用make等编译指令的工具。
linux请忽略!
linux请忽略!
linux请忽略!
Tutorial of Windows Build Tools
同理,虽然教程里一再强调了不要装在奇怪的路径,但是我还是装在了奇怪的路径,最后会有找不到文件的解决办法
Download page
Download gnu-mcu-eclipse-build-tools-2.9-20170629-1013-win64-setup
Download gnu-mcu-eclipse-build-tools-2.9-20170629-1013-win32-setup

5. 安装Qemu

这个是一个PC端的虚拟机,虽然支持不是很好,(至少STM32F429I-Discovery是的),至少能用
Tutorial of Qemu
Download Page
最新版没有windows的,好气啊(debian就是linux)
同上,虽然教程里一再强调了不要装在奇怪的路径,但是我还是装在了奇怪的路径,最后会有找不到文件的解决办法
Download gnuarmeclipse-qemu-win64-2.8.0-201612271623-dev-setup.exe
Download gnuarmeclipse-qemu-win32-2.8.0-201612271623-dev-setup.exe
Download gnuarmeclipse-qemu-debian64-2.8.0-201703022210-head.tgz
Download gnuarmeclipse-qemu-debian32-2.8.0-201703022210-head.tgz

6. 安装JLINk工具包

这个是一个JLINK的接口,可以自动下载程序,在线调试,在线运行。(可能还有更多高级功能,我也不清楚)
Tutorial of JLINK
再说一遍,虽然教程里一再强调了不要装在奇怪的路径,但是我还是装在了奇怪的路径,最后会有找不到文件的解决办法
Download Page
Download JLink_Windows_V620c.exe
linux的有点多我就不贴了。

7. 安装Tracealyzer

对实时操作系统可以进行跟踪,并保存用于分析。但是不能实时观看
Download Page
Download Tracealyzer for FreeRTOS(HOST)
Integrating the Recorder
务必定义#define TRC_CFG_ARM_CM_USE_SYSTICK,在trcConfig.h:151之前。
否则,在Qemu里面仿真的时候没会有时间标签,生成的Snapshot无法打开。
在板子上运行时会出现传输时不稳定,任务的时间标签不正确。
我所遇见的现象是很简单的任务运行了很长的时间,没有中断,没有其他任务去打断,而且有大段时间没有任务执行。
加上TRC_CFG_ARM_CM_USE_SYSTICK后问题解决。

至此安装过做完成,可以试一下GNU ARM提供的样例binkly。

https://gnu-mcu-eclipse.github.io/tutorials/blinky-arm/

如果找不到路径,在菜单栏里找到:窗口->首选项,就可以逐一设置每个部件的路径了。

img

ST-LINK环境

STM32F429I-Discovery自带ST-LINK,但是上面的都是针对JLINK的。
如果想直接用STLINK,请安装STLINK Utility
Tutorial of STLink

STLink可以升级为JLink
Tutorial of update
Download Page
Download STLinkReflash

原文地址:https://www.cnblogs.com/schips/p/12346022.html