原创 Elipse中整合AVR32的支持

2008-12-20 14:38 4536 3 3 分类: MCU/ 嵌入式

Atmel提供的AVR32Studio是一个完成的配置好的Eclipse环境。即使电脑上已经安装了Eclipse环境,还需要再安装一份按照AVR32的Toolchain配置的Eclipse。一点都不绿色和谐,不适合中国特色的可持续发展,违背了D和人民的期望。固,就由偶来操刀,好好d修理它一下。

【需要下载的软件】
自然就是AVR32Studio和Eclipse了,使用最新版本,偶不怀旧。

【配置步骤】
1.安装这2个环境。诶,目前还是都需要安装,之后会把一些文件从AVR32Studio里拷贝到Eclipse里,配置完成后,就可以删除AVR32Studio了。
2.升级Eclipse,增加GDB支持(建议从最新的升级):
Help-->Software Updates-->Available software-->http://download.eclipse.org/tools/cdt/releases/ganymede(要等一会儿)-->CDT Optional Features-->Eclipse C/C++ GDB Hardware Debugging,选上后,Install。
3.设置Eclipse.Common的参数
把Eclipse安装目录中的configuration目录改为configuration.common。修改eclipse.ini,在最前面加上(注意是2行):
-configuration
D:\ProfessionalTools\eclipse\configuration.common
这样,双击eclipse.exe还是可以正常运行。
4.拷贝文件(把AVR32Studio里的文件拷贝到Eclipse的对应目录):
主目录下:
avr32studio.exe      // 这个其实和eclipse.exe完全一样,多一个只是为了能够读取对应的.ini配置
avr32studio.ini        // 类似eclipse.ini,做同样修改,只是目录需要改为configuration.avr32studio
configuration        // 拷贝后,改为configuration.avr32studio

features目录下:
com.atmel.avr32.board.evk1100_2.1.0.r48398-20-7s61511
com.atmel.avr32.board.evk1101_2.1.0.r48398-20-7s61511
com.atmel.avr32.board.evk1104_2.1.0.r48398-20-7s594_9
com.atmel.avr32.board.evk1105_2.1.0.r48398-20-7s5_39_
com.atmel.avr32.board.ngw100_2.1.0.r48398-20-7s594_9
com.atmel.avr32.board.stk1000_2.1.0.r48398-20-7s61511
com.atmel.avr32.board.stk600_2.1.0.r48398-20-7s5_994
com.atmel.avr32.core_2.1.0.r48398-7M7_-E9Z8M3QH91402811
com.atmel.avr32.doc.linux_2.1.0.r48578-20-7s59689
com.atmel.avr32.doc_2.1.0.r48398-41-8kBA_JC
com.atmel.avr32.ide_2.1.0.r48398-20-7s61374
com.atmel.avr32.part.ap7200_2.1.0.r48398-20-7s594_9
com.atmel.avr32.part.ap7_2.1.0.r48398-20-7s594_9
com.atmel.avr32.part.uc3_2.1.0.r48398-20-7s594_9
com.atmel.avr32.part.uc3es_2.0.0.r48398-20-7s594_9
com.atmel.avr32.sf.ap7000_1.0.0.r49605-1--7s5_882
com.atmel.avr32.sf.core_2.1.0.r48398-41-8kAI_KE
com.atmel.avr32.sf.uc3.bootloader_1.0.0.r49599-1--7s5_6_9
com.atmel.avr32.sf.uc3a_1.4.0.r49606-13-7s5_998
com.atmel.avr32.sf.uc3aes_1.2.2.r49607-1117s5_711
com.atmel.avr32.sf.uc3b_1.4.0.r49608-13-7s5_712
com.atmel.avr32.sf.uc3bes_1.2.2.r49609-1117s5_713
com.atmel.avr32.tool.avr32program_2.1.0.r48398-20-7s59991
com.atmel.avr32.tool.avrfwupgrade_2.1.0.r48398-20-7s61344
com.atmel.avr32.tool.avrone_2.1.0.r48728-20-7s61346
com.atmel.avr32.tool.batchisp_2.1.0.r48415-20-7s59526
com.atmel.avr32.tool.dragon_2.1.0.r49282-20-7s595_5
com.atmel.avr32.tool.jtagicemkii_2.1.0.r48398-20-7s5_94_
com.atmel.avr32.tool.simulator_2.0.0.r48398-20-7s594_9
com.atmel.avr32.toolchain.linux_2.1.0.r48442-20-7s595_5
com.atmel.avr32.toolchain.standalone_2.1.0.r49359-20-7s59944
gnu.io.rxtx_2.1.7.4_v20071016-7B57e7UAXMAAqGAGf
org.eclipse.dd.debug.memory.renderings_1.0.0.v20080609
org.eclipse.rse.core_3.0.1.v200809171600-7Z379EB7sQS9S4YPJaHC
org.eclipse.rse.dstore_3.0.1.v200809181500-7J32DUUEFDF8Hu9FH7
org.eclipse.rse.ftp_3.0.1.v200809171630-78479_kE77c7Q8b8T_F
org.eclipse.rse.local_2.1.1.v20080710-7_40AgI99m9d_O
org.eclipse.rse.remotecdt_2.1.1.v200809041200-4118s733I3J4F5C48
org.eclipse.rse.ssh_2.1.1.v20080714-7830_kE77c7V8M
org.eclipse.rse.telnet_2.1.1.v200809181500-6678AgI99m9W9X5J79
org.eclipse.rse.terminals_0.1.1.v200809041200-2229sB7EO_T_T5C6B3457
org.eclipse.rse_3.0.1.v200809181500-7H368qfenEMeUOENNFdiKV_gK8
org.eclipse.tm.terminal.serial_2.0.1.v20080715-2-07w31191826
org.eclipse.tm.terminal.ssh_2.0.1.v200807281235-2-07w311918392346
org.eclipse.tm.terminal.telnet_2.0.1.v20080715-2-07w31191826
org.eclipse.tm.terminal.view_2.0.1.v20080715-2-07w31191826
org.eclipse.tm.terminal_2.0.1.v200807281235-2-07w311918392346

plugins目录下:
com.atmel.avr32.board.evk1100_2.1.0.r50400.jar
com.atmel.avr32.board.evk1101_2.1.0.r50400.jar
com.atmel.avr32.board.evk1104_2.1.0.r48398
com.atmel.avr32.board.evk1105_2.1.0.r49289
com.atmel.avr32.board.ngw100_2.1.0.r48398.jar
com.atmel.avr32.board.stk1000_2.1.0.r50400.jar
com.atmel.avr32.board.stk600_2.1.0.r49883.jar
com.atmel.avr32.core.util_2.1.0.r48398.jar
com.atmel.avr32.core_2.1.0.r48494.jar
com.atmel.avr32.debug.trace.ui_2.1.0.r48398.jar
com.atmel.avr32.debug.trace_2.1.0.r48398.jar
com.atmel.avr32.debug.ui_2.1.0.r48510.jar
com.atmel.avr32.debug_2.1.0.r50219.jar
com.atmel.avr32.doc.guide_2.1.0.r50482.jar
com.atmel.avr32.doc.linux_2.1.0.r48578.jar
com.atmel.avr32.doc_2.1.0.r48398.jar
com.atmel.avr32.ide_2.1.0.r50263.jar
com.atmel.avr32.intro_2.1.0.r50230.jar
com.atmel.avr32.jre_2.1.0.r48398.jar
com.atmel.avr32.managedbuilder.ui_2.1.0.r48902.jar
com.atmel.avr32.managedbuilder_2.1.0.r48888.jar
com.atmel.avr32.part.ap7200_2.1.0.r48398.jar
com.atmel.avr32.part.ap7_2.1.0.r48398.jar
com.atmel.avr32.part.uc3_2.1.0.r48398.jar
com.atmel.avr32.part.uc3es_2.1.0.r48398.jar
com.atmel.avr32.sf.ap7000_1.0.0.r49771.jar
com.atmel.avr32.sf.core.ui_2.1.0.r48398.jar
com.atmel.avr32.sf.core_2.1.0.r48494.jar
com.atmel.avr32.sf.uc3.bootloader_1.0.0.r49598.jar
com.atmel.avr32.sf.uc3a_1.4.0.r49887.jar
com.atmel.avr32.sf.uc3aes_1.2.2.r49600.jar
com.atmel.avr32.sf.uc3b_1.4.0.r49601.jar
com.atmel.avr32.sf.uc3bes_1.2.2.r49602.jar
com.atmel.avr32.target_2.1.0.r50225.jar
com.atmel.avr32.tool.avr32program_2.1.0.r48880.jar
com.atmel.avr32.tool.avrfwupgrade_2.1.0.r50233.jar
com.atmel.avr32.tool.avrone_2.1.0.r50235.jar
com.atmel.avr32.tool.batchisp_2.1.0.r48415.jar
com.atmel.avr32.tool.dragon_2.1.0.r48494.jar
com.atmel.avr32.tool.jtagicemkii_2.1.0.r49839.jar
com.atmel.avr32.tool.simulator_2.1.0.r48398.jar
com.atmel.avr32.toolchain.standalone_2.1.0.r48833.jar
gnu.io.rxtx.win32.x86_2.1.7.3_v20071015
gnu.io.rxtx_2.1.7.4_v20071016.jar
org.apache.commons.net_1.4.1.v200803071935.jar
org.apache.oro_2.0.8.v200803061811.jar
org.eclipse.dd.debug.memory.renderings.traditional_1.0.0.v20080609.jar
org.eclipse.dd.debug.ui.memory.transport_1.0.0.v20080609.jar
org.eclipse.dstore.core_3.0.1.v200809110140.jar
org.eclipse.dstore.extra_2.1.0.v20080406.jar
org.eclipse.rse.connectorservice.dstore_3.0.1.v200809181500.jar
org.eclipse.rse.connectorservice.local_2.1.0.v20080604.jar
org.eclipse.rse.connectorservice.ssh_2.1.0.v20080604.jar
org.eclipse.rse.connectorservice.telnet_1.1.0.v20080604.jar
org.eclipse.rse.core_3.0.1.v200809111820.jar
org.eclipse.rse.doc.user_3.0.1.v200809041200.jar
org.eclipse.rse.dstore.security_3.0.0.v20080609.jar
org.eclipse.rse.efs.ui_2.1.0.v20080606.jar
org.eclipse.rse.efs_2.1.1.v200809041200.jar
org.eclipse.rse.files.ui_3.0.1.v200809171600.jar
org.eclipse.rse.importexport_1.1.0.v20080604.jar
org.eclipse.rse.processes.ui_3.0.1.v20080714.jar
org.eclipse.rse.remotecdt.source_2.1.1.v200809041200
org.eclipse.rse.remotecdt_2.1.1.v200808191815.jar
org.eclipse.rse.services.dstore_3.0.1.v200809091230.jar
org.eclipse.rse.services.files.ftp_3.0.1.v200808191815.jar
org.eclipse.rse.services.local_2.1.1.v20080710.jar
org.eclipse.rse.services.ssh_2.1.1.v20080714.jar
org.eclipse.rse.services.telnet_1.1.0.v20080604.jar
org.eclipse.rse.services_3.0.1.v200809091230.jar
org.eclipse.rse.shells.ui_3.0.1.v20080710.jar
org.eclipse.rse.subsystems.files.core_3.0.1.v200809041200.jar
org.eclipse.rse.subsystems.files.dstore_2.1.0.v200809110140.jar
org.eclipse.rse.subsystems.files.ftp_2.1.0.v20080609.jar
org.eclipse.rse.subsystems.files.local_2.1.0.v20080604.jar
org.eclipse.rse.subsystems.files.ssh_2.1.0.v20080604.jar
org.eclipse.rse.subsystems.processes.core_3.0.0.v20080529.jar
org.eclipse.rse.subsystems.processes.dstore_2.1.0.v20080604.jar
org.eclipse.rse.subsystems.processes.local_2.1.0.v20080604.jar
org.eclipse.rse.subsystems.processes.shell.linux_1.1.1.v20080714.jar
org.eclipse.rse.subsystems.shells.core_3.0.0.v20080604.jar
org.eclipse.rse.subsystems.shells.dstore_2.1.0.v20080604.jar
org.eclipse.rse.subsystems.shells.local_2.1.0.v20080604.jar
org.eclipse.rse.subsystems.shells.ssh_2.1.0.v20080604.jar
org.eclipse.rse.subsystems.shells.telnet_1.1.0.v20080604.jar
org.eclipse.rse.subsystems.terminals.core_0.1.1.v20080714.jar
org.eclipse.rse.subsystems.terminals.ssh_0.1.0.v20080604.jar
org.eclipse.rse.terminals.ui_0.1.1.v200809161200.jar
org.eclipse.rse.ui_3.0.1.v200809041200.jar
org.eclipse.rse_3.0.0.v20080529.jar
org.eclipse.tm.terminal.serial_2.0.1.v20080715.jar
org.eclipse.tm.terminal.ssh_2.0.1.v200807281235.jar
org.eclipse.tm.terminal.telnet_2.0.1.v20080715.jar
org.eclipse.tm.terminal.view_2.0.1.v20080715.jar
org.eclipse.tm.terminal_2.0.1.v200807281235.jar

【运行】
分别运行不同的程序即可。
有一点需要注意:avr32studio.exe只能使用原来AVR32Studio建立的workspace,因为workspace里还有一些设置,否则破功。

【进阶版】
进阶版就要用一下Eclipse3.4的最新特性了:dropins目录。
AVR32Studio中有很大一部分plug-in是Atmel提供的,我们把这些plug-in单独放在一个目录下,这样,就可以设置avr32studio.exe的配置,使得avr32studio使用Atmel提供的plug-in,而普通的eclipse不使用。
首先,在eclipse安装目录下的dropins目录中,建立avr32studio子目录,并在其下,建立plugins和features子子目录。把eclipse安装目录下的features和plugins目录下的以com.atmel.开头的文件或者目录,拷贝到dropins\avr32studio下的对应目录。
再次分别启动avr32studio.exe和eclipse.exe,发现没有什么区别,因为eclipse会自动寻找dropins目录下的plugins和features。为了让eclipse.exe运行的时候不使用Atmel提供的plug-in,需要修改configuration.common\org.eclipse.equinox.simpleconfigurator\bundles.info,去掉所有以com.atmel.开头的行。
修改configuration.avr32studio\config.ini中的osgi.splashPath,改一下路径指向新的位置。

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
3
关闭 站长推荐上一条 /3 下一条