基于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/
如果找不到路径,在菜单栏里找到:窗口->首选项,就可以逐一设置每个部件的路径了。
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. GNU ARM Eclipse
原文链接: GNU ARM Eclipse GNU 介绍: GNU 计划,又称革奴计划,是由RichardStallman在1983年9月27日公开发起的.它的目标是创建一套完全自由的操作系统.Ric ...
- 【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 ...
- 构建基于Jenkins + Github的持续集成环境
搭建持续集成首先要了解什么是持续集成,带着明确的目标去搭建持续集成环境才能让我们少走很多弯路.持续集成(Continuous integration)简称CI,是一种软件开发的实践,可以让团队在持续集 ...
- Eclipse swt开发环境搭建
原料: eclipse swt.下载链接为: Eclipse 4.6.2 Release Build: 4.6.2 配置说明: Developing SWT applications using Ec ...
- Eclipse JSP/Servlet 环境搭建
Eclipse JSP/Servlet 环境搭建 本文假定你已安装了 JDK 环境,如未安装,可参阅 Java 开发环境配置. 我们可以使用 Eclipse 来搭建 JSP 开发环境,首先我们分别下载 ...
- Solr4.8.0源码分析(4)之Eclipse Solr调试环境搭建
Solr4.8.0源码分析(4)之Eclipse Solr调试环境搭建 由于公司里的Solr调试都是用远程jpda进行的,但是家里只有一台电脑所以不能jpda进行调试,这是因为jpda的端口冲突.所以 ...
- eclipse python开发环境搭建
eclipse python开发环境搭建[非原创] 1.在www.eclipse.org官网下载Eclipse Classic 4.2.2,Win7 64位下载eclipse-SDK-4.2.2-wi ...
- ECLIPSE JSP TOMCAT 环境搭建
ECLIPSE JSP TOMCAT 环境搭建(完整) 要学习一门语言,首先要做的就是搭建环境,然后能写一个小的Demo(类似Helloworld),不仅可以建立信心,而且还可以为之后的学习搭建一个验 ...
- Linux下Jenkins+git+gradle持续集成环境搭建
Linux下Jenkins+git+gradle持续集成环境搭建 来源:IT165收集 发布日期:2014-08-22 21:45:50 我来说两句(0)收藏本文 一.项目介绍 和 linux ...
- JSP-Runood:Eclipse JSP/Servlet 环境搭建
ylbtech-JSP-Runood:Eclipse JSP/Servlet 环境搭建 1.返回顶部 1. Eclipse JSP/Servlet 环境搭建 本文假定你已安装了 JDK 环境,如未安装 ...
随机推荐
- 一分钟部署 Llama3 中文大模型,没别的,就是快
前段时间百度创始人李彦宏信誓旦旦地说开源大模型会越来越落后,闭源模型会持续领先.随后小扎同学就给了他当头一棒,向他展示了什么叫做顶级开源大模型. 美国当地时间4月18日,Meta 在官网上发布了两款开 ...
- Solution Set - Splay
A[洛谷P3369]维护集合,支持插入,删除,查询\(x\)的排名,查询排名\(x\)的数,查询前驱,查询后继. B[洛谷P3391]维护一个序列,支持区间翻转. C[洛谷P3380]维护数列,支持单 ...
- SqlServer2008R2 在开始菜单中找不到配置管理器
直接找到C:\Windows\SysWOW64\SQLServerManager10.msc,打开即可.
- 简说python之批量操作主机
目录 Python批量操作主机 安装paramiko模块 远程ssh控制主机 目前,很多的工作都是批量的操作Linux主机.通过python脚本,封装Linux的shell命令.保证批量操作,简易优化 ...
- GitLab 管理 NuGet 包
1 概览 在服务器上构建项目时,需要引用 nuget.org 之外的包,如公司内部开发的.第三方未发布到 nuget.org 上的.怎么办? GitLab 提供了 Package Registry 来 ...
- Selenium4自动化测试2--元素定位By.ID,By.CLASS_NAME,By.TAG_NAME
三.元素定位方式 1-通过id定位,By.ID id属性在HTML中是唯一的,因此使用id定位可以确保找到页面上唯一的元素. 由于id是唯一的,浏览器在查找元素时可以快速定位到目标元素,提高了定位的效 ...
- Delaunay三角剖分实现
参考文章:https://www.cnblogs.com/zhiyishou/p/4430017.html 本文使用逐点插入法进行剖分,并使用Unity3D实现. 通过阅读文章<Triangul ...
- 使用Redis实现短信登陆
使用Redis实现发送验证码:验证码登陆.注册:登陆校验拦截.登陆状态刷新等一系列问题. 验证码发送和验证登陆注册 思路流程 整体的思路以及流程如题: 代码实现 实体类 User实体类 @Data @ ...
- Servlet转发与重定向的资源路径问题解析
一. 问题引入 转发和重定向可以说是Servlet中最重要的知识点也不为过,因为它决定着整个向Servlet体系中,执行流程的问题. 转发: request.getRequestDispat ...
- 授权调用: 介绍 Transformers 智能体 2.0
简要概述 我们推出了 Transformers 智能体 2.0! ⇒ 在现有智能体类型的基础上,我们新增了两种能够 根据历史观察解决复杂任务的智能体. ⇒ 我们致力于让代码 清晰.模块化,并确保最终提 ...