《微机原理与嵌入式系统》chapter8ADS集成开发环境的使用-PPT课件
合集下载
精品课件-微机原理与嵌入式系统-第8章

第 8 章 ARM 开发工具ADS
1) 指令集模拟器 ADS集成开发环境提供了指令集模拟器(ARMUL),可使用户在 PC机上完成基于处理器寄存器和存储器的程序调试工作。由于指 令集模拟器不能模拟外设的工作情况,与真实的硬件环境相差较 大,因此即使用户使用指令集模拟器调试通过的程序,也还要在 真实的硬件环境下再调试。指令集模拟器调试只能作为一种初步 调试,主要是用于用户程序的模拟运行,用来检查语法、程序的 结构和程序算法等错误。用户最终必须在真实的硬件环境中实际 运行调试,完成整个应用的开发。
AXD是基于Windows操作系统平台的ARM调试器,它提供了一 个功能完备的调试环境,可用于调试C、C++和汇编语言级编写的 用户代码。在AXD中打开ELF格式映像文件后,可以选择全速运行 代码、设置断点或单步运行代码,可以查看各个寄存器、存储器 单元及变量的值等。
第 8 章 ARM 开发工具ADS
第 8 章 ARM 开发工具ADS
PC机处理器是X86系列芯片,与ARM7 TDMI的指令集不相同。 因此,在ARM ADS集成开发环境上编写的源程序需要经过交叉编 译器,才能生成运行在目标板上的ARM7机器语言程序。ARM ADS 包含了C、C++和汇编语言等的交叉编译器,在PC平台上,能将C、 C++和汇编语言等语言源程序编译成ARM7指令集的机器语言目标 程序。所谓交叉编译,是指在某一机型上编译出另外一个机型的 目标代码。
第 8 章 ARM 开发工具ADS
第8章 ARM 开发工具 ADS
8.1 ADS简介 8.2 ADS中的工程管理工具CodeWarrior IDE 8.3 ADS中的调试工具AXD 8.4 ADS环境汇编程序设计实例 本章小结 习题
ADS集成开发环境的使用教材(PPT 180页)

• 嵌入式系统的开发必然有其自身的许多特点:软硬件可配置、功能可 靠、成本低、体积小、功耗低、实时性强。嵌入式系统受 功能和具体应用环境的约束,其开发流程就就不同于一般 的通用计算机系统。
• 嵌入式系统设计是使用一组物理硬件和软件来完成所需功能的过程, 系统是指任何由硬件、软件或者两者的结合而构成的功能设备。
ARM RISC 的优势, 使产品开发人员能够很好的应用尖端的片上系统
技术。
•
该工具是专为基于ARM RISC的处理器而设计的, 它可加速并简
化嵌入式开发过程中的每一个环节,使得开发人员只需通过一个集成
软件开发环境就能研制出ARM产品,在整个开发周期中,开发人员无
需离开CodeWarrior开发环境, 因此节省了在操作工具上花的时间,使
得开发人员有更多的精力投入到代码编写上来,Code Warrior IDE 主
窗口如图6-12所示。
图6-12 ADS集成开发环境界面
ADS的CodeWarrior集成开发环境(IDE)为管理和开发项目提供了简单多 样化的图形用户界面。针对ARM的配置面板为用户提供了在CodeWarrior IDE集成环境下配置各种ARM开发工具的能力。用户可以使用ADS的 CodeWarrior IDE为ARM和Thumb处理器开发用C,C++或ARM汇编语言的 程序代码。
图6-4 ADS安装步骤一 在图6-4所示的界面中,双击执行SETUP.EXE,进入安装界面。点击 Browse,确定安装目录,或者按照默认目录安装。并点击Next,如图6-5所示。
图6-5 ADS安装步骤二
• 在图6-6所示的界面中选择安装类型,选Full 类型安装。并点击Next。
图6-6 ADS安装步骤三
• 嵌入式系统设计是使用一组物理硬件和软件来完成所需功能的过程, 系统是指任何由硬件、软件或者两者的结合而构成的功能设备。
ARM RISC 的优势, 使产品开发人员能够很好的应用尖端的片上系统
技术。
•
该工具是专为基于ARM RISC的处理器而设计的, 它可加速并简
化嵌入式开发过程中的每一个环节,使得开发人员只需通过一个集成
软件开发环境就能研制出ARM产品,在整个开发周期中,开发人员无
需离开CodeWarrior开发环境, 因此节省了在操作工具上花的时间,使
得开发人员有更多的精力投入到代码编写上来,Code Warrior IDE 主
窗口如图6-12所示。
图6-12 ADS集成开发环境界面
ADS的CodeWarrior集成开发环境(IDE)为管理和开发项目提供了简单多 样化的图形用户界面。针对ARM的配置面板为用户提供了在CodeWarrior IDE集成环境下配置各种ARM开发工具的能力。用户可以使用ADS的 CodeWarrior IDE为ARM和Thumb处理器开发用C,C++或ARM汇编语言的 程序代码。
图6-4 ADS安装步骤一 在图6-4所示的界面中,双击执行SETUP.EXE,进入安装界面。点击 Browse,确定安装目录,或者按照默认目录安装。并点击Next,如图6-5所示。
图6-5 ADS安装步骤二
• 在图6-6所示的界面中选择安装类型,选Full 类型安装。并点击Next。
图6-6 ADS安装步骤三
嵌入式系统的PPT课件

地址
指令寄存器
控制器
指令
数据通道
输入
输出
中央处理器
地址 数据
程序存储器
指令0 指令1 指令2
数据存储器
数据0 数据1 数据2
9
CISC和RISC
CISC:复杂指令集(Complex Instruction Set Computer)
具有大量的指令和寻址方式 8/2原则:80%的程序只使用20%的指令 大多数程序只使用少量的指令就能够运行。 RISC:精简指令集(Reduced Instruction Set Computer) 在通道中只包含最有用的指令 确保数据通道快速执行每一条指令 使CPU硬件结构设计变得更为简单
10
CISC与RISC的数据通道
开始
IF
ID
ALU MEM REG
退出
微操作通道
开始
IF
ID
REG ALU MEM
退出
单通数据通道
11
CISC的背景和特点
背景:存储资源紧缺, 强调编译优化 增强指令功能,设置一些功能复杂的指令,把一些原来由
软件实现的、常用的功能改用硬件的(微程序)指令系统 来实现 为节省存储空间,强调高代码密度,指令格式不固定,指 令可长可短,操作数可多可少 寻址方式复杂多样,操作数可来自寄存器,也可来自存储 器 采用微程序控制,执行每条指令均需完成一个微指令序列 (微程序) CPI > 5,指令越复杂,CPI越大。
15
CISC与RISC的对比
类别
CISC
指令系统 指令数量很多
RISC 较少,通常少于100
执行时间 编码长度
有些指令执行时间很长,如 整块的存储器内容拷贝;或 将多个寄存器的内容拷贝到 存贮器
嵌入式系统与集成开发技术概述 ppt课件

基本的流程如下:
ppt课件 15
复位代码 ——》硬件初始化代码——》启动代码——》操作系统代码——》执行任务
嵌入式系统软件开发程序员如果选择了合适的操作系统的话,那他就只需要做两件事情: 一是编写外设的驱动程序,如果操作系统没有提供的话;二是编写应用程序。
ppt课件
16
3.2嵌入式软件技术面临挑战
ppt课件
ቤተ መጻሕፍቲ ባይዱ
6
1.2 嵌入式系统的现状
嵌入式系统是计算机的一种应用形式,通常指嵌入在主设备中的微处理机系统,此类计 算机一般不被设备使用者在意,亦称埋嵌入式计算机,典型机种如微控制器、微处理器 和DSP等。 计算机应用的普及、互联网技术的实用以及纳米微电子技术的突破,正有力推动着 21 世纪工业生产、商业活动、科学实验和家庭生活等领域自动化和信息化进程。全过程自 动化产品制造、大范围电子商务活动、高度协同科学实验以及现代化家庭起居,为嵌入 式产品造就了崭新而巨大的商机。除了沟通信息高速公路的交换机、路由器和Modem,构 建CIMS所需的DCS和机器人以及规模较大的家用汽车电子系统。最有产量效益和时代特征 的嵌入式产品应数因特网上的信息家电 (Internet Appliances), 如 Web 可视电话、 Web 游 戏机、 Web PDA( 俗称电子商务、商务通 ) 、 WAP 电话手机、以及多媒体产品,如 STB( 电视 机顶盒)、DVD播放机、电子阅读机。 1、我国软件产业已经具备一定的规模 我国软件产业起步于80年代前期,起步相对较晚,但发展速度较快,现在已经具备一 定的产业规模。特别是在国务院《鼓励软件产业和集成电路产业发展的若干政策》(国发 〔2000〕18号)文件颁发后,我国软件产业更得到蓬勃发展。信息产业部最近公布了2001 年我国软件产值百强企业。其中,华为与中兴公司位居百强的第一和第二位。
教学课件 微机原理与嵌入式接口技术(刘显荣)

逻辑或运算相当于数字电路中的或门 电路, 运算符号为“ ”, 也可以用“+” 表示。
运算法则: 0Λ0=0; 0Λ1=1; 1Λ0=1; 1Λ1=1。 常用于使某些位置 1 的置位操作。
两个完全相同的数进行异或 运算的结果为 0, 因此常用异或 运算进行清零操作。 利用异或
运算法则, 还可以对指定位进
假设有符号数 x, 它的原码表示形式为[x] 原。
例如, 假设用 8 位二进制数表示, 则 如果一个有符号数用 n 位二进制数表示, 除去 1 位符号位外, 用于表示数值的位数 为n-1 位, 则 n 位二进制数原码能表示有 符号数的范围为-2 n-1 +1≤x≤+2 n-1-1。
数值最左边一位为符号位, 用0 表示 正数, 用1 表示负数。 对于正数, 其反码 与原码相同; 对于负数, 数值位逐位取反, 即数值为 1 的位变成 0, 而数值为 0 的位 变成 1。 假设有符号数 x, 它的反码表示 形式为[x] 反 。
1. 二进制无符号数的运算 1) 加法运算 运算法则: 0 + 0 = 0; 1 + 0 = 1; 0 + 1
= 1; 1 + 1 = 0(产生进位)。
2) 减法运算 运算法则: 1-0 = 1; 0-0 = 0; 1-
1 = 0; 0-1 = 1(产生借位)。
3) 乘法运算 运算法则: 0×0=0; 0×1=0; 1×0=0; 1×1=1。
• 图 1.1 补码的时钟图
3. 运算溢出及其判断 前面的例子说明有符号数补码运算能 自动得出结果, 即使产生了进位, 其结果
也是正确的。 试问每次运算的结果都是正
确的吗? 答案是否定的, 先看一个例子。
嵌入式开发课件.ppt

数据总线 序 / 数 据
地址总线 存 储
器
嵌入式系统开发及应用
2.哈佛(Harvard)
结构
哈佛结构的主要特点是
将程序和数据存储在不同的 存储空间中,即程序存储器
数据总线
程
和数据存储器是两个相互独
序
立的存储器,每个存储器独 立编址、独立访问。系统中
存
具有程序的数据总线与地址 总线,数据的数据总线与地 址总线。这种分离的程序总
大概有20%的比较简单的指令被反复使用。 • 精简指令集(Reduced Instruction Set Computer,RISC)体系
优先选取使用频率最高的、很有用但不复杂 的指令,避免使用复杂指令;固定指令长度,减 少指令格式和寻址方式种类。
嵌入式系统开发及应用
1.2.3 流水线技术
指令流水线是将一条指令分解成m个子过程,
嵌入式系统开发及应用
1.3.3 嵌入式DSP处理器
嵌入式DSP处理器(Digital Signal Processor,DSP)是专门用于信号处理方面的 处理器,芯片内部采用程序和数据分开存储和 传输的哈佛结构,具有专门硬件乘法器,采用 流水线操作,提供特殊的DSP指令,可用来快速 地实现各种数字信号处理算法,使其处理速度 比最快的CPU还快10---50倍。
目前主流的32位嵌入式微处理器系列主 要有ARM系列等。
ARM(Advanced RISC Machine)公司的 微处理器体系结构目前被公认为是嵌入式应用 领域领先的32位嵌入式RISC微处理器结构。
目前,70%的移动电话、手持PC采用了ARM处理器,许多芯片厂商都是ARM的授权用户,如Intel、 Samsung、TI等公司。
嵌入式系统开发及应用
微机原理与嵌入式系统基础培训教材

进行的操作。
10/22/2020
page 23
2.ARM Assembler设置
ARM Assembler ARM C Compiler ARM C++ Compiler Thumb C Compiler Thumb C++ Compiler
10/22/2020
page 24
10/22/2020
page 4
8.1 嵌入式系统开发基础
8.1.1 嵌入式系统开发流程 8.1.2 嵌入式软件开发 8.1.3 ARM Developer Suite(ADS)的安装
10/22/2020
page 5
8.1.1嵌入式系统开发流程
1.系统定义与需求分析 2.系统设计方案的初步确立 3.初步设计方案性价比评估与方案评审论证 4.完善初步方案、初步方案实施 5.软硬件集成测试 6.系统功能性能测试及可靠性测试 重要方法:软硬件协同设计
10/22/2020
page 16
8.3.1建立工程
10/22/2020
page 17
7种可选择的工程类型。 ARM Executabl Image :由ARM指令的代码生成ELF格式
的可执行映像文件; ARM Object Library :由ARM指令的代码生成一个armar格
式的目标文件库; Empty Project :创建一个不包含任何库或源文件的工程; Makefile Importer Wizard :将Visual C的nmake或GNU
种文件是程序员输入的ARM汇编语言源文件,包含ARM 指令和Thumb指令。 CodeWarrior projeket file : Code Warrior的工程项目管 理文 件,扩展名是mcp。这种文件是程序员在建立工程项 目时生成的文件,包含工程项目内的所有源文件,也包含 这些源文件的调试信息。
10/22/2020
page 23
2.ARM Assembler设置
ARM Assembler ARM C Compiler ARM C++ Compiler Thumb C Compiler Thumb C++ Compiler
10/22/2020
page 24
10/22/2020
page 4
8.1 嵌入式系统开发基础
8.1.1 嵌入式系统开发流程 8.1.2 嵌入式软件开发 8.1.3 ARM Developer Suite(ADS)的安装
10/22/2020
page 5
8.1.1嵌入式系统开发流程
1.系统定义与需求分析 2.系统设计方案的初步确立 3.初步设计方案性价比评估与方案评审论证 4.完善初步方案、初步方案实施 5.软硬件集成测试 6.系统功能性能测试及可靠性测试 重要方法:软硬件协同设计
10/22/2020
page 16
8.3.1建立工程
10/22/2020
page 17
7种可选择的工程类型。 ARM Executabl Image :由ARM指令的代码生成ELF格式
的可执行映像文件; ARM Object Library :由ARM指令的代码生成一个armar格
式的目标文件库; Empty Project :创建一个不包含任何库或源文件的工程; Makefile Importer Wizard :将Visual C的nmake或GNU
种文件是程序员输入的ARM汇编语言源文件,包含ARM 指令和Thumb指令。 CodeWarrior projeket file : Code Warrior的工程项目管 理文 件,扩展名是mcp。这种文件是程序员在建立工程项 目时生成的文件,包含工程项目内的所有源文件,也包含 这些源文件的调试信息。
Linux课件 8-2 ADS集成开发环境的使用

6.3.1 Code Warrior
•
•
•
CodeWarrior集成开发环境(IDE)为管理和 开发项目提供了简单多样化的图形用户界 面 用户可以使用ADS的CodeWarrior IDE为 ARM和Thumb处理器开发用C,C++,或 ARM汇编语言的程序代码 全面的项目管理功能
• CodeWarrior for ARM是一套完整的集成开 发工具,充分发挥了ARM RISC 的优势 • 在整个开发周期中,开发人员无需离开 CodeWarrior开发环境,提高了效率
cpplib
• 这个子目录包含了Rogue Wave C++库和 C++支持函数库 • Rogue Wave C++库和C++支持函数库合在 一起被称为ARM C++库 • 与这些库相应的头文件安装在 e:\arm\adsv1_2\include目录下
6.3 GUI开发环境 (Code Warrior和AXD)
• armar
– ARM库函数生成器将一系列ELF格式的目标文件以库 函数的形式集合在一起,用户可以把一个库传递给一 个链接器以代替几个ELF文件。
• 与调试相关工具链在该集成环境中没有实 现 • 但与ARM调试器(AXD)能进行无缝地连接调 用
基本概念-target
• 在CodeWarrior IDE中所涉及到的target有 两种不同的语义
开发环境的作用
C/C++ C/C++ 汇编语言 编译器 编译器 汇编器
目标文件
目标文件
目标文件
连接器
可嵌入式系统开发模式
• 模拟方式 • 仿真方式 • 调试方式
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2019/3/17
西安邮电学院 计算机学院
page
14
8.2.4 系统软件开发步骤
2019/3/17
西安邮电学院 计算机学院
page
15
8.3 程序的编辑
8.3.1建立工程 8.3.2建立文件 8.3.3添加文件到工程 8.3.4文件管理 8.3.5 编辑画面的设置 8.3.6 ADS 编辑功能介绍 8.3.7屏幕分割设置
2019/3/17
西安邮电学院 计算机学院
page
13
(2)通过编译器和连接器生成的文件 filename.h : 头文件。 filename.o : 编译器输出的ELF格式的目标文件。 filename.lst : 编译器输出的包含错误信息的列表 文件。 filename.axf : 连接器生成的可执行的映象文件。 symdefs : 格式文件,时连接器生成的全局符号 表文件。
西安邮电学院 计算机学院
page
8
2019/3/17
西安邮电学院 计算机学院
page
9
嵌入式软件开发流程图
8.2 ADS 1.2 集成开发环境介绍
8.2.1 8.2.2 8.2.3 8.2.4
Code Warrior IDE 简介 AXD调试器简介 ADS开发系统的系统资源 系统软件开发步骤
2019/3/17
西安邮电学院 计算机学院
page
16
8.3.1建立工程
2019/3/17
西安邮电学院 计算机学院
page
17
7种可选择的工程类型。 ARM Executabl Image :由ARM指令的代码生成ELF格式 的可执行映像文件; ARM Object Library :由ARM指令的代码生成一个armar格 式的目标文件库; Empty Project :创建一个不包含任何库或源文件的工程; Makefile Importer Wizard :将Visual C的nmake或GNU make文件转入到CodeWarrior IDE 工程文件; Thumb ARM Executable Image:由ARM指令和Thumb指 令的混和代码生成一个可执行的ELF格式的映像文件; Thumb Executable image :由Thumb指令创建的ELF格式 的映像文件; Thumb Object Library :由Thumb指令的代码生成armar格 式的目标文件库。
2019/3/17
西安邮电学院 计算机学院
page
21
8.4.2图形界面的ARM汇编工具
2019/3/17
西安邮电学院 计算机学院
page
19
8.3.4文件管理
1.怎样打开一个文件 2.怎样打开一个工程项目 3.怎样保存文件和工程项目
2019/3/17
西安邮电学院 计算机学院
page
20
8.4程序的编译
8.4.1命令行开发工具 8.4.2图形界面的ARM汇编工具 8.4.3 ARM C编译器 8.4.4图形界面编译器的应用 8.4.5编译连接工程
2019/3/17
西安邮电学院 计算机学院
page
3
教学内容
8.1 8.2 8.3 8.4 8.5 8.6
嵌入式系统开发基础 ADS 1.2 集成开发环境介绍 程序的编辑 程序的编译 程序的连接 程序的调试
2019/3/17
西安邮电学院 计算机学院
page
4
8.1 嵌入式系统开发基础
2019/3/17
西安邮电学院 计算机学院
page
18
8.3.2 建立文件
DebugRel :使用该目标,在生成目标的时候, 会为每一个源文件生成调试信息; Debug:使用该目标为每一个源文件生成最完全 的调试信息; Release:使用该目标不会生成任何调试信息, 目标代码的优化等级最高。
2019/3/17
西安邮电学院 计算机学院
page
6
2019/3/17
西安邮电学院 计算机学院
page
7
8.1.2嵌入式软件开发
在特定的EDA工具环境下面进行开发,通过 后再进行移植到硬件平台的工作。这样既可 以保证程序逻辑设计的正确性,同时使得软 件开发可平行甚至超前于硬件开发进程。
2019/3/17
2019/3/17
西安邮电学院 计算机学院
page
11
8.2 ADS 1.2 集成开发环境介绍
2019/3/17
西安邮电学院 计算机学院
page
12
8.2.3 ADS开发系统的系统资源
(1)程序员通过编辑环境建立的文件 C source file : C语言源文件,扩展名是c。程序员输入的 C语言源文件。 C++ source file : C++语言源文件,扩展名cpp。程序员输 入的C++语言源文件。 Assemble source file : 汇编语言源文件,扩展名是s。这 种文件是程序员输入的ARM汇编语言源文件,包含ARM 指令和Thumb指令。 CodeWarrior projeket file : Code Warrior的工程项目管 理文 件,扩展名是mcp。这种文件是程序员在建立工程项 目时生成的文件,包含工程项目内的所有源文件,也包含 这些源文件的调试信息。
8.1.1 嵌入式系统开发流程 8.1.2 嵌入式软件开发 8.1.3 ARM Developer Suite(ADS)的安装
2019/3/17
西安邮电学院 计算机学院
page
5
8.1.1嵌入式系统开发流程
1.系统定义与需求分析 2.系统设计方案的初步确立 3.初步设计方案性价比评估与方案评审论证 4.完善初步方案、初步方案实施 5.软硬件集成测试 6.系统功能性能测试及可靠性测试 重要方法:软硬件协同设计
微机原理与嵌入式系统基础
西安邮电学院----计算机系 QQ: 646938309 Email:
2019/3/17 西安邮电学院 计算机学院
page
1
第 8章 ADS集成开发环境
2019/3/17
西安邮电学院 计算机学院
page
2
教学目的
掌握ADS集成开发环境的使用 : 嵌入式系统开发流程 Code Warrior IDE的使用 AXD调试器的使用