最近项目不忙,想着没事看看简单的嵌入式,弄弄物联网什么的。于是就从廉价的STM32开刀了。因为一直是做PC软件开发的,那VS的智能感知那叫一个爽啊,相比之下,觉得这个Keil简直就像文本编辑器一样low。于是想换一个开发环境,就把矛头指向了Eclipse,以前PC开发也正好用过。(其实拿他写C++也是一样low,IDE界VS世界第一 o( ̄ε ̄*)

  • 环境搭建

  1. Eclipse
        这是一个IDE的框架,去它的官网就可以下载了(http://www.eclipse.org/downloads/),要下载这个“Eclipse IDE for C/C++ Developers”,优先64位的,电脑不支持64位的话,就下载32位。这个解压就可以使用了,无需安装。

        如果不能运行的话,应该是没有安装JAVA运行环境,去官网下载安装即可(http://www.oracle.com/technetwork/java/javase/downloads/index.html)。

  2. GNU ARM Eclipse Plug-in
        要搭建针对ARM的开发环境还需要下载针对ARM开发的插件,这样才能够新建针对ARM开发的项目,这里使用GNU ARM Eclipse Plug-in,下载地址如下: http://sourceforge.net/projects/gnuarmeclipse/
        话说你们知道怎么安装吧,“Help”-“Install New Software”-“Add”-“Archive”,安装时候最好断网,因为他好像会检查更新那就非常尴尬了。

  3. 编译器
        GNU ARM Eclipse Plug-in支持的编译器还是比较多的,这里这列出几个我知道的下载地址:
    ·GNU Tools for ARM Embedded Processors,下载https://launchpadlibrarian.net/231144227/gcc-arm-none-eabi-5_2-2015q4-20151219-win32.exe
    ·Yagarto,官网http://www.yagarto.org/,下载https://sourceforge.net/projects/yagarto/

  4. 一般教程到这就基本结束了,但是这样生成的工程会出现这样的错误:
    "make" not found in PATH ,"echo" not found in PATH

    所以要加上下面的步骤

  5. mingw
    我也不知道为什么要下这个,反正没有就算不行。官网http://www.mingw.org/,下载http://www.xiazaiba.com/html/29981.html
    解压后,还有给Eclipse添加PATH环境变量,“Window”-“Preference”

最后分享一张点亮LED的成果(8块钱的STM32F0是在对不起了)

  • 其实还有一种不用这么折腾的方法,就是下载ST公司的“System Workbench for STM32”,它也是基于Eclipse集成好的IDE。

    但是我用它编译的bin文件,没法下载到单片机上,提示“程序文件不是0x8000000和0x20000000区域的”,不知道为什么,尚未解决。

基于Eclipse搭建STM32开源开发环境的更多相关文章

  1. Eclipse + CDT + YAGARTO + J-Link,STM32开源开发环境搭建与调试

    Eclipse+CDT+YAGARTO+J-Li:开源开发环境搭建与调试:作者:Chongqing:邮箱:ycq.no1@163.com:文档版本:V1.0:发布日期:2014-08-04:前言:此文 ...

  2. 基于Eclipse的Hadoop应用开发环境配置

    基于Eclipse的Hadoop应用开发环境配置 我的开发环境: 操作系统ubuntu11.10 单机模式 Hadoop版本:hadoop-0.20.1 Eclipse版本:eclipse-java- ...

  3. 基于Eclipse搭建Hadoop源码环境

    Hadoop使用ant+ivy组织工程,无法直接导入Eclipse中.本文将介绍如何基于Eclipse搭建Hadoop源码环境. 准备工作 本文使用的操作系统为CentOS.需要的软件版本:hadoo ...

  4. 使用Eclipse搭建C/C++开发环境(转)

    使用Eclipse搭建C/C++开发环境  文章出自:http://www.cnblogs.com/liuxianan/archive/2013/01/15/2861196.html 说明:网上有很多 ...

  5. spring练习,在Eclipse搭建的Spring开发环境中,使用set注入方式,实现对象的依赖关系,通过ClassPathXmlApplicationContext实体类获取Bean对象

    相关 知识 >>> 相关 练习 >>> 实现要求: 在Eclipse搭建的Spring开发环境中,使用set注入方式,实现对象的依赖关系,通过ClassPathXm ...

  6. spring练习,使用Eclipse搭建的Spring开发环境,属性注入通过构造方法方式实现,模拟用户的正常登录。

    相关 知识 >>> 相关 练习 >>> 实现要求: 使用Eclipse搭建的Spring开发环境,属性注入通过构造方法方式实现,模拟用户的正常登录.要求如下: 通过 ...

  7. sping练习,在Eclipse搭建的Spring开发环境中,使用工厂方式创建Bean对象,将创建的Bean对象输出到控制台。

    相关 知识 >>> 相关 练习 >>> 实现要求: 在Eclipse搭建的Spring开发环境中,使用工厂方式创建Bean对象,将创建的Bean对象输出到控制台.要 ...

  8. spring练习,使用Eclipse搭建的Spring开发环境,使用set注入方式为Bean对象注入属性值并打印输出。

    相关 知识 >>> 相关 练习 >>> 实现要求: 使用Eclipse搭建的Spring开发环境,使用set注入方式为Bean对象注入属性值并打印输出.要求如下: ...

  9. HBase学习----windows10下使用eclipse搭建HBase的开发环境

    以下是我搭建HBase开发环境的一些心得(windows10) 0.安装JDK和eclipse和一个可用的HBase. 这步是最基础的,在此就不赘述了 1.创建一个java项目: 基础问题,不赘述. ...

随机推荐

  1. 工作单元模式(UnitOfWork)学习总结

    工作单元的目标是维护变化的对象列表.使用IUnitOfWorkRepository负责对象的持久化,使用IUnitOfWork收集变化的对象,并将变化的对象放到各自的增删改列表中, 最后Commit, ...

  2. MySQL修改默认字符集

    今天朋友在做某个程序项目时,需要修改MySQL修改默认字符集,搞不好找我帮忙.百度了试了好几篇博文中的方法,最后终于成功了.但是感觉那些博文思路有点乱,所以自己总结下,希望可以帮到遇到同样问题的人. ...

  3. 一:验证微信的Token

    前言:申请到微信公众号的同学,可能会挺感兴趣的,毕竟微信公众号,确实是一个好东西,它提供了一个很好的平台,而且它自带有一套管理模板,对于微信公众号可以很好的管理. 但是也仅仅是很好的管理,因为作为开发 ...

  4. tomcat6类加载器与类加载顺序

    tomcat6.0.32 com.dyyx.ShareUtils//返回系统当前时间public static String now(); package com.dyyx;import java.t ...

  5. Windows Azure HandBook (3) 浅谈Azure安全性

    <Windows Azure Platform 系列文章目录> 2015年3月5日-6日,参加了上海的Azure University活动.作为桌长与微软合作伙伴交流了Azure相关的技术 ...

  6. [SDK2.2]Windows Azure Virtual Network (5) 重启、关闭、开启VNet中Virtual Machine

    <Windows Azure Platform 系列文章目录> 我们知道,Windows Azure VM的IP分为以下两种:Internal IP Address和Public VIP ...

  7. 绘制SVG内容到Canvas的HTML5应用

    SVG与Canvas是HTML5上绘制图形应用的两种完全不同模式的技术,两种绘制图形方式各有优缺点,但两者并非水火不容,尤其是SVG内容可直接绘制在Canvas上的功能,使得两者可以完美的融合在一起, ...

  8. HT for Web可视化QuadTree四叉树碰撞检测

    QuadTree四叉树顾名思义就是树状的数据结构,其每个节点有四个孩子节点,可将二维平面递归分割子区域.QuadTree常用于空间数据库索引,3D的椎体可见区域裁剪,甚至图片分析处理,我们今天介绍的是 ...

  9. angularJs指令深度分析

    AngularJs的指令定义大致如下 angular.module("app",[]).directive("directiveName",function() ...

  10. Microsoft Orleans 之 入门指南

    Microsoft Orleans 在.net用简单方法构建高并发.分布式的大型应用程序框架. 原文:http://dotnet.github.io/orleans/ 在线文档:http://dotn ...