背景

老师送给我的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/

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

ST-LINK环境

STM32F429I-Discovery自带ST-LINK,但是上面的都是针对JLINK的。

如果想直接用STLINK,请安装STLINK Utility

Tutorial of STLink

STLink可以升级为JLink

Tutorial of update

Download Page

Download STLinkReflash

基于GNU ARM Eclipse的集成环境搭建的更多相关文章

  1. 简单翻译和补充:1. GNU ARM Eclipse

    原文链接: GNU ARM Eclipse GNU 介绍: GNU 计划,又称革奴计划,是由RichardStallman在1983年9月27日公开发起的.它的目标是创建一套完全自由的操作系统.Ric ...

  2. 【ARM-Linux开发】在win下开发的eclipse+yougatoo+jlink环境搭建

    在win下开发的eclipse+yougatoo+jlink环境搭建 一 工具的安装 第一步:安装gcc编译工具 yagarto-bu-2.21_gcc-4.6.2-c-C++_nl-1.19.0_g ...

  3. 构建基于Jenkins + Github的持续集成环境

    搭建持续集成首先要了解什么是持续集成,带着明确的目标去搭建持续集成环境才能让我们少走很多弯路.持续集成(Continuous integration)简称CI,是一种软件开发的实践,可以让团队在持续集 ...

  4. Eclipse swt开发环境搭建

    原料: eclipse swt.下载链接为: Eclipse 4.6.2 Release Build: 4.6.2 配置说明: Developing SWT applications using Ec ...

  5. Eclipse JSP/Servlet 环境搭建

    Eclipse JSP/Servlet 环境搭建 本文假定你已安装了 JDK 环境,如未安装,可参阅 Java 开发环境配置. 我们可以使用 Eclipse 来搭建 JSP 开发环境,首先我们分别下载 ...

  6. Solr4.8.0源码分析(4)之Eclipse Solr调试环境搭建

    Solr4.8.0源码分析(4)之Eclipse Solr调试环境搭建 由于公司里的Solr调试都是用远程jpda进行的,但是家里只有一台电脑所以不能jpda进行调试,这是因为jpda的端口冲突.所以 ...

  7. eclipse python开发环境搭建

    eclipse python开发环境搭建[非原创] 1.在www.eclipse.org官网下载Eclipse Classic 4.2.2,Win7 64位下载eclipse-SDK-4.2.2-wi ...

  8. ECLIPSE JSP TOMCAT 环境搭建

    ECLIPSE JSP TOMCAT 环境搭建(完整) 要学习一门语言,首先要做的就是搭建环境,然后能写一个小的Demo(类似Helloworld),不仅可以建立信心,而且还可以为之后的学习搭建一个验 ...

  9. Linux下Jenkins+git+gradle持续集成环境搭建

    Linux下Jenkins+git+gradle持续集成环境搭建 来源:IT165收集  发布日期:2014-08-22 21:45:50 我来说两句(0)收藏本文   一.项目介绍 和 linux ...

  10. JSP-Runood:Eclipse JSP/Servlet 环境搭建

    ylbtech-JSP-Runood:Eclipse JSP/Servlet 环境搭建 1.返回顶部 1. Eclipse JSP/Servlet 环境搭建 本文假定你已安装了 JDK 环境,如未安装 ...

随机推荐

  1. 模型压缩与部署-书生浦语大模型实战营学习笔记5&大语言模型11

    大语言模型-11.模型压缩与部署 书生浦语大模型实战营学习笔记4-模型压缩与部署 本文包括第二期实战营的第5课内容,介绍关于模型压缩的相关内容,主要包括.模型量化和模型部署的相关内容. 模型部署 定义 ...

  2. ls的输出格式

    在Linux中,如果在一个目录下面执行ls -al命令,输出格式如下: ls -al总共输出7列,下面对每一列进行说明. 第一列表示这个文件的权限与类型,它总共有10位,每个位的作用如下图所示: 其中 ...

  3. HTTP 结构概述

    Web 客户端和服务器 Web 内容都是存储在 Web 服务器上的,Web 服务器所使用的是 HTTP 协议,因此经常被称为 HTTP 服务器,HTTP 服务器存储了因特网的数据.客户端向服务器发送 ...

  4. leaflet 使用kriging.js实现前端自定义插值

    1.GitHub地址:https://github.com/oeo4b/kriging.js 2.核心代码 var variogram = kriging.train(t, x, y, model, ...

  5. JDK源码阅读-------自学笔记(七)(二维数组的浅析)

    实际开发中一般最多使用到二维数组,再高很少使用 二维数组很少用,实际开发中会使用容器代替使用 1.创建二维数组 1 // 二维数组初始化 2 int[][] secondDimensional = n ...

  6. OpenTelemetry agent 对 Spring Boot 应用的影响:一次 SPI 失效的

    背景 前段时间公司领导让我排查一个关于在 JDK21 环境中使用 Spring Boot 配合一个 JDK18 新增的一个 SPI(java.net.spi.InetAddressResolverPr ...

  7. MATLAB txt文件抽稀并分为多个txt文件

    chouxi.m a = load("file.txt"); % len = length(a); interval = 9;%间隔+1 b = a(1:interval:end, ...

  8. Django自定义模板标签与过滤器

    title: Django自定义模板标签与过滤器 date: 2024/5/17 18:00:02 updated: 2024/5/17 18:00:02 categories: 后端开发 tags: ...

  9. MLOps 学习之旅「GitHub 热点速览」

    又是 AI 神仙打架的一周,上周 OpenAI 发布了最新的 GPT-4o 模型,而谷歌也紧跟着开源了 Gemma 2 模型.随着 AI 大模型不断地变强,各大科技巨头正利用它们重塑自家的产品,这也让 ...

  10. Linux下mv和cp命令的区别

    1.功能上的区别 ​ mv:用户可以使用mv为文件或目录重命名或将文件由一个目录移入另一个目录中. ​ cp: cp的功能是将给出的文件或目录拷贝到另一文件或目录中. 2.inode上的区别(inod ...