嵌入式系统软件的开发精华版.ppt
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
❖ 从以上嵌入式软件开发分类来看,嵌入 式软件开发工具可以分为 :
与嵌入式OS相关的开发工具,用于开发基 于嵌入式OS的应用和部分的驱动程序等。
与嵌入式OS无关的开发工具,用于开发基 本的驱动程序、辅助硬件调试,系统软件 的开发等。
9
9.1.2 嵌入式软件的交叉开发环境
❖ 交叉开发环境是指用于嵌入式软件开 发的所有工具软件的集合,一般包括 文本编辑器、交叉编译器、交叉调试 器、仿真器、下器等工具。
6
嵌入式软件开发工具的分类
主要嵌入式软件开发工具产品
7
嵌入式软件开发工具的分类
❖ 嵌入式软件的开发可以分为以下几种 :
编写简单的板级测试软件,主要是辅助硬 件的调试
开发基本的驱动程序
开发特定嵌入式操作系统的驱动程序(板 级支持包BSP)
Leabharlann Baidu
开发嵌入式系统软件,如:嵌入式操作系 统等
开发应用软件
8
嵌入式软件开发工具的分类
部的中断,因此不便调试有时间特性的程序。 3) 某些调试功能依赖于CPU硬件的支持(如硬件断点
功能) 4) ROM Monitor要占用目标机一定数量的资源,如
CPU、RAM、ROM和通信设备等资源。 5) 调试环境不同于实际目标环境。
15
仿真开发方式
❖ 嵌入式应用的开发经常会遭遇缺少目标机环 境、缺乏目标机芯片等资源的问题,而开发 过程又不可能停止,因此自然就提出了根据 不同的应用需要,利用仿真器件、仿真环境 进行开发的方法。
嵌入式硬件
交叉开发环境
11
嵌入式软件的交叉开发环境
❖ 宿主机(Host) :是用于开发嵌入式系统的计算 机。一般为PC机(或者工作站),具备丰富的软 硬件资源,为嵌入式软件的开发提供全过程支持。
❖ 目标机(Target):即所开发的嵌入式系统,是嵌 入式软件的运行环境,其硬件软件是为特定应用定 制的。
18
ROM Emulator
❖ 优点 目标机可以没有ROM芯片、可以使用ROM Emulator提供的ROM空间且不需要用别的 工具来写ROM。
❖ 缺点 目标机必须能支持外部ROM存储空间,而 且由于其通常要和ROM Monitor配合使用, 因此它拥有ROM Monitor的所有缺点。
19
ICE
❖ 交叉开发环境由宿主机和目标机组成, 宿主机与目标机之间在物理连接的基 础上建立起逻辑连接。
10
嵌入式软件的交叉开发环境
宿主机Host
开发平台
开发环境 ·设计 ·编辑、编译、连接 ·调试、测试
宿主机OS:Windows等
PC机、工作站等
目标机Target
运行平台 调 嵌入式软件 试 ·应用软件 代 ·嵌入式OS 理 ·初始化、驱动
(4)使用调试器进行调试,发出各种调试命令,监控 器解释并执行这些命令,通过目标机上的各种异常来 获取对目标机的控制,将命令执行结果回传给调试器;
(5)如果程序有问题,在调试器的帮助下定位错误; 修改之后再重新编译链接并下载程序,开始新的调试, 如此反复直至程序正确运行为止。
13
ROM Monitor
硬件仿真开发
ROM Emulator
ICE
OCD
❖ 软件仿真开发
16
ROM Emulator
❖ ROM Emulator是一种用于替代目标 机上的ROM芯片的设备,即ROM仿真 器。
❖ 利用这种设备,目标机可以没有ROM 芯片,但目标机的CPU可以读取ROM Emulator设备上ROM芯片的内容: ROM Emulator设备上的ROM芯片的 地址可以实时地映射到目标机的ROM 地址空间,从而仿真(Emulation) 目标机的ROM。
优点
1) 提高调试程序的效率 ,缩短开发周期,降 低成本
2) 简单、方便 3) 可扩展性强,可支持许多高级调试功能 4) 成本低廉,不需专门的调试硬件支持 5) 几乎所有的交叉调试器都支持这种方式
14
ROM Monitor
缺点
1) Debug Monitor需要用Crash and Burn方法开发。 2) 当ROM Monitor占用CPU时,应用程序不响应外
❖ ICE(In-Circuit Emulator)是一种用 于替代目标机上CPU的设备,即在线 仿真器。
❖ 它比一般的CPU有更多的引出线,能 够将内部的信号输出到被控制的目标 机。ICE上的Memory也可以被映射到 用户的程序空间,这样即使目标机不 存在的情形下也可以进行代码的调试。
20
❖ 连接ICE和目标机时,一般是将目标机的CPU取下,而 将ICE的CPU引出线接到目标机的CPU插槽。
第九章 嵌入式系统软件的开发
1
主要内容
❖ 嵌入式软件开发工具 ❖ 嵌入式系统开发模式 ❖ 实时软件分析设计方法
2
9.1 嵌入式软件开发工具
❖ 嵌入式软件开发工具的分类 ❖ 嵌入式软件的交叉开发环境 ❖ 嵌入式软件实现阶段的开发过程 ❖ 嵌入式软件开发工具的发展趋势
3
嵌入式软件开发工具
❖ 嵌入式软件开发工具的集成度和可用 性将直接关系到嵌入式系统的开发效 率。
4
9.1.1 嵌入式软件开发工具的分类
嵌入式软件开发阶段
5
嵌入式软件开发工具的分类
❖ 根据不同的阶段,嵌入式软件开发工 具可以分为:
需求分析工具(Requirement Analysis Tools)
软件设计工具(Software Design Tools) 编码、调试工具(Coding Tools) 测试工具(Testing Tools) 配置管理工具、维护工具等
❖ 在开发过程中,目标机端需接收和执行宿主机发出 的各种命令如设置断点、读内存、写内存等,将结 果返回给宿主机,配合宿主机各方面的工作。
12
ROM Monitor
❖ 调试过程
(1)启动目标机,监控器掌握对目标机的控制,等待和 调试器建立连接;
(2)启动调试器,并和监控器建立起通信连接;
(3)使用调试器将应用程序下载到目标机上的RAM空 间中;
17
ROM Emulator
❖ ROM Emulator的调试方式是一种不 完全的调试方式:ROM Emulator设 备只是为目标机提供ROM芯片和在 Target和Host间建立一条高速的通信 通道,因此它经常和前面两种调试方 式结合起来形成一种完备的调试方式。 ROM Emulator的典型应用就是和 ROM Monitor的调试方式相结合。
与嵌入式OS相关的开发工具,用于开发基 于嵌入式OS的应用和部分的驱动程序等。
与嵌入式OS无关的开发工具,用于开发基 本的驱动程序、辅助硬件调试,系统软件 的开发等。
9
9.1.2 嵌入式软件的交叉开发环境
❖ 交叉开发环境是指用于嵌入式软件开 发的所有工具软件的集合,一般包括 文本编辑器、交叉编译器、交叉调试 器、仿真器、下器等工具。
6
嵌入式软件开发工具的分类
主要嵌入式软件开发工具产品
7
嵌入式软件开发工具的分类
❖ 嵌入式软件的开发可以分为以下几种 :
编写简单的板级测试软件,主要是辅助硬 件的调试
开发基本的驱动程序
开发特定嵌入式操作系统的驱动程序(板 级支持包BSP)
Leabharlann Baidu
开发嵌入式系统软件,如:嵌入式操作系 统等
开发应用软件
8
嵌入式软件开发工具的分类
部的中断,因此不便调试有时间特性的程序。 3) 某些调试功能依赖于CPU硬件的支持(如硬件断点
功能) 4) ROM Monitor要占用目标机一定数量的资源,如
CPU、RAM、ROM和通信设备等资源。 5) 调试环境不同于实际目标环境。
15
仿真开发方式
❖ 嵌入式应用的开发经常会遭遇缺少目标机环 境、缺乏目标机芯片等资源的问题,而开发 过程又不可能停止,因此自然就提出了根据 不同的应用需要,利用仿真器件、仿真环境 进行开发的方法。
嵌入式硬件
交叉开发环境
11
嵌入式软件的交叉开发环境
❖ 宿主机(Host) :是用于开发嵌入式系统的计算 机。一般为PC机(或者工作站),具备丰富的软 硬件资源,为嵌入式软件的开发提供全过程支持。
❖ 目标机(Target):即所开发的嵌入式系统,是嵌 入式软件的运行环境,其硬件软件是为特定应用定 制的。
18
ROM Emulator
❖ 优点 目标机可以没有ROM芯片、可以使用ROM Emulator提供的ROM空间且不需要用别的 工具来写ROM。
❖ 缺点 目标机必须能支持外部ROM存储空间,而 且由于其通常要和ROM Monitor配合使用, 因此它拥有ROM Monitor的所有缺点。
19
ICE
❖ 交叉开发环境由宿主机和目标机组成, 宿主机与目标机之间在物理连接的基 础上建立起逻辑连接。
10
嵌入式软件的交叉开发环境
宿主机Host
开发平台
开发环境 ·设计 ·编辑、编译、连接 ·调试、测试
宿主机OS:Windows等
PC机、工作站等
目标机Target
运行平台 调 嵌入式软件 试 ·应用软件 代 ·嵌入式OS 理 ·初始化、驱动
(4)使用调试器进行调试,发出各种调试命令,监控 器解释并执行这些命令,通过目标机上的各种异常来 获取对目标机的控制,将命令执行结果回传给调试器;
(5)如果程序有问题,在调试器的帮助下定位错误; 修改之后再重新编译链接并下载程序,开始新的调试, 如此反复直至程序正确运行为止。
13
ROM Monitor
硬件仿真开发
ROM Emulator
ICE
OCD
❖ 软件仿真开发
16
ROM Emulator
❖ ROM Emulator是一种用于替代目标 机上的ROM芯片的设备,即ROM仿真 器。
❖ 利用这种设备,目标机可以没有ROM 芯片,但目标机的CPU可以读取ROM Emulator设备上ROM芯片的内容: ROM Emulator设备上的ROM芯片的 地址可以实时地映射到目标机的ROM 地址空间,从而仿真(Emulation) 目标机的ROM。
优点
1) 提高调试程序的效率 ,缩短开发周期,降 低成本
2) 简单、方便 3) 可扩展性强,可支持许多高级调试功能 4) 成本低廉,不需专门的调试硬件支持 5) 几乎所有的交叉调试器都支持这种方式
14
ROM Monitor
缺点
1) Debug Monitor需要用Crash and Burn方法开发。 2) 当ROM Monitor占用CPU时,应用程序不响应外
❖ ICE(In-Circuit Emulator)是一种用 于替代目标机上CPU的设备,即在线 仿真器。
❖ 它比一般的CPU有更多的引出线,能 够将内部的信号输出到被控制的目标 机。ICE上的Memory也可以被映射到 用户的程序空间,这样即使目标机不 存在的情形下也可以进行代码的调试。
20
❖ 连接ICE和目标机时,一般是将目标机的CPU取下,而 将ICE的CPU引出线接到目标机的CPU插槽。
第九章 嵌入式系统软件的开发
1
主要内容
❖ 嵌入式软件开发工具 ❖ 嵌入式系统开发模式 ❖ 实时软件分析设计方法
2
9.1 嵌入式软件开发工具
❖ 嵌入式软件开发工具的分类 ❖ 嵌入式软件的交叉开发环境 ❖ 嵌入式软件实现阶段的开发过程 ❖ 嵌入式软件开发工具的发展趋势
3
嵌入式软件开发工具
❖ 嵌入式软件开发工具的集成度和可用 性将直接关系到嵌入式系统的开发效 率。
4
9.1.1 嵌入式软件开发工具的分类
嵌入式软件开发阶段
5
嵌入式软件开发工具的分类
❖ 根据不同的阶段,嵌入式软件开发工 具可以分为:
需求分析工具(Requirement Analysis Tools)
软件设计工具(Software Design Tools) 编码、调试工具(Coding Tools) 测试工具(Testing Tools) 配置管理工具、维护工具等
❖ 在开发过程中,目标机端需接收和执行宿主机发出 的各种命令如设置断点、读内存、写内存等,将结 果返回给宿主机,配合宿主机各方面的工作。
12
ROM Monitor
❖ 调试过程
(1)启动目标机,监控器掌握对目标机的控制,等待和 调试器建立连接;
(2)启动调试器,并和监控器建立起通信连接;
(3)使用调试器将应用程序下载到目标机上的RAM空 间中;
17
ROM Emulator
❖ ROM Emulator的调试方式是一种不 完全的调试方式:ROM Emulator设 备只是为目标机提供ROM芯片和在 Target和Host间建立一条高速的通信 通道,因此它经常和前面两种调试方 式结合起来形成一种完备的调试方式。 ROM Emulator的典型应用就是和 ROM Monitor的调试方式相结合。