ARM Development Studio 5入门教程

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

ARM DS-5入门之概述
关于 DS-5
DS- 5是基于Linux系统和裸机嵌入式系统,涵盖了从启动代码和内核移植,应用程序和裸机调试的各个阶段,专业的软件开发解决方案。

它还包括性能分析。

DS-5 包括:
l DS-5 Debugger.
l DS-5 Eclipse是一种集成开发环境 (IDE),将编译和调试工具结合在一起。

l Real-Time System Models。

l ARM Streamline™ 性能分析器。

l 专用的示例,包括应用程序和支持文档,以帮助您开始使用DS- 5工具。

l 用于开发裸机程序的Debughardware configuration utitlities。

l 开发嵌入式裸机程序的ARM编译工具。

l 开发启动代码和ARMLinux程序的GNU编译工具。

关于DS-5 Eclipse
DS-5 Eclipse是一种集成开发环境 (IDE),将ARM的编译和调试工具结合在一起。

它还包含开发ARM Linux GNU工具链。

DS-5 Eclipse 提供:
项目管理
l 可以执行各种项目任务,例如:增加或移除项目的文件和依赖,导入,导出,或创建项目,和管理编译选项。

编辑器
l 可以读,写,或者修改 C/C++或ARM汇编语言源程序。

透视图和视图
l 提供自定义视图, 菜单, 和工具栏以适应特定类型的环境。

DS-5 使用 C/C++ 和 DS-5 Debug 透视图。

关于 DS-5Debugger
DS-5 Debugger 一个支持端到端的ARM裸机和Real-TimeSystem Models (RTSMs)软件开发的图形化调试器。

全面和直观的试图非常易于调试Linux和裸机程序,包括同步源和反汇编,调用堆栈,
内存,寄存器,表达式,变量,线程,断点,和跟踪。

使用Debug控制视图你可以在源码级或指令级单步执行并查看执行代码后其他视图更新的数据。

设置断点或监视点可以帮助你终止程序,让你去探索应用程序的行为。

在某些目标板上可以使用跟踪
视图通过事件的顺序时间表跟踪程序的功能执行。

您还可以使用的DS-5命令提示符命令行控制台进行调试。

关于 Real-TimeSystem Models
Real-Time System Models (RTSM) 使得没有真正的硬件也可以开发程序。

该模型的功能行为在程序员视图(programmers view)下相当于真正的硬件。

牺牲绝对计时精度以实现快速的模拟执行速度。

这意味着你可以使用一个模型确认软件的功能,但你不能依赖于计数周期、底层相互作用的组成部分或其他硬件准确性的具体行为。

DS-5包括一个预先设定启动ARMLinux的Cortex.-A8RTSM。

关于 ARM 编译器
DS-5 包括一个ARM编译工具的发行版。

这些工具可用于构建裸机嵌入式系统应用程序和库,包括在DS- 5 示例目录的例子。

ARM 编译工具在工具目录下(tools_directory)。

您可以使用它们在命令行或Eclipse下构建您的应用程序。

l armar
l armasm
l armcc
l armlink
l fromelf
关于GNU编译工具
DS-5 包括一个GNU编译工具的发行版。

这些工具可用于编译ARM Linux的应用程序和库,包括DS- 5 示例目录的示例ARM Linux发
行版。

它们是不适合编译:
l ARM裸机程序
l ARM目标上运行的ARM Linux以外的其他任何操作系统
l 非ARM体系结构的程序。

GNU编译工具在tools_directory目录下。

您可以使用它们在命令行或Eclipse构建您的应用程序。

arm-none-linux-gnueabi-ar GNUlibrarian
arm-none-linux-gnueabi-as GNU assembler
arm-none-linux-gnueabi-gcc GNU c compiler
arm-none-linux-gnueabi-g++ GNU C++ compiler
arm-none-linux-gnueabi-ld GNU linker
GNU编译工具入门在 documents_directory\gcc目录下。

关于 ARM Streamline 性能分析器
Streamline 是一种图形性能分析工具。

结合内核驱动程序,目标守护,和基于Eclipse的用户界面,转抽样数据,系统跟踪,在用可视和统计表格显示数据。

Streamline 使用内核级的硬件性能计数器提
系统资源的供精确表示。

关于 Debug hardware configuration utilities
debug hardware configuration utilities 使您可以连接到调试硬件单元,调试硬件单元提供开发平台和PC之间的接口。

提供以下工具:
Debug Hardware Config IP
l 用来在debug hardware unit配置IP地址。

Debug HardwareUpdate
l 用来在debug hardware unit更新固件和设备。

ARM DS-5入门之DS-5 教程(更新至8,未完,待续!)
下面的教程告诉你如何采用ARMDS-5工具运行和调试应用程序。

•1示例项目导入到Eclipse
•2 用Eclipse创建新的C/C++ 项目
•3 用Eclipse编译Gnometris 项目 •
•4 在命令行下编译Gnometris项目
•5 在Real-Time System Model上加载Gnometris程序
• 6加载Gnometris程序到ARM Linux
—使用SSH连接设置和运行ARM Linux上的Gnometris
—接已经在ARM Linux上运行的的Gnometris程序
• 7调试 Gnometris
• 8调试可装载的内核模块
• 9运行在ARM Linux上线程应用程序的性能分析
• 10调试 Android native C/C++ 应用程序和库
•11 DS-5许可管理
1.示例项目导入到Eclipse
在文档中描述的许多任务是使用DS-5提供的示例项目。

为了在Eclipse中使用的示例项目,你必须首先导入它们
1.启动Eclipse:
•在Windows系统上,选择开始菜单→所有程序→ARM DS-5→ Eclipse for DS-5.
•在Linux系统上, 在Unix bash shell输入 eclipse .
2. ARM建议您为示例项目创建一个新的工作区,使它们保持你自己的项目分开。

要做到这一点,您可以:
•启动Eclipse,创建一个新的工作区目录。

•如果Eclipse已经打开,从主菜单中选择“文件→切换工作区→其他。

3.从Help 菜单中选择 CheatSheet...。

4.展开 ARM 组.
5.从ARM备忘单中选择Automatically Import the DS-5 Example Projects into the Current Workspace 。

6.单击 OK。

7.按照备忘单的步骤,导入所有的DS- 5示例项目到你的工作区。

当示例项目被导入后,如如果需要,你可以选择按照其余的备忘单说明来切换工作集。

2.在Eclipse创建一个新的C或C++项目
要创建一个新的C或C+ +项目:
1.从主菜单中选择File → New → Project...
2.展开C/C++ 组。

3.选择C Project 或C++ Project.
4.选择你想创建的项目类型。

5.单击Next。

6.输入项目名称。

7.使Use default location选项选中,可以在在显示的默认目录中创建项目。

此外,还可以取消此选项,并选择你喜欢的项目目录。

8.选择你想创建的项目类型。

9. 单击Finish 完成创建你的新项目。

该项在Project Explorer视图中是可见的。

3.在Eclipse中编译Gnometris project
Gnometris是一个可以在你的目标板上运行和调试的ARM Linux应用程序。

所提供的项目不包含Gnometris应用程序的镜像的二进制文件。

创建映像,您必须编译该项目。

编译项目:
1. 从ARM的网站下载可选包或从DS- 5安装光盘获得Linux_distribution_example.zip,包含了兼容的头文件和库。

2. 导入从相关ZIP文件中导入gnometris and distribution 示例项目到Eclipse中。

3. 在Project Explorer视图中选择gnometris 项目。

4. 在Project菜单中选择Build Project 。

Gnometris 示例项目包含了编译项目的Makefile 文件。

Makefile 提供了常用的make规则:clean, all, and rebuild。

当您编译Gnometris项目,它产生了以下应用程序:
•一个不包含调试信息的stripped版本应用程序。

这个要下载到目标板。

•一个用于源代码级调试大尺寸版本的包含调试信息的应用程序。

4.命令行下编译Gnometris项目
Gnometris是一个可以在你的目标板上运行和调试的ARM Linux应用程序。

所提供的项目不包含Gnometris 应用程序的镜像的二进制文件。

编译项目:
1.从ARM的网站下载可选包或从DS- 5安装光盘获得Linux_distribution_example.zip,包含了兼容的头文件和库。

2.导入从相关ZIP文件中导入gnometris and distribution 示例项目到Eclipse中。

3.打开DS-5 Command Prompt 命令行控制台或Unix bash shell。

4.切换到...\ARMLinux\gnometris。

5.在提示符下,输入make。

示例项目包含了编译项目的Makefile文件。

Makefile 提供了常用的make 规则:clean, all, and rebuild。

当您编译Gnometris项目,它产生了以下应用程序:
•一个不包含调试信息的stripped版本应用程序。

这个要下载到目标板。

•一个用于源代码级调试大尺寸版本的包含调试信息的应用程序。

5.在Real-Time System Model上加载Gnometris程序
你可以在Real Time System Model (RTSM) 上运行的ARM Linux上加载Gnometris 程序。

RTSM使您在您的主机工作站上运行和调试应用程序,而无需使用任何的硬件标设备。

这个预先设定的RTSM连接,自动启动Linux,启动gdbserver,然后启动应用程序。

加载Gnometris:
1.启动Eclipse。

2.单击Project Explorer 视图。

3.展开gnometris 项目文件夹。

4.在unch上单击右键。

5.在菜单中选择Debug As。

6.在子菜单中选择gnometris-RTSM-example 。

7.调试需要DS-5 Debug 透视图。

如果弹出透视图切换对话框,单击Yes 来切换透视图。

6.装载Gnometris程序到ARM Linux
你可以装载Gnometris程序到ARM Linux。

DS-5提供了预先配置好的目标连接设置,调试器连接支持基于ARM架构的平台上运行的gdbserver。

加载程序:
1.获得目标板的IP地址。

您可以使用ifconfig命令在Linux控制台配置应用程序。

IP地址是由inet add表示。

2.引导目标板得Linux发行版。

3.启动Eclipse。

4.传送应用程序及相关文件到ARM Linux目标板上,运行应用程序,然后连接调试器。

有几种方法可以做到:
•在Beagle开发板上您可以使用 Secure SHell (SSH),用DS- 5提供的远程系统管理器(RSE)连接设置好的目标板,然后运行应用程序。

当应用程序运行后,调试器就可以连接到正在运行的目标板。

•对于其他的目标板,你可以使用一个外部文件传输工具,如PuTTY。

7使用SSH连接设置和运行在ARM Linux上的Gnometris
在某些目标板上,你可以使用Secure SHell (SSH),用DS- 5提供远程资源管理器(RSE)连接目标板。

建立一个连接到ARM Linux目标板Linux的SSH连接,并运行Gnometris应用程序:
1.在DS-5 Debug透视图中添加Remote Systems视图:
a.确定是在DS-5 透视图中。

使用主菜单中的透视图工具栏或者选择Window → Open perspective → DS-5 Debug 来切换透视图。

b.选择Window → Show View → Other... 打开显示视图对话框。

c.在 Remote Systems 组中选择Remote Systems 视图。

d.单击OK.
2.在Remote Systems视图中, 设置一个使用SSH连接远程目标的Linux连接:
a.在Remote Systems视图工具栏中单击Define a connection to remote system
b.在选择 Remote System 类型对话框中, 展开 General 组并选择Linux。

图 3-1 选择连接类型
c.单击Next.
d.在Remote Linux System Connection对话框中Host name编辑框输入远程目标板的IP地址或计算机名。

图 2 定义连接类型
e.单击Next.
f.选择SSH协议文件访问。

图 3 定义文件系统
g.单击Next.
h.为Linux系统选择shell协议。

图 4 定义连接
i.单击Next.
j.选择 SSH shells.
图 5 定义shell服务
k.单击 Next.
l.选择 SSH terminals.
图 6 定义终端服务
m.单击 Finish.
3.在Remote Systems视图中:
a.在Linux目标设备上右键,并从上下文菜单中选择“Connect”。

b.在密码输入对话框中,输入一个用户名和密码,如果需要的话。

c.单击 OK 关闭对话框。

d.从本地文件系统复制剥离版本的Gnometris应用程序, gnometris, 以及
libgames-support.so 库文件到目标文件系统上。

e.确保目标文件有执行的权限。

要做到这一点,请右键单击每个文件,从上下文菜单中选择Properties,并更改所需的复选框。

图 7 在Remote Systems视图修改文件属性
4.打开一个已经连接到目标板终端shell,并用gdbserver启动应用程序:
a.在Remote Systems视图中,右键Ssh Terminals。

b.选择Launch Terminal打开终端shell。

c.在终端 shell下,切换到 gnometris 程序所在目录,并执行以下命令:
export DISPLAY=ip:0.0
gdbserver :port gnometris
其中:
ip 是显示Gnometris游戏的主机的IP地址
port gdbserver和程序之间的连接端口, 例如 5000。

注意:如果目标板有一个您可以使用显示屏,那么你并不需要 export DISPLAY。

8连接已经在ARM Linux上运行的的Gnometris 程序
连接已经在ARM Linux上运行的的Gnometris 程序:
1.从Run菜单中选择Debug Configurations... 。

2.从树形配置中选择DS-5 Debugger并单击New创建个一个的配置。

你可以从工具栏中点击Duplicate选择已经存在的DS-5 Debugger 配置并。

3.在Name框中,为新的配置输入一个合适的名称。

4.单击Connection选项卡查看目标板和连接选项。

5.在Select target面板:
a.选择需要的平台,例如 - OMAP_3530。

b.选择Connect to already running gdbserver 进行调试。

6.在Connections面板中,配置gdbserver 和程序之间的连接。

a.输入目标板的地址IP。

b.输入端口号。

图 8 Beagle开发板典型的连接配置
7.单击Files选项卡查看文件操作。

8.在Files面板:
a.选择Load symbols from file 并选择包含调试信息的程序镜像。

例如H:\workspace\gnometris\gnometris.
b.单击Add a new resource to the list 增加另一个文件目录。

c.选择Load symbols from file ,然后选择Gnometris需要的共享库例如:
H:\workspace\gnometris\libgames-support.so。

图 9 Beagle开发板典型的文件选择
9.单击Debugger选项卡查看配置的调试选项。

10.在Run 控制面板:
a.选择Debug from symbol。

b.在提供编辑框中输入main 。

11.在Host working directory 面板,选择Use default。

图 10 Beagle开发板典型的调试设置
12.单击Debug开始调试,运行到main()函数。

13.调试需要DS-5 Debug透视图。

如果出现确认切换透视图对话框,单击Yes切换透视图。

相关文档
最新文档