ImageVerifierCode 换一换
格式:DOCX , 页数:30 ,大小:41.28KB ,
资源ID:1423529      下载积分:12 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/1423529.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(ARM ADS集成开发环境的使用.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

ARM ADS集成开发环境的使用.docx

1、ARM ADS集成开发环境的使用ARMADS集成开发环境的使用在这一章里,将介绍ARM开发软件ADS(ARMDeveloperSuite)。通过学习如何在CodeWarriorIDE集成开发环境下编写,编译一个工程的例子,使读者能够掌握在ADS软件平台下开发用户应用程序。本章还描述了如何使用AXD调试工程,使读者对于调试工程有个初步的理解,为进一步的使用和掌握调试工具起到抛砖引玉的作用。本章主要内容有:ADS软件组成介绍使用ADS创建工程用AXD进行代码调试8.1ADS集成开发环境组成介绍ARMADS全称为ARMDeveloperSuite。是ARM公司推出的新一代ARM集成开发工具。现在AD

2、S的最新版本是1.2,它取代了早期的ADS1.1和ADS1.0。它除了可以安装在WindowsNT4,Windows2000,Windows98和Windows95操作系统下,还支持WindowsXP和WindowsMe操作系统。ADS由命令行开发工具,ARM时实库,GUI开发环境(CodeWarrior和AXD),实用程序和支持软件组成。有了这些部件,用户就可以为ARM系列的RISC处理器编写和调试自己的开发应用程序了。下面就详细介绍一下ADS的各个组成部分。8.1.1命令行开发工具这些工具完成将源代码编译,链接成可执行代码的功能。ADS提供下面的命令行开发工具:armccarmcc是ARM

3、C编译器。这个编译器通过了PlumHallCValidationSuite为ANSIC的一致性测试。armcc用于将用ANSIC编写的程序编译成32位ARM指令代码。因为armcc是我们最常用的编译器,所以对此作一个详细的介绍。在命令控制台环境下,输入命令:armcchelp可以查看armcc的语法格式以及最常用的一些操作选项armcc最基本的用法为:armccoptionsfile1file2.filen这里的option是编译器所需要的选项,fiel1,file2filen是相关的文件名。这里简单介绍一些最常用的操作选项。-c:表示只进行编译不链接文件;-C:(注意:这是大写的C)禁止预编

4、译器将注释行移走;-D:定义预处理宏,相当于在源程序开头使用了宏定义语句#definesymbol,这里symbol默认为1;-E:仅仅是对C源代码进行预处理就停止;-g:指定是否在生成的目标文件中包含调试信息表;-I:将directory所指的路径添加到#include的搜索路径列表中去;-J:用directory所指的路径代替默认的对#include的搜索路径;-o:指定编译器最终生成的输出文件名。-O0:不优化;-O1:这是控制代码优化的编译选项,大写字母O后面跟的数字不同,表示的优化级别就不同,-O1关闭了影响调试结果的优化功能;-O2:该优化级别提供了最大的优化功能;-S:对源程序进

5、行预处理和编译,自动生成汇编文件而不是目标文件;-U:取消预处理宏名,相当于在源文件开头,使用语句#undefsymbol;-W:关闭所有的或被选择的警告信息;有关更详细的选项说明,读者可查看ADS软件的在线帮助文件。armcpparmcpp是ARMC+编译器。它将ISOC+或EC+编译成32位ARM指令代码。tcctcc是ThumbC编译器。该编译器通过了PlumHallCValidationSuite为ANSI一致性的测试。tcc将ANSIC源代码编译成16位的Thumb指令代码。tcpptcpp是ThumbC+编译器。它将ISOC+和EC+源码编译成16位Thumb指令代码。armasm

6、armasm是ARM和Thumb的汇编器.它对用ARM汇编语言和Thumb汇编语言写的源代码进行汇编。armlinkarmlink是ARM连接器。该命令既可以将编译得到的一个或多个目标文件和相关的一个或多个库文件进行链接,生成一个可执行文件,也可以将多个目标文件部分链接成一个目标文件,以供进一步的链接。ARM链接器生成的是ELF格式的可执行映像文件。armsdarmsd是ARM和Thumb的符号调试器。它能够进行源码级的程序调试。用户可以在用C或汇编语言写的代码中进行单步调试,设置断点,查看变量值和内存单元的内容。8.1.1.1armcc用法详解下面为读者介绍上述的4种ARMC和C+编译器的命

7、令通用语法。compilerPCS-optionssource-languagesearch-pathspreprocessor-optionsoutput-formattarget-optionsdebug-optionscode-generation-optionswarning-optionsadditional-checkserror-optionssource用户可以通过命令行操作选项控制编译器的执行。所有的选项都是以符号”-”开始,有些选项后面还跟有参数。在大多数情况下,ARMC和C+编译器允许在选项和参数之间存在空格。命令行中各个选项出现顺序可以任意。这里的compiler是指a

8、rmcc,tcc,armcpp和tcpp中的一个;PCS-options:指定了要使用的过程调用标准;source-language:指定了编译器可以接受的编写源程序的语言种类。对于C编译器默认的语言是ANSIC,对于C+编译器默认是ISO标准C+;search-paths:该选项指定了对包含的文件(包括源文件和头文件)的搜索路径;preprocessor-options:该选项指定了预处理器的行为,其中包括预处理器的输出和宏定义等特性;output-format:该选项指定了编译器的输出格式,可以使用该项生成汇编语言输出列表文件和目标文件;target-options:该选项指定目标处理器或

9、ARM体系结构;debug-options:该选项指定调试信息表是否生成,和该调试信息表生成时的格式;code-generation-options:该选项指定了例如优化,字节顺序和由编译器产生的数据对齐格式等选项;warning-options:该选项决定警告信息是否产生;additional-checks:该选项指定了几个能用于源码的附加检查,例如检查数据流异常,检查没有使用的声明等;error-options:该选项可以关闭指定的可恢复的错误,或者将一些指定的错误降级为警告;source:该选项提供了包含有C或C+源代码的一个或多个文件名,默认的,编译器在当前路径寻找源文件和创建输出文件

10、。如果源文件是用汇编语言编写的(也就是说该文件的文件名是以.s作为扩展名),汇编器将被调用来处理这些源文件。如果操作系统对命令行的长度有限制,可以使用下面的操作,从文件中读取另外的命令行选项:-viafilename该命令打开文件名为filename的文件,并从中读取命令行选项。用户可以对-via进行嵌套调用,亦即,在文件filename中又通过-viafinlename2包含了另外一个文件。在下面的例子中,从input.txt文件中读取指定的选项,作为armcpp的操作选项:armcpp-viainput.txtsource.c以上是对编译器选项的一个简单概述。它们(包括后面还要介绍的其他一

11、些命令工具)既可以在命令控制台环境下使用,同时由于它们被嵌入到了ADS的图形界面中,所以也可以在图形界面下使用。8.1.1.2armlink用法详解在介绍armlink的使用方法之前,先介绍要涉及到的一些术语。映像文件(image):是指一个可执行文件,在执行的时候被加载到处理器中。一个映像文件有多个线程。它是ELF(Executableandlinkingformat)格式的。段(Section):描述映像文件的代码或数据块。RO:是Read-only的简写形式。RW:是Read-write.的简写形式。ZI:是Zero-initialized的简写形式。输入段(inputsection):

12、它包含着代码,初始化数据或描述了在应用程序运行之前必须要初始化为0的一段内存。输出段(outputsection):它包含了一系列具有相同的RO,RW或ZI属性的输入段。域(Regions):在一个映像文件中,一个域包含了1至3个输出段。多个域组织在一起,就构成了最终的映像文件。ReadOnlyPositionIndependent(ROPI):它是指一个段,在这个段中代码和只读数据的地址在运行时候可以改变。ReadWritePositionIndependent(RWPI):它是指一个段,在该段中的可读/写的数据地址在运行期间可以改变。加载时地址:是指映像文件位于存储器(在该映像文件没有运行

13、时)中的地址。运行时地址:是指映像文件在运行时的地址。下面介绍一下armlink命令的语法完整的连接器命令语法如下:armlink-help-vsn-partial-outputfile-elf-reloc-ro-baseaddress-ropi-rw-baseaddress-rwpi-split-scatterfile-debug|-nodebug-remove?RO/RW/ZI/DBG|-noremove-entrylocation-keepsection-id-firstsection-id-lastsection-id-libpathpathlist-scanlib|-noscanli

14、b-locals|-nolocals-callgraph-infotopics-map-symbols-symdefsfile-editfile-xref-xreffromobject(section)-xreftoobject(section)-errorsfile-listfile-verbose-unmangled|-mangled-matchcrossmangled-viafile-strict-unresolvedsymbol-MI|-LI|-BIinput-file-list上面各选项的含义分别为:-help这个选项会列出在命令行中常用的一些选项操作。-vsn这个选项显示出所用的armlink的版本信息。-partial用这个选项创建的是部分链接的目标文件而不是可执行映像文件。-outputfile这个选项指定了输出文件名,该文件可能是部分链接的目标文件,也可能是可执行映像文件。如果输出文件名没有特别指定的话,armlink将使用下面的默认:如果输出是一个可执行映像文件,则生成的输出文件名为_image.axf;如果输出是一个部分链接的目标文件,在生成的文件名为_object.o;如果没有指定输出文件的路径信息,则输出文件就在当前目录下生

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1