ARM ADS集成开发环境的使用Word格式文档下载.docx
- 文档编号:14339603
- 上传时间:2022-10-22
- 格式:DOCX
- 页数:30
- 大小:41.28KB
ARM ADS集成开发环境的使用Word格式文档下载.docx
《ARM ADS集成开发环境的使用Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《ARM ADS集成开发环境的使用Word格式文档下载.docx(30页珍藏版)》请在冰豆网上搜索。
有了这些部件,用户就可以为ARM系列的RISC处理器编写和调试自己的开发应用程序了。
下面就详细介绍一下ADS的各个组成部分。
8.1.1 命令行开发工具
这些工具完成将源代码编译,链接成可执行代码的功能。
ADS提供下面的命令行开发工具:
armcc
armcc是ARM
C编译器。
这个编译器通过了Plum
Hall
C
Validation
Suite为ANSI
C的一致性测试。
armcc用于将用ANSI
C编写的程序编译成32位ARM指令代码。
因为armcc是我们最常用的编译器,所以对此作一个详细的介绍。
在命令控制台环境下,输入命令:
armcc
–help
可以查看armcc的语法格式以及最常用的一些操作选项
armcc最基本的用法为:
[options]
file1
file2
...
filen
这里的option是编译器所需要的选项,fiel1,file2…filen是相关的文件名。
这里简单介绍一些最常用的操作选项。
-c:
表示只进行编译不链接文件;
-C:
(注意:
这是大写的C)禁止预编译器将注释行移走;
-D<
symbol>
:
定义预处理宏,相当于在源程序开头使用了宏定义语句#define
symbol
,
这里symbol默认为1;
-E:
仅仅是对C源代码进行预处理就停止;
-g<
options>
指定是否在生成的目标文件中包含调试信息表;
-I<
directory>
将directory所指的路径添加到#include的搜索路径列表中去;
-J<
用directory所指的路径代替默认的对#include的搜索路径;
-o<
file>
指定编译器最终生成的输出文件名。
-O0:
不优化;
-O1:
这是控制代码优化的编译选项,大写字母O后面跟的数字不同,表示的优化级别就不同,-O1关闭了影响调试结果的优化功能;
-O2:
该优化级别提供了最大的优化功能;
-S:
对源程序进行预处理和编译,自动生成汇编文件而不是目标文件;
-U<
取消预处理宏名,相当于在源文件开头,使用语句#undef
symbol;
-W<
关闭所有的或被选择的警告信息;
有关更详细的选项说明,读者可查看ADS软件的在线帮助文件。
armcpp
armcpp是ARM
C++编译器。
它将ISO
C++
或EC++
编译成32位ARM指令代码。
tcc
tcc是Thumb
编译器。
该编译器通过了Plum
一致性的测试。
tcc将ANSI
C源代码编译成16位的Thumb指令代码。
tcpp
tcpp是Thumb
和EC++
源码编译成16位Thumb指令代码。
armasm
armasm是ARM和Thumb的汇编器.
它对用ARM
汇编语言和Thumb
汇编语言写的源代码进行汇编。
armlink
armlink是ARM连接器。
该命令既可以将编译得到的一个或多个目标文件和相关的一个或多个库文件进行链接,生成一个可执行文件,也可以将多个目标文件部分链接成一个目标文件,以供进一步的链接。
ARM链接器生成的是ELF格式的可执行映像文件。
armsd
armsd是ARM
和Thumb的符号调试器。
它能够进行源码级的程序调试。
用户可以在用C或汇编语言写的代码中进行单步调试,设置断点,查看变量值和内存单元的内容。
8.1.1.1 armcc用法详解
下面为读者介绍上述的4种ARM
C和C++编译器的命令通用语法。
compiler
[PCS-options]
[source-language]
[search-paths]
[preprocessor-options]
[output-format]
[target-options]
[debug-options]
[code-generation-options]
[warning-options]
[additional-checks]
[error-options]
[source]
用户可以通过命令行操作选项控制编译器的执行。
所有的选项都是以符号”-”开始,有些选项后面还跟有参数。
在大多数情况下,ARM
C和
C++编译器允许在选项和参数之间存在空格。
命令行中各个选项出现顺序可以任意。
这里的compiler是指armcc,tcc,
armcpp和
tcpp中的一个;
PCS-options:
指定了要使用的过程调用标准;
source-language:
指定了编译器可以接受的编写源程序的语言种类。
对于C编译器默认的语言是ANSI
C,对于C++编译器默认是ISO标准C++;
search-paths:
该选项指定了对包含的文件(包括源文件和头文件)的搜索路径;
preprocessor-options:
该选项指定了预处理器的行为,其中包括预处理器的输出和宏定义等特性;
output-format:
该选项指定了编译器的输出格式,可以使用该项生成汇编语言输出列表文件和目标文件;
target-options:
该选项指定目标处理器或ARM体系结构;
debug-options:
该选项指定调试信息表是否生成,和该调试信息表生成时的格式;
code-generation-options:
该选项指定了例如优化,字节顺序和由编译器产生的数据对齐格式等选项;
warning-options:
该选项决定警告信息是否产生;
additional-checks:
该选项指定了几个能用于源码的附加检查,例如检查数据流异常,检查没有使用的声明等;
error-options:
该选项可以关闭指定的可恢复的错误,或者将一些指定的错误降级为警告;
source:
该选项提供了包含有C或C++源代码的一个或多个文件名,默认的,编译器在当前路径寻找源文件和创建输出文件。
如果源文件是用汇编语言编写的(也就是说该文件的文件名是以.s作为扩展名),汇编器将被调用来处理这些源文件。
如果操作系统对命令行的长度有限制,可以使用下面的操作,从文件中读取另外的命令行选项:
-via
filename
该命令打开文件名为filename的文件,并从中读取命令行选项。
用户可以对-via进行嵌套调用,亦即,在文件filename中又通过-via
finlename2包含了另外一个文件。
在下面的例子中,从input.txt文件中读取指定的选项,作为armcpp的操作选项:
armcpp
input.txt source.c
以上是对编译器选项的一个简单概述。
它们(包括后面还要介绍的其他一些命令工具)既可以在命令控制台环境下使用,同时由于它们被嵌入到了ADS的图形界面中,所以也可以在图形界面下使用。
8.1.1.2 armlink用法详解
在介绍armlink的使用方法之前,先介绍要涉及到的一些术语。
映像文件(image):
是指一个可执行文件,在执行的时候被加载到处理器中。
一个映像文件有多个线程。
它是ELF(Executable
and
linking
format)格式的。
段(Section):
描述映像文件的代码或数据块。
RO:
是Read-only的简写形式。
RW:
是Read-write.的简写形式。
ZI:
是Zero-initialized的简写形式。
输入段(input
section):
它包含着代码,初始化数据或描述了在应用程序运行之前必须要初始化为0的一段内存。
输出段(output
它包含了一系列具有相同的RO,RW或ZI属性的输入段。
域(Regions):
在一个映像文件中,一个域包含了1至3个输出段。
多个域组织在一起,就构成了最终的映像文件。
Read
Only
Position
Independent(ROPI):
它是指一个段,在这个段中代码和只读数据的地址在运行时候可以改变。
Write
Independent(RWPI):
它是指一个段,在该段中的可读/写的数据地址在运行期间可以改变。
加载时地址:
是指映像文件位于存储器(在该映像文件没有运行时)中的地址。
运行时地址:
是指映像文件在运行时的地址。
下面介绍一下armlink命令的语法
完整的连接器命令语法如下:
armlink
[-help]
[-vsn]
[-partial]
[-output
file]
[-elf]
[-reloc][-ro-base
address]
[-ropi]
[-rw-base
[-rwpi]
[-split]
[-scatter
file][-debug|-nodebug][-remove?
RO/RW/ZI/DBG]|-noremove]
[-entry
location
]
[-keep
section-id]
[-first
[-last
[-libpath
pathlist]
[-scanlib|-noscanlib]
[-locals|-nolocals]
[-callgraph]
[-info
topics]
[-map]
[-symbols]
[-symdefs
[-edit
[-xref]
[-xreffrom
object(section)]
[-xrefto
[-errors
[-list
[-verbose]
[-unmangled
|-mangled]
[-match
crossmangled][-via
[-strict]
[-unresolved
symbol][-MI|-LI|-BI]
[input-file-list]
上面各选项的含义分别为:
-help
这个选项会列出在命令行中常用的一些选项操作。
-vsn
这个选项显示出所用的armlink的版本信息。
-partial
用这个选项创建的是部分链接的目标文件而不是可执行映像文件。
-output
file
这个选项指定了输出文件名,该文件可能是部分链接的目标文件,也可能是可执行映像文件。
如果输出文件名没有特别指定的话,armlink将使用下面的默认:
如果输出是一个可执行映像文件,则生成的输出文件名为__image.axf;
如果输出是一个部分链接的目标文件,在生成的文件名为__object.o;
如果没有指定输出文件的路径信息,则输出文件就在当前目录下生
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ARM ADS集成开发环境的使用 ADS 集成 开发 环境 使用
![提示](https://static.bdocx.com/images/bang_tan.gif)