打造最强Eclipse,搭建嵌入式开发环境(AVR)

前言

      因为我是一名搞嵌入式单片机开发攻城狮,我在自己使用的IDE上会花一些心思来优化升级它,以求更高的效率解决问题。

“工欲善其事必先利其器”,从入行到现在也用了很多的编辑器/IDE,从在学校里用的Notepad++到UeStudio到VS 2013等等,

每一次发现一个心得好用的功能都能让我编程的速度更快一步。

  在网上搜索了许久,发现关于Eclipse方面的资料实在太少不完整,因此便有了这篇博文,我们的每一点分享最终可以汇聚

成一片汪洋。为便于检索,转载请注明出处(http://www.cnblogs.com/ccword/p/4636105.html)。

     UeStudio大概用了2年多,我翻遍它的每一个角落来针对我的需求来优化,但毕竟它是一款付费封闭的编辑器,渐渐不能

满足我的需求,趁现在空闲,在网上冲了许久的浪花之后,几经比较,最终选择了Eclipse

使用Eclipse管理嵌入式开发工程的优点:

1.开源 

这一点相当重要,这样我就能更好的优化它,万一有个功能我很想用,哪怕是修改都有代码可改,是吧!

2.第三方插件特别丰富

而且也都是开源的。尽管其中不少插件都N多年未更新,但这些依然很好用。

3.条件编译区别显示

能对条件编译的代码段区别显示 未配置的功能段一目了然。

4.代码自定义格式化

由于经常性的接收、浏览别人的代码,使用这个功能一键格式化为自己常用的格式,极其便利。

5.引用位置检索

方便检查函数的使用

6.编译方便

能引用其他编译器,处理编译结果。

7.总结一点,就是好用!

 

软件安装列表

ECLIPS     http://www.eclipse.org/  选择Eclipse IDE for C/C++ Developers 版本,由于最新版本还未更新中文语言包,所以我下载了Luna版本

WINWVR  http://winavr.sourceforge.net/index.html 使用GCC编译器

MinGW     http://www.mingw.org/  用来测试局部的C代码时使用,可不安装。由于微软始终拒绝对C的完全支持,所以当前MinGW是最好的选择,当然你也可以选择CodeBlocks、C-free等等

以上安装都比较简单,在网上检索相关博客即可,需要注意的是要添加必要的系统环境变量。为此我使用批处理脚本做了一个插件,敬请期待我的其他博文。

推荐其他相关博文:

搭建Eclipse IDE AVR开发平台

搭建AVR-C语言开发环境eclipse+winavr

eclipse 环境搭建_百度经验

我将其分别安装在D:\CODE\MinGW   D:\CODE\eclipse-Luna目录下,这样便于管理

我的Eclipse必备插件列表: 

AVR-Eclipse       辅助配置AVR项目          http://avr-eclipse.sourceforge.net/updatesite
Luna语言包        (目前Mars版本不支持)     http://download.eclipse.org/technology/babel/update-site/R0.12.1/luna
ColorCode         代码着色插件                http://colorer.sf.net/eclipsecolorer/
easy Explorer    打开项目文件所在位置     http://sourceforge.net/projects/easystruts/
Regex Util         正则表达式辅助设计工具  http://regex-util.sourceforge.net/update/
Subversive Site 版本控制SVN插件          http://download.eclipse.org/technology/subversive/3.0/update-site/
git 版本控制GitHub插件                         http://download.eclipse.org/egit/updates/

 注:以上提供的网址均为当前最新可用版本(2015-07-11),其中很多插件均很久不做更新,所以用这个就可以了。

另外,你也可以通过下面的方法自动查找最新版本:Help->Eclipse Marketplace,在里面搜索插件。

再另,检查Help->Install New Software中的源列表也可以发现一些新玩意。

 使用技巧备忘

1.安装ECLIPS插件后,重启软件才能应用。

偶尔遇到搞不清的问题时,重启Eclipse是一个不错的选择。

2.编译前自动保存 

To activate Autosave open the Eclipse Preferences (Window > Preferences...) and select General -> Workspace. Here the Save automatically before build option can be enabled.

3.修改标示解析设定

   Windows->首选项 -> C/C++  -> Indexer 撤销Index source files not includeed in the build选项。

   当按F3出现跳转异常时(跳到未编译的代码部分),大部分也是因为这个原因,撤销该选项后,无效代码段的定义均不在引用,需要查找是使用全工程检索更方便。

4.由于RemoteSystemsTempFiles项目总是自动生成,怎么删除掉?

   A.打开Windows-->Preferences-->General-->Startup and Shutdown将“RSE UI”的选中状态去掉,关闭Eclipse;
   B.打开Eclipse工作空间将“RemoteSystemsTempFiles”项目删除掉后再启动Eclipse程序,就不会再自动生成了。

   这个东西是用来做远程文件本地缓存使用的,建议不要删除。eclipse有一个“Remote System ExExplorer”的Perspective,里边有FTP、ssh、Linux、Unix、Windows、Telnet等各种远程终端功能,这些功能依赖于“RemoteSystemsTempFiles”。

5.保存时删除行尾空格

    Window > Preferences > Editor 勾选Remove trailing whitespace 

6.显示打印页边距 

    Window > Preferences > Editor 勾选显示打印页边距

7.以上设置及其他设置敬请期待我的下一篇博文《打造自己专用的Eclipse个性化设置》。

 

针对AVR相关项目的一些备忘事宜:

1.创建AVR项目

   选择第一种,常规模式(AVR Cross Target Applications),第二种为通用的库模板(AVR Cross Target Static Library)

2.项目属性

由于使用AVR-ECLIPSE插件配置的makefile文件编译后除了一些未能解决的问题,所以我推荐对创建的项目做如下设置,我们使用手动创建或AVR Studio创建的makefile编译工程。

  打开项目属性, 

C/C++ Build 撤销Gernerate Makefiles automatically选项

C/C++ Build-》Bulider Settings 中的Build location 改到default文件夹

C/C++ General-》Path and Symbols 中的include选项卡下添加项目引用(如果你的工程中又分文件夹管理)

 3. 编译前指令               

 Open the project properties, go to C/C++ Build > Settings > Build Steps and set the following as the Pre-build steps command:

-avr-size --format=avr ==mcu=${AVRTARGETMCU} ${BuildArtifactFileName}

4.编译后指令

Open the project properties, go to C/C++ Build > Settings > Build Steps and set the following as the Pre-build steps command:

avr-objcopy -R .eeprom -O binary ${BuildArtifactFileName}  ${BuildArtifactFileBaseName}.bin

5.使用AVR-Eclipse创建makefile文件,其同AS的差别如下:

1、项目属性页面要设置优化选项为-0s

2、编译后,发现文件略大于AS设置的makefile的结果,比较设置后发现以下不同

     ASMFLAGS +=-Wa,-gdwarf2

     CFLAGS += -g2 -ffunction-sections

     缺

     CFLAGS += -MD -MP -MT $(*F).o -MF dep/$(@F).d 

     使用AVR-Eclipse插件创建的工程,编译后文件较大,不能运行

记录:

文件抬头

/* --------------------------------------------------------------------
* Copyright (C), ${year},c.w.CoderP. [email protected]
* file_name:${file_name}
*    Author: ${user}
*  Created : ${date} ${time}
* GCC Vers : GNU Make 3.81
* @version : 1.0.0
* Description:
*
* ------------------------------------------------------------------- */

 

其他插件备忘录:

以下内容收集自互联网,未进行整理,所以你又兴起的话可以慢慢进行发掘。

1.MyEclipse  J2EE开发插件,支持SERVLET/JSP/EJB/数据库操纵等

www.myeclipseide.com

2.Properties Editor编辑java的属性文件,并可以自动存盘为Unicode格式

http://propedit.sourceforge.jp/index_en.html

3.Colorer Take为上百种类型的文件按语法着色

http://colorer.sourceforge.net/

4.XMLBuddy 编辑xml文件

www.xmlbuddy.com

5.Code Folding 加入多种代码折叠功能(比eclipse自带的更多)

http://www.coffee-bytes.com/servlet/PlatformSupport

6.Easy Explorer 从eclipse中访问选定文件、目录所在的文件夹

http://easystruts.sourceforge.net/

7.Fat Jar 打包插件,可以方便的完成各种打包任务,可以包含外部的包等

http://fjep.sourceforge.net/

8.RegEx Test 测试正则表达式

http://brosinski.com/stephan/archives/000028.php

9.JasperAssistant 报表插件(强,要钱的)

http://www.jasperassistant.com/

10.Jigloo GUI Builder JAVA的GUI编辑插件

http://cloudgarden.com/jigloo/

11.Profiler 性能跟踪、测量工具,能跟踪、测量BS程序

http://sourceforge.net/projects/eclipsecolorer/

12.AdvanQas 提供对if/else等条件语句的提示和快捷帮助(自动更改结构等)

http://eclipsecolorer.sourceforge.net/advanqas/index.html

13.Log4E Log4j插件,提供各种和Log4j相关的任务,如为方法、类添加一个logger等

http://log4e.jayefem.de/index.php/Main_Page

14.VSSPlugin VSS插件

http://sourceforge.net/projects/vssplugin

15.Implementors 提供跳转到一个方法的实现类,而不是接中的功能(实用!)

http://eclipse-tools.sourceforge.net/implementors/

16.Call Hierarchy 显示一个方法的调用层次(被哪些方法调,调了哪些方法)

http://eclipse-tools.sourceforge.net/call-hierarchy/index.html

17.EclipseTidy 检查和格式化HTML/XML文件

http://eclipsetidy.sourceforge.net/

18.Checkclipse 检查代码的风格、写法是否符合规范

http://www.mvmsoft.de/content/plugins/checkclipse/checkclipse.htm

19.Hibernate Synchronizer Hibernate插件,自动映射等

http://www.binamics.com/hibernatesync/

20.VeloEclipse Velocity插件

http://propsorter.sourceforge.net/

21.EditorList方便的列出所有打开的Editor

http://editorlist.sourceforge.net/

22.MemoryManager内存占用率的监视

http://cloudgarden.com/memorymanager/

plug-in网址:

http://www.eclipse-plugins.info/eclipse/index.jsp

http://www.eclipse-workbench.com/jsp/

http://eclipse-plugins.2y.net/eclipse/index.jsp (非常非常著名的插件更新网站)

http://www.crionics.com/products/opensource/eclipse/eclipse.jsp (分类清楚)

http://www.eclipseplugincentral.com/

Preferences无法显示新安装的插件的解决办法

删除C:/eclipse/configuration/org.eclipse.update下的platform.xml文件,重新启动Eclipse

perl插件 http://e-p-i-c.sf.net/updates

  FreeMarker IDE 是一个FreeMarker(模板引擎)感知编辑器,支持:语法高亮显示(Syntax Hilighting)、内容辅助(Content Assist)、大纲视图(Outline View)。其主页上提供了如何使用该插件进行开发的Flash视频。FreeMarker还有另外一个插件FreeMarker Eclipse Plugin。

官方网站:http://freemarker-ide.sourceforge.net/
插件下载URL:http://sourceforge.net/projects/freemarker-ide/files/

C#插件 http://www.improve-technologies.com/alpha/updates/site.xml

C插件 http://update.eclipse.org/tools/cdt/releases/new

Hex插件 http://ehep.sourceforge.net/update

Eclipse加速插件KeepResident

http://suif.stanford.edu/pub/keepresident/

原理:利用两个 Windows API-SetProcessWorkingSetSize与VirtualLock(适用于Windows平台)。

切换时果然快很多。

官方建议最小值设定在100MB,最大值250MB左右。

 

你可能感兴趣的:(Eclipse,AVR,AVR,eclipse)