基于Eclipse的嵌入式ARM开发环境建立.docx
- 文档编号:12848074
- 上传时间:2023-04-22
- 格式:DOCX
- 页数:13
- 大小:1.20MB
基于Eclipse的嵌入式ARM开发环境建立.docx
《基于Eclipse的嵌入式ARM开发环境建立.docx》由会员分享,可在线阅读,更多相关《基于Eclipse的嵌入式ARM开发环境建立.docx(13页珍藏版)》请在冰豆网上搜索。
基于Eclipse的嵌入式ARM开发环境建立
基于Eclipse的嵌入式ARM开发环境建立Eclipse简介
Eclipse是一个开放源代码的、基于Java的可扩展开发平台,也是一个开放的可扩展的IDE。
在Eclipse上面不仅可以开发Java也可以开发C项目,前提是你需要安装cdt(C/C++forDevelopers)。
因此可以这样理解,Eclipse就是一个能够管理和编辑你的项目源代码、文档的软件,例如你可以在上面写一个C程序,当你写完之后你需要对它进行编译,但是Eclipse并不给你提供这个编译的工具,但是它却为你自己的工具留有接口,可以让你的编译工具参与进来,完成编译的工件,当完成编译后你需要对各个目标文件进行连接,Eclipse也为你的连接工具留下一个接口,你只需要告知Eclipse你的工具在哪,然后在Eclipse中配置好的你的工具就可以了。
正是这样,在Eclipse下你可以开发Java,也可以开发C/C++项目。
文件准备
为了搭建ARM的嵌入式开发环境,你需要这样一些文件:
1、JRE,JavaRuntimeEnvironment,因为Eclipse是基于Java开发的,所以你需要安装Java运行环境才可以运行Eclipse。
2、Eclipse,这个是你的IDE文件,在开发环境建立完成之后,你主要接触的东西便是它了。
3、YAGRATO工具集,这个是win环境下,ARMforGNU的工具集,针对ARM的编译器、连接器都在里面。
资源下载
1、Eclipse集成开发环境,含CDT插件。
EclipseIDEforC/C++Developers(includesIncubatingcomponents),
2、Java运行环境(JavaRuntimeEnvironment)
/47036_2.htm#
3、Yagarto工具
请下载如下几个文件
4、STM32F10X固件库
/mcu/product/221020.jsp
在网页中选择STM32F10X的固件下载,图中画圈的部分。
5、GnuARM-EclipsePlugin
/gnuarmeclipse/
6、《STM3210CTest》GDB示例
/index.html
主要需要该文件中的的GDB初始化脚本。
安装步骤
1、安装Java运行环境(JRE)
点击“安装”即可。
2、安装EclipseIDE。
这里说安装实际是不准确的,Java下和程序与WIN下程序有区别,解压
得到“eclipse”文件夹。
进入该文件夹点击
,第一步需要设置“workspace”的路径,以后所有的工程文件都将存放在这个目录下,所以最好不要放在系统盘。
当然你以在以后的工程中重新设置workspace的路径。
这里我新建了一个“Eclipse_WorkSpace”文件夹,如图:
最后得到下面的界面:
3、安装ZylinCDTplugin(Zylin插件):
点击
》
,得到下面的界面
点击
,在Location中输入:
。
注意:
上面的地址可能会有更改,所以如果不能添加zycdt插件,请去其官网()查看更详细的说明。
,点击OK,等待片刻会出现下面的结果:
勾上里面的复选框,点击“Next”,直至安装完毕会出现下图的界面:
选择后台运行
。
出现
时,选择”OK”。
然后点击
,重新启动。
4、安装Yagarto工具。
a)安装
出现
直接“Next”,不要做改动。
选择安装目录时,选择一个路径名中不包含空格的路径(这一点要小心)。
b)安装
出现下面的界面时,不要改动,直接“Next”。
安装路径选择之前的安装路径。
注意:
关于路径的选择根据自己的情况进行,但是建议路径名中不要有空格和汉字。
5、安装GnuARM-EclipsePlugin
解压下载的压缩包,得到如下的文件:
将plugins中的文件放到eclipse的同名文件夹中,重启eclipse。
新建工程
1、新建工程
点击“File”-》“New”-》“CProject”。
得到下面的对话框,给工程命名为ARMTest,选择ARMCrossTargetApplication工程类型,并选择ARMWindowsGCC(Yagarto)工具链。
最后得到下面的界面:
2、添加库文件。
找到下载的STM32F10X的固件库,解压如下图:
把Libraries文件夹复制到Eclipse的工作空间的工程目录下。
然后在Eclipse中刷新文件,在CMSIS的子目录中找到startup目录,保留TrueSTUDIO目录其它都删掉,根据所使用的芯片型号选择相应的启动代码,这里例子所使用的是STM32F107VCT,是STM32的互连型CPU,所以保留startup_stm32f10x_cl.s文件,其它都删掉。
然后把该文件的后缀改成大写的S:
注意:
eclipse的汇编文件一律以..S结尾,小写的.s不被认作汇编文件。
最后保留的文件如下:
3、工程属性设置。
点击“Properties”,选择
,点击
得到如下对话框:
添加预处理命令
选择处理器类型为“cortex-m3”,预处理命令中添加:
USE_STDPERIPH_DRVIER和STM32F10X_CL,如图:
此处添加预处理符号
把工程目录下的头文件包含进去:
选择工程目录下的文件
添加路径
添加完毕后可以看到在工程目录下看到所包含的路径,如下图:
4、添加连接脚本。
回到STM32F10X固件库原始文件目录下,在STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Template中有一个
这个文件夹中有如下文件,根据所使用的MPU的型号,选择匹配的链接脚本,链接脚本文件以.ld为后缀,例子所使用的MPU型号为STM32F107VCT,它的链接脚本文件在STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Template\TrueSTUDIO\STM3210C-EVAL下,文件名为stm32_flash.ld,把该文件复制到工程目录下。
然后,在ARMYagartoWindowsGCCCLinker中添加该脚本文件。
5.添加库
如图,把arm-none-eabi\sys-include库添加进来。
6.添加测试文件
在STM32的固件库中找到一个库配置文件(stm32f10x_conf.h)和一个含main.c的文件稍作修改,并作编译使整个程序没有错误。
下载调试
假设已经顺利安装了Jlink的驱动程序。
在Yagarto中含有一个arm-none-eabi-gdb.exe的GDB程序,用于调试目标机。
关于GDB的调试的组成架构可以看这个图:
从这个图可以看出,在GDB程序和目标机上的程序之间还需要一个gdbserver。
在安装完Jlink后,进入Jlink的安装目录,如果没有更改默认安装路径应该在C:
\ProgramFiles\SEGGER目录下,找到
程序,这就是我们需要的GDBServer。
1.外部工具配置
在进行调试时,应该首先启动gdbserver程序,为了避免每次调试时都要到安装目录去寻找上面的那个文件,可以直接在eclipse中进行配置。
在工具栏找到ExternalTools的图标:
在下拉菜单中找到ExternalToolsConfigruations…,在打开的界面中双击
,将新的配置命名为:
JlinkGDBServer。
2.调试工具配置
在工具栏中找到
,在其下拉菜单找到DebugConfigurations…,在打开的界面中右键
,New。
在GDBdebugger对话框中把arm-elf-gdb改成arm-none-eabi-gdb。
切换到“Commands”,在文本框中输入gdb的初始化脚本。
如果不会写初始化脚本,可以到/index.html网站下载相应的示例STM3210CTest。
打开STM3210CTest\prj目录,按照上图标注的序号分别把
中内容复制到文本框中。
至此所有的配置工作已经完成。
点击Debug开始调试。
在调试的时候,会遇到“Remote'g'packetreplyistoolong”的错误,请到/netx-arm-elf-gc/files/GDB/arm-none-eabi-gdb-7.2-mingw32-netx.0.7z/download?
use_mirror=ncu去下载7.2版本的arm-none-eabi-gdb。
下载完成后将bin文件夹中的两个文件
替换原来的同名文件即可。
正面是调试运行的结果:
至此,关于在windows下用eclipse搭建嵌入式开发环境的整个过程结束。
祝大家学习顺利!
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 Eclipse 嵌入式 ARM 开发 环境 建立