|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
ADS 是个集成开发环境,主要包括编译器、链接器、调试器、C 和 C++库等,是 ARM 公司推出的新一代 ARM 集成开发工具。新版本是 ADS 1.2,该版本支持包括 Windows 和 Linux 在内的多种操作环境。ADS 1.2 的组成如下所述。
9 A* E+ |, `0 s5 L& v
$ y* W' s; j6 Q* q1.编译器) D K3 ?) ]1 S! s
L4 {# t m$ r! @. {
ADS 提供多种编译器,以支持 ARM 和 Thumb 指令的编译,主要有如下几种。
y& y% M2 [; S) ?4 k% Zarmcc:是 ARM C 编译器。/ Z: R0 H2 ]; a
tcc:是 Thumb C 编译器。# ^* w- ~- Q9 m
armcpp:是 ARM C++编译器。
0 O/ W; o: @/ mtcpp:是 Thumb C++编译器。
9 V5 D# n1 j1 z! w2 H) ]7 J8 Garmasm:是 ARM 和 Thumb 的汇编语言编译器。
2 b; @) |# P/ r& t, N% Z
5 K- Y% |) i' m% K9 S/ K2 a: X; l& S0 |/ B+ u6 P! i$ d9 |
2.链接器
+ q' d( W0 k7 J* I( m( W* i- }; B3 W. U5 ?; ^, q- i
armlink 是 ARM 链接器。该命令既可以将编译得到的一个或多个目标文件和相关的一个 或多个库文件进行链接,生成一个可执行文件,也可以将多个目标文件部分链接成一个目标 文件,以供进一步的链接。: p/ H2 P/ Y; G' W+ C+ }
- _( [# P! m! ?( j! Y3.符号调试器# \0 K* h0 @6 C
}: J5 r* O% D8 W1 g
armsd 是 ARM 和 Thumb 的符号调试器,能进行源码级程序调试。用户可以在用 C 或汇编语言写的代码中进行单步调试、设置断点、查看变量值和内存单元的内容。 5 h1 k1 a. o3 ~9 C# E
P* r! ?- V0 Z* d4.fromELF
* J- s' w4 Y/ l' C, c0 _0 E) A: [( ?+ B1 {% y& ~; H
将 ELF 格式的文件转换为各种格式的输出文件,包括 BIN 格式映像文件、Motorola 32 位 S 格式映像文件、Intel 32 位格式映像文件和 Verilog 十六进制文件。FromELF 命令也能够 为输入映像文件产生文本信息,例如,代码和数据长度。 # g9 N x' X0 j$ n
) i, v2 ?& V" E0 a
5.armar
: i7 J; t. W' o/ K. `: t. d4 B
1 f$ N/ r- H6 m0 barmar 是 ARM 库函数生成器,它将一系列 ELF 格式的目标文件以库函数的形式集合在 一起。用户可以把一个库传递给一个链接器以代替几个 ELF 文件。
- x5 L7 q) ^9 v) n# r9 N+ E. P% `9 k" b/ o) l- {) G9 h; e
6.CodeWarrior
2 N9 W0 r0 X5 T2 H
/ T7 Z( o) t i/ y( O- ECodeWarrior 集成开发环境(IDE)为管理和开发项目提供了简单、多样化的图形用户界 面,用户可以使用 ADS 的 CodeWarrior 集成开发环境为 ARM 和 Thumb 处理、开发用 C、C++ 或者 ARM 汇编语言编写的程序代码。* W) V1 Z/ q+ }
0 F& ]/ z; f; M. p( Z/ w) L2 n4 |
7.调试器; P; q/ w3 o5 X1 E5 B
1 q8 H+ o6 L4 T9 ]3 Z0 \ADS 中含有 3 个调试器,即 AXD、Armsd 和 ADW/ADU。 在 ARM 体系中,可以选择多种调试方式,如 Multi-ICE(Multi-processor In-Circuit Emulator)、ARMulator 或 Angel。 Multi-ICE 是一个独立的产品,是ARM 公司自己的 JTAG 在线仿真器,不是由 ADS 提供的。" @2 v6 O. |7 B0 k: O _3 |
$ f2 N1 _* W9 R2 v5 L: a" @( N0 i
ARMulator是一个 ARM 指令集仿真器,集成在 ARM 的调试器 AXD 中,提供对 ARM 处理器的指令集的仿真,为 ARM 和 Thumb 提供精确的模拟。用户可以在硬件尚未做好的情 况下开发程序代码,利用模拟器方式调试。( _( k$ x ?+ ^0 w7 C
Angel 是 ARM 公司常驻在目标机 Flash 中的监控程序,只需通过 RS-232C 串口与 PC 主机相连,就可以对基于 ARM 架构处理器的目标机进行监控器方式的调试。
: _. i. g% F' J: B4 ?" i" ] [; o3 `- }: ]: o+ f: M8 u
6 U" {# t# v3 K! \6 K+ T9 w
8.C 和 C++库 ADS 提供 ANSI C 库函数和 C++库函数,支持被编译的 C 和 C++代码。用户可以把 C 库 中的与目标相关的函数作为自己应用程序中的一部分,重新进行代码的实现。这就为用户带 来了极大的方便,用户可以针对自己的应用程序的要求,对与目标无关的库函数进行适当的 裁剪。在 C 库中有很多函数是独立于其他函数的,并且与目标硬件没有任何依赖关系。对于 这类函数,用户可以很容易地在汇编代码中使用。
) E+ z. O& r: `2 o0 ^4 I
& J6 S2 P8 {4 A6 M& z0 k0 C; g有了这些部件,用户就可以为 ARM系列的 RISC处理器编写和调试自己的开发应用程序了。6 M5 n+ W* r" ?+ k; C/ X1 V
|
|