




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1,ADS的使用,广嵌教育,2,第六章 ADS的使用,6.1 ADS概述 6.2 ADS的配置 6.3 简单项目工程的使用 6.4 复杂项目工程的使用,3,6.1ADS概述,ARM ADS的英文全称为 ARM Developer Suite,是ARM公司推出的新一代ARM集成开发工具,用来取代ARM公司以前推出的开发工具ARM SDT,目前ARM ADS的最新版本为1.2。 Multi-ICE 是ARM 仿真器,支持ARM 公司的ARM7、ARM9、ARM10、StrongARM、Xscale 等ARM 内核。 ADS 主要由三个部分组成:Multi-ice Server(连接工具,用于识别A
2、RM 内核),Code warrior(集成编辑、编译和链接工具)和AXD(调试工具)。,4,6.1ADS概述,ARM ADS由六部分组成: 代码生成工具(Code Generation Tools) 集成开发环境(CodeWarrior IDE from Metrowerks) 调试器(Debuggers) 指令集模拟器(Instruction Set Simulators) ARM 开发包(ARM Firmware Suite) ARM应用库(ARM Applications Library),5,6.1ADS概述,ADS1.2-主要模块: ANSI C 编译器 armcc and tcc
3、 ISO / Embedded C+ 编译器 armcpp and tcpp ARM / Thumb 汇编器 armasm Linker armlink Windows 集成开发环境 CodeWarrior Debugger AXD armsd 可向前兼容 格式转换器 fromelf C and C+ 库 指令级仿真器 - ARMulator,6,6.1ADS概述,支持数据类型: char8 bit byte short16 bit half-word int32 bit word long32 bit integer float32 bit IEEE single-precision dou
4、ble64 bit IEEE double-precision pointers32 bits long long64 bit integer,7,Multi-ICE的特点,Multi-ICE是ARM公司自己的JTAG在线仿真器,目前的最新版本是2.1版。Multi-ICE的JTAG链时钟可以设置为5 kHz到10 MHz,实现JTAG操作的一些简单逻辑由FPGA实现,使得并行口的通信量最小,以提高系统的性能。 Multi-ICE 2.x支持ARM7、ARM9、ARM9E、ARM 10和Intel Xscale微结构系列。 Multi-ICE主要优点: 快速的下载和单步速度。 用户控制的输入/
5、输出位。 可编程的JTAG位传送速率。 开放的接口,允许调试非ARM的核或DSP。 网络连接到多个调试器。 目标板供电,或外接电源。,8,ARM交叉开发环境的模型,9,开发环境的作用,10,命令行开发工具,完成将源代码编译,链接成可执行代码。 命令行开发工具需要记忆较多的命令参数,但效率高;通常用集成开发环境(IDE)代替。 ADS提供下面的命令行开发工具: Armcc: ARM C编译器 Armcpp: ARM C+编译器 Armasm:ARM汇编编译器 Armlink: ARM连接器,11,ARM运行时库,运行时库就是 C run-time library。 当用户对汇编程序,C程序或C+
6、程序进行链接的时候,链接器会根据在建立时所指定的选项,选择适当的C或C+运行时库的类型。 ADS提供以下的运行时库来支持被编译的C和C+代码: ANSI C库函数 C+库函数,12,CodeWarrior for ARM,CodeWarrior集成开发环境(IDE)为管理和开发项目提供了简单多样化的图形用户界面。 用户可以使用ADS的CodeWarrior IDE为ARM和Thumb处理器开发用C,C+,或ARM汇编语言的程序代码 。 全面的项目管理功能。 CodeWarrior for ARM是一套完整的集成开发工具,充分发挥了ARM RISC 的优势。 在整个开发周期中,开发人员无需离开C
7、odeWarrior开发环境,提高了效率。,13,CodeWarrior for ARM,功能特色 源代码编辑器 集成在CodeWarrior IDE的浏览器中,能够根据语法格式,使用不同的颜色显示代码; 源代码浏览器 保存了在源码中定义的所有符号,能够使用户在源码中快速方便的跳转; 查找和替换功能 用户可以在多个文件中,利用字符串通配符,进行字符串的搜索和替换;,14,CodeWarrior for ARM,创建工程项目 ADS通过工程项目来组织用户的源文件、库文件、头文件、以及其他的输入文件。 生成映象文件: Debug:生成的映象文件包含所有的调试信息; Release:生成的映象文件不
8、包含调试信息; DebugRel:生成的映象文件包含了基本的调试信息。,15,CodeWarrior for ARM,工程项目窗口 File视图: 包含工程项目中的所有文件的列表,选择文件是否要编译,显示生成可执行文件的大小和数据段大小。 Link Order视图: 包含当前生成目标中的所有输入文件。 Target视图: 显示了工程项目中的生成目标映象。,16,CodeWarrior for ARM,配置生成目标 汇编器 编译器 链接器 调试器 编译链接后生成: *.axf:含有调试信息的可执行ELF格式文件; *.bin可烧写的二进制映像文件; *.hex:可烧写的十六进制映像文件。,17,
9、AXD调试工具,在软件开发的最初阶段,可能还没有具体的硬件设备。如果要测试所开发的软件是否达到了预期的效果,这可以由软件仿真来完成。 可以搭建一个PCB板,这个板上可以包含一个或多个处理器,在这个板上可以运行和调试应用软件。 只有当通过硬件或者是软件仿真所得到的结果达到了预期的效果,才算是完成了应用程序的编写工作。,18,AXD调试工具,调试器能够发送以下指令: 装载映像文件到目标内存; 启动或停止程序的执行; 显示内存,寄存器或变量的值; 允许用户改变存储的变量值。,19,6.2 ADS的配置,建立工程 在磁盘里新建一个目录“D:arm” 打开ADS软件 点击工具栏“File”,下拉点击“N
10、ew”,20,CodeWarrior配置及使用,创建一个可执行ARM映象工程,21,CodeWarrior配置及使用,对话框中为用户提供了7种可选择的工程类型: ARM Executable Image:用于由ARM指令的代码生成一个ELF格式的可执行映像文件。 ARM Object Library:用于由ARM指令的代码生成一个armar格式的目标文件库。 Empty Project:用于创建一个不包含任何库或源文件的工程。 Makefile Importer Wizard:用于将Visual C的nmake或GNU make文件转入到CodeWarrior IDE 工程文件。 Thumb
11、ARM Interworking Image:用于由ARM指令和Thumb指令的混和代码生成一个可执行的ELF格式的映像文件。 Thumb Executable image:用于由Thumb指令创建一个可执行的ELF格式的映像文件。 Thumb Object Library:用于由Thumb指令的代码生成一个armar格式的目标文件库。,22,CodeWarrior配置及使用,选择ARM Executable Image工程,在Project name文本框中输入工程文件名如2410UART,单击Set按钮,可更改该工程保存的路径,将这些设置好后,单击“确定”即可建立一个新的名为2410UAR
12、T.mcp的ADS工程。*.mcp文件是ARM 的工程文件,当建立一个工程文件后,可以通过打开该工程的*.mcp文件在CodeWarrior中打开该工程。 这时会出现2410UART.mcp的窗口。可以看到它默认的目标调试环境是DebugRel,单击旁边的下三角按钮,可以看到还有另外两个可用的目标调试环境,分别为Release和Debug。,23,6.2 ADS的配置,工程界面,24,6.2 ADS的配置,工程界面,25,6.2 ADS的配置,创建源文件,26,6.2 ADS的配置,添加源文件,27,CodeWarrior配置及使用,创建工程2410UART的窗口,28,CodeWarrior
13、配置及使用,生成目标的配置: 选择Edit | DebugRel Settings命令或直接单击工具栏上的DebugRel Settings图标,可以对生成的目标文件进行配置。这个选项会因创建工程时选 择目标调试系统不同而不同。,29,Target设置选项,Target Name文本框显示了当前的目标设置。 Linker下拉列表框供用户选择要使用的链接器。这里默认的是ARM Linker,使用该链接器,将使用ARM Linker链接编译器和汇编器生成的工程文件作为相应目标文件。 另外两个可选项,None表示不用任何链接器即工程中的所有文件都不会被编译器或汇编器处理。ARM Librarian表
14、示将编译或汇编得到的目标文件转换为ARM库文件。这里使用默认的链接器ARM Linker。 Post-Linker下拉列表框表示链接后,对输出文件进行怎样的操作。选择ARM fromELF,30,Target设置选项,Target设置选项,31,Language Settings,ARM ADS的汇编器是armasm。如图所示,这里可以进行很多设置,包 括运行的目标处理器的内核系列,可根据运行的目标板处理器类型进行选择。,32,Linker设置,选中ARM Linker,打开对话框。对话框的主要标签选项对最终生成的文件有着直接的影响。 在选项卡Output中,Linktype选项中提供了3种链
15、接方式。 Partial方式表示链接器只进行部分链接,经过部分链接生成的目标文件,可以作为以后进一步链接时的输入文件。 Simple方式是默认的链接方式,它链接生成简单的ELF格式的目标文件,使用的是链接器选项中指定的地址映射方式。 Scattered方式使链接器根据scatter格式文件指定地址映射,生成复杂的ELF格式的映像文件。 这里选择常用默认的Simple方式。,33,Linker设置,在选中Simple方式后,就会出现Simple image,其各项含义: RO Base:即Read-Only段。RO Base设置为包含RO输出段的加载和执行地址,地址值必须字对齐。(注: RO B
16、ase的设置与硬件地址及生成的映象程序是相关的)。 RW Base:即Read-write段。这个文本框设置了包含RW和ZI(zero-initialized)输出段的运行域地址。如果选中split选项,链接器生成的映像文件将包含两个加载域和两个运行域。此时,在RW Base中所输入的地址为包含RW和ZI输出段的域设置了加载域和运行域地址。(注:RW Base须设置成SDRAM内的地址) Ropi:选中这个复选框将告诉链接器使包含有RO输出段的运行域位置无关。使用这个选项,链接器将保证:首先检查各段之间的重地址是否有效,其次确保任何由ARM链接器armlink自身生成的代码是只读位置无关的。,
17、34,Linker设置,Rwpi:选中该复选框将会告诉链接器使包含RW和ZI输出段的运行域位置无关。如果它没有被选中,域就标识为绝对。每一个可写的输入段必须是读写位置无关的。如果被选中,链接器检查可读/可写属性的运行域的输入段是否设置了位置无关属性,检查在各段之间的重地址是否有效。 Split Image:选中这个复选框把包含RO和RW输出段的加载域分成两个加载域:一个是包含RO输出段的域,一个是包含RW输出段的域。 Relocatable:选中这个复选框保留了映像文件的重地址偏移量。这些偏移量为程序加载器提供了有用信息。 Options选项卡,用于指明存储器的替换方法、调试信息的设置和映像文件的初始入
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 编导创业团队介绍
- 水电工程环境治理- 合同责任与义务
- 纺织品购销合同样本
- 股权质押合作借款协议合同
- 耳鼻咽喉科课件
- 智能家居采购合同范本
- 大型工厂蒸汽供应设备采购合同2025
- 汽车行业劳动合同模板大全
- 洗刷刷创意画课件
- 技术顾问合作合同文本
- 《2024年 大学计算机基础考试系统的分析与设计》范文
- 广东省珠海市香洲区2023-2024学年七年级下学期期末历史试题(解析版)
- 鸢飞鱼跃:〈四书〉经典导读智慧树知到答案2024年四川大学
- 2024年浙江省初中学业水平考试社会试题(解析版)
- 新版高中物理必做实验目录及器材-(电子版)
- 2024年中考英语新热点时文阅读-中华文化(二)
- 《制作叶脉书签》教案
- 2024年吉林长春市地理中考试卷真题及答案详解(精校打印)
- 对老赖的拘留申请书
- 煤矿班组安全生产建设新版制度汇编
- 2022年乡镇退役军人工作计划
评论
0/150
提交评论