




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 1Metrowerks CodeWarrior集成开发环境介绍集成开发环境介绍IDETCO-国际数码嵌入式系统培训讲义 2006.8 2 ADS集成开发环境是集成开发环境是ARM公司推出的公司推出的ARM核微控制器集成开发工核微控制器集成开发工具,英文全称具,英文全称“ARM Developer Suite”,ADS1.2是成熟版本。是成熟版本。 ADS1.2支持支持ARM10之前之前的所有的所有ARM系列微控制器系列微控制器,支持,支持软件调试软件调试及及JTAG硬件仿真调试硬件仿真调试,支持,支持汇编、汇编、C、C+源程序,可在源程序,可在Windows98、Windows2000、Wi
2、ndowsXP以及以及RedHat Linux上运行。上运行。ADS集成开发环境介绍集成开发环境介绍 3名称名称描述描述使用方式使用方式代码生成工具ARM汇编器,ARM的C、C+编译器,Thumb的C、C+编译器,ARM的连接器由Code Warrior调用集成开发工具Code Warrior IDE工程管理编译连接调试器AXD,ADW/ADU,armsd仿真调试指令模拟器ARMulator由AXD调用ARM开发包一些底层的例程,实用程序(fromELF)由Code Warrior IDE调用ARM应用库C、C+函数库等用户程序使用ADS的组成的组成 4 有了以上部件,用户就可以为有了以上部件
3、,用户就可以为ARM系列的系列的RISC处理器编写和调试处理器编写和调试自己的应用程序了。自己的应用程序了。 ADS提供下面的提供下面的命令行开发工具命令行开发工具:armcc是是ARM C编译器编译器,用于将,用于将ANSI C编写的程序编译成编写的程序编译成32位位ARM指令指令代码。代码。armcpp是是ARM C+编译器编译器。它将。它将ISO C+或或EC+编译成编译成32位位ARM指令指令代码。代码。ADS介绍介绍1 5tcc是是Thumb C编译器编译器,用于将,用于将ANSI C源代码编译成源代码编译成16位的位的Thumb指令指令代码。代码。tcpp是是Thumb C+编译器
4、编译器。它将。它将ISO C+和和EC+源码编译成源码编译成16位位Thumb指令代码。指令代码。armasm是是ARM和和Thumb的汇编器的汇编器。它对用。它对用ARM汇编语言和汇编语言和Thumb汇编汇编语言写的源代码进行汇编。语言写的源代码进行汇编。ADS介绍介绍2 6armlink是是ARM连接器连接器。该命令既可以将编译得到的一个或多个目标文件。该命令既可以将编译得到的一个或多个目标文件和相关的一个或多个库文件进行链接,生成一个可执行文件,也可以将和相关的一个或多个库文件进行链接,生成一个可执行文件,也可以将多个目标文件部分链接成一个目标文件,以供进一步的链接。多个目标文件部分链接
5、成一个目标文件,以供进一步的链接。ARM链链接器生成的是接器生成的是ELF格式的可执行映像文件。格式的可执行映像文件。armsd是是ARM和和Thumb的符号调试器的符号调试器。它能够进行源码级的程序调试。用。它能够进行源码级的程序调试。用户可以在用户可以在用C或汇编语言写的代码中进行单步调试,设置断点,查看变或汇编语言写的代码中进行单步调试,设置断点,查看变量值和内存单元的内容。量值和内存单元的内容。ADS介绍介绍2 7 8新建用户的工程新建用户的工程 9ARM Executable Image:用于由:用于由ARM指令的代码生成一个可执行的指令的代码生成一个可执行的ELF格式的映像文件格式
6、的映像文件。ARM Object Library:用于由:用于由ARM指令的代码生成一个指令的代码生成一个armar格式的目格式的目标文件库。标文件库。Empty Project:用于生成一个不包含任何源文件和库文件的空的工程项:用于生成一个不包含任何源文件和库文件的空的工程项目。目。Make Importer Wizard:用于将一个:用于将一个Visual C的的nmake文件转换成文件转换成CodeWarrior的工程项目文件。的工程项目文件。自带工程模板简介自带工程模板简介 10Thumb ARM Interworking Image:用于由:用于由ARM指令和指令和Thumb指令的混
7、指令的混合代码生成一个可执行的合代码生成一个可执行的ELF格式的映像文件格式的映像文件。Thumb Executable Image:用于由:用于由Thumb指令的代码生成一个可执行的指令的代码生成一个可执行的ELF格式的映像文件格式的映像文件。Thumb Object Library:用于由:用于由Thumb指令的代码生成一个指令的代码生成一个armar格式格式的目标文件库。的目标文件库。自带工程模板简介自带工程模板简介 11ARM7 Executable Image for lpc2210:无操作系统时,所有:无操作系统时,所有C代码均编译成代码均编译成ARM指令,由指令,由ARM指令的代
8、码生成一个可执行的指令的代码生成一个可执行的ELF格式的映像文件格式的映像文件,针对,针对LPC2210芯片。芯片。ARM7 Executable Image for UCOSII( for lpc2210 ):有:有UCOSII操作系统时,所操作系统时,所有有C代码均编译成代码均编译成ARM指令,由指令,由ARM指令的代码以及指令的代码以及UCOSII代码生成一个代码生成一个可执行的可执行的ELF格式的映像文件格式的映像文件,针对,针对LPC2210芯片。芯片。Project Module for SeaARM5.0:无操作系统时,所有:无操作系统时,所有C代码均编译成代码均编译成ARM指令
9、,指令,由由ARM指令的代码生成一个可执行的指令的代码生成一个可执行的ELF格式的映像文件格式的映像文件,针对,针对SeaARM5.0系统,针对系统,针对lpc2210芯片。芯片。用户工程模板简介用户工程模板简介 12在自带的工程模版下建立文件在自带的工程模版下建立文件 13 注意:注意:新建新建*.c,*.s等文件时,必须将等文件时,必须将后缀名后缀名写上。写上。生成目标:生成目标: Debug:包含了所有调试信息。:包含了所有调试信息。 DebugRel:包含了部分调试信息。:包含了部分调试信息。 Release:不包含调试信息。:不包含调试信息。 如果当前生成目标为如果当前生成目标为De
10、bug,通过,通过Debug Settings对话框设对话框设 置的各种选项对于其他两个生成目标是无效的。置的各种选项对于其他两个生成目标是无效的。 14在用户的工程模板下建立文件在用户的工程模板下建立文件 15 注意:注意:生成目标生成目标: DebugInExram:用户系统在调试时,:用户系统在调试时,片外片外RAM使用使用BANK0(起始地址起始地址为为0 x8000 0000),所以选用此生成目标。,所以选用此生成目标。 RelOutChip:用户系统调试时,:用户系统调试时,片外片外Flash使用使用BANK0(起始地址为起始地址为0 x8000 0000),所以选用此生成目标。,
11、所以选用此生成目标。 如果当前生成目标为如果当前生成目标为DebugInExram ,通过,通过Debug Settings 对话框设置的各种选项对于另一个生成目标是无效的。对话框设置的各种选项对于另一个生成目标是无效的。用户的工程模板已经将编译的参数设置好了,可以直接使用。用户的工程模板已经将编译的参数设置好了,可以直接使用。 16用户用户工程环境介绍工程环境介绍 17(1) Files视图:包含了当前工程项目中所有输入文件的列表,而不论这些文件是否包含在当前生成目标中。(2) Link Order视图:包含了当前生成目标中的所有输入文件。(3) target视图:列举出一个工程项目中的生成
12、目标以及它们之间的相互依存关系。用户工程环境介绍用户工程环境介绍1 18(4) DebugRel Setting:工程设置,如地址设置、输出文件设置、编译选项等。(5) Synchronize Modefication Date:同步修改日期,若发现有更新,则在Touch栏标记“”。(6) Make:编译连接(F7为快捷键)。 (7) Debug:启动AXD进行调试(F5为快捷键)。用户工程环境介绍用户工程环境介绍2 19(8) Run:启动AXD进行调试,并直接运行程序。(9) Project Inspector:工程检查,查看和配置工程项目中源文件的信息。(10) code栏:显示某个文件
13、生成的可执行目标文件的大小,单位为Byte或KByte。对于组来说,显示的是该组中所有文件对应的目标文件的总大小。 “0”:表示该文件还没有被编译或者汇编; “n/a”:表示该文件不包含在当前生成目标中。用户工程环境介绍用户工程环境介绍3 20(11) Data栏:显示某个文件生成的可执行目标文件中数据的大小,单位为Byte,KByte,MByte。 “0”:表示该文件还没有被编译或者汇编; “n/a”:表示该文件不包含在当前生成目标中。 由于连接器在连接时,可能删除没有被使用的段,所以这里显示的数据大小与包含在最终的映像文件中的数据大小可能并不相同。(12) target栏:表示某个文件是否
14、包含在当前生成目标中。 “”:标识对应的文件或组被包含在当前生成目标中; “”: 如果显示灰色,表示对应的子组中只有部分文件被包含在当前生成目标中。 用户工程环境介绍用户工程环境介绍4 21(13) Debug栏:为单个文件指定是否生成调试信息。 如果该栏为“”,标识编译器/汇编器将为对应的文件或者组生成调试信息。 如果该栏为“”灰色,标识编译器/汇编器将为对应的组中部分文件生成调试信息。(14)Touch栏:用于标识对应的文件或子工程项目是否将会被汇编、编译或引入。如果该栏为“”,表示对应文件或子工程项目在下一次执行命令make、run、debug时将会被汇编、编译或引入。用户工程环境介绍用
15、户工程环境介绍5 22生成目标设置生成目标设置1 23 在DebugInExram Settings对话框中包含六个面板,用户可以选择某个面板设置相关的生成选项。这些选项作用于工程项目中当前生成目标。(1) 生成目标基本选项设置面板(2) 编程语言选项设置面板(3) 连接器选项设置面板(4) 编辑器选项设置面板(5) 调试器选项设置面板(6) 其他选项设置面板生成目标设置生成目标设置2 24 设置Target Settings选项组:(7) Target Name:用于设置当前生成目标的名称。(8) Linker:用于选择使用的连接器。它决定了Target Settings对话框中其他选项的设
16、置。 ARM Linker:选择ARM连接器armlink连接编译器和汇编器生成的目标文件。 ARM Librarian:选择ARM的librarian工具,将编译器和连接器生成的文件转化成ARM库文件。 None:不使用任何连接器,此时项目中的文件不会被汇编器和编译器处理。生成目标设置生成目标设置3 25 设置Target Settings选项组:(9) Pre-Linker:Code Warrior IDE for ARM当前没有使用本选项。(10) Post-Linker:用于选择对连接器输出的文件的处理方式:None:不进行连接后的处理。 ARM fromELF:使用ARM工具from
17、ELF处理连接器输出的ELF格式的文件,它可以将ELF格式的文件转换成各种二进制文件格式。 FTP Post-Linker:Code Warrior IDE for ARM当前没有使用本选项值。 Batch File Runner:在连接完成后运行一个DOS格式的批处理文件。生成目标设置生成目标设置4 26汇编器选项设置汇编器选项设置1 27 ARM Assembler选项,Target选项卡下设置举例:(1) ARM Assembler:汇编器选项设置。 (2) Architecture or Processor:下拉列表框用于选择目标系统中的ARM体系结构版本号或处理器编号。(3) Byt
18、e Order:用于决定使用big-endian大端内存模式,还是使用little-endian小端内存模式。汇编器选项设置汇编器选项设置2 28 (4) Initial State:运行用户程序时,系统的状态是ARM状态还是Thumb状态。但不能切换系统状态。(5) Floating Point:用于选择系统中浮点部件的体系结构。 Pure-Endian softfp:使用软件的浮点运算库,这种运算库支持单一的内存模式,要么为大端格式,要么为小端格式。(6) Equivalent Command Line:列出了当前汇编器选项设置的命令行格式。汇编器选项设置汇编器选项设置3 29汇编器选项设
19、置汇编器选项设置4 30 Options选项卡下设置:(1)Source Line Debug:选中复选框,则ARMASM产生DRAWF2格式的调试信息表。(2) Keep Symbols:选中该复选框,则ARMASM将局部符号保留在目标文件的符号表中,供调试器进行调试时使用。汇编器选项设置汇编器选项设置5 31编译器选项设置编译器选项设置1 32 Code Warrior IDE中内嵌的编译器选项设置,包括8个选项卡。针对Target and Source选项卡:(1)ARM C Compiler:可设置ARM C语言编译器的armcc的选项(2)Architecture and Proce
20、ssor:选择目标系统中的ARM体系结构版本或者处理器的编号。(3)Byte Order:确定使用小端格式还是大端格式。(4) Source Language:确定源文件的类型。选择ANSI/ISO Standard C,指定源程序满足比较严格的ANSI C标准。编译器选项设置编译器选项设置2 33连接器选项设置连接器选项设置1 34 Code Warrior IDE中内嵌的连接器选项设置,包括5个选项卡。针对Output选项卡: (1) ARM Linker:可设置ARM 连接器的选项 (2) Linktype Simple :选择该按钮,连接器根据Simple image项目中指定的地址映射方式,生成简单的ELF格式的映像文件。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 银行岗位试题预测试卷附答案详解【能力提升】
- 醉酒驾驶与毒驾相关法律法规试题及答案
- 2025年有色金属行业资源循环利用产业链产业链绿色生产与清洁生产研究报告
- 考点解析北师大版9年级数学上册期中试题含答案详解AB卷
- 2025至2030年中国银杏茶叶市场调查研究及行业投资潜力预测报告
- 押题宝典执业药师资格证之《西药学专业二》试题及参考答案详解【a卷】
- 护士企业编制面试题库附完整答案详解【必刷】
- 2025年智能路灯控制系统开发合同
- 2025年度特种设备安全检测第三方服务合同
- 2025版自驾租赁公司司机入职合同范本
- 2025云南省腾冲市边防办招聘边境专职联防员(10人)笔试备考试题及答案解析
- 湘教版七年级地理上册同步课时教学设计
- 涂装安全知识培训课件
- 2025企业级AI Agent(智能体)价值及应用报告
- 《党政机关厉行节约反对浪费条例》培训课件
- 中外航海文化知到课后答案智慧树章节测试答案2025年春中国人民解放军海军大连舰艇学院
- 75号公告专利收费项目和标准(官费)
- 高中生物第一课-(共24张)课件
- 电气原理图基础知识课件
- 新教师跟岗学习实施方案
- 2022年高考全国甲卷:写作指导及范文课件16张
评论
0/150
提交评论