嵌入式系统及应用精选PPT.ppt
《嵌入式系统及应用精选PPT.ppt》由会员分享,可在线阅读,更多相关《嵌入式系统及应用精选PPT.ppt(105页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、嵌入式系统及应用嵌入式系统及应用第1页,此课件共105页哦核心内容核心内容n交叉开发技术 n仿真开发技术n开发环境提供的主要工具nGNU的嵌入式开发环境nWindriver的集成开发环境n仿真开发工具ARMulator第2页,此课件共105页哦9.1 概述概述 需要协调管理特殊的硬件资源 软件具有可配置裁剪特性 需要交叉编译环境 需要交叉调试环境 需要交叉测试环境 需要软件固化工具嵌入式软件开发的特点:第3页,此课件共105页哦9.2 交叉开发技术交叉开发技术宿主机:开发系统目标机:运行平台第4页,此课件共105页哦宿主机与目标机的差别宿主机与目标机的差别n硬件的差别:处理器不同n软件环境的差
2、异:宿主机上有通用操作系统等系统软件提供软件开发支持,而目标机上除了调试代理没有其他用于嵌入式软件开发的软件资源第5页,此课件共105页哦一、常用的交叉开一、常用的交叉开发方法发方法 1.Crash and Burn方式在宿主机上编写代码;在宿主机编译应用程序,生成可执行程序;固化到目标机的非易失存储器中;启动运行,若正常则转到;不正确则根据目标板上的信号显示估计错误位置,改写代码,纠正错误;返回重复操作;固化完成。第6页,此课件共105页哦2.ROM Monitor方式 第7页,此课件共105页哦优点优点:n n实时控制目标机的内存单元、寄存器、设置断点等n调试采用目标机本身的串口、网口、U
3、SB口进行第8页,此课件共105页哦ROM Monitor的缺点的缺点:目标机内存使用与运行时不一致 目标机CPU运行与正常运行时不一致 无法调试通讯占用端口的相关代码 若目标机CPU不支持硬件断点,则无法调试设置数据断点 无法调试系统启动初始化过程第9页,此课件共105页哦3.ROM Emulator方式 ROM Emulator是一种用于替代目标机上ROM芯片的设备,插接到目标机的ROM插座上,取代ROM内存。第10页,此课件共105页哦4.ICE方式 ICE是一种用于替代目标机上CPU的设备,可执行目标机CPU的指令,能将内部的信号输出到被控制的目标机,ICE上的内存也可以被映射到用户的
4、程序空间。第11页,此课件共105页哦ICE方式 第12页,此课件共105页哦ICE方式的特殊调方式的特殊调试功能试功能 支持软件断点和硬件断点的设置设置复杂的断点和触发器实时跟踪目标程序的运行,并可实现选择性的跟踪支持“Time Stamp”允许用户设置“Timer”提供“Shadow RAM”,支持非干扰调试查询。第13页,此课件共105页哦5.OCD方式 采用两级CPU模式:正常运行模式 调试模式第14页,此课件共105页哦OCD方式的优点 性价比高 不占用目标机硬件资源 调试环境和运行环境一致 能调试底层系统软件第15页,此课件共105页哦OCD方式的缺点方式的缺点 调试的实时性不如I
5、CE强 不支持非干扰调试查询 CPU必须有OCD功能 OCD标准不统一 第16页,此课件共105页哦BDM方方式式 第17页,此课件共105页哦二、交叉开发过程二、交叉开发过程 三个阶段:应用软件生成阶段 应用软件调试阶段 应用软件固化运行阶段第18页,此课件共105页哦交叉开发过程交叉开发过程 第19页,此课件共105页哦应用软件生成应用软件生成阶段阶段 第20页,此课件共105页哦应用软件调试应用软件调试阶段阶段 第21页,此课件共105页哦应用软件固化应用软件固化阶段阶段 第22页,此课件共105页哦三、交叉开发环境三、交叉开发环境 交叉编译环境 交叉调试环境 嵌入式开发支持环境 其他辅
6、助工具第23页,此课件共105页哦交叉开发环境交叉开发环境 第24页,此课件共105页哦9.3 仿真开发技术仿真开发技术 利用计算机仿真技术模拟嵌入式硬件系统的真实运行,使软件开发和系统集成在虚拟平台上进行。第25页,此课件共105页哦仿真开发结构图仿真开发结构图 第26页,此课件共105页哦一、仿真开发分类一、仿真开发分类 纯软件仿真开发是利用宿主机上的资源模拟目标机实际硬件电路的运行,构建应用软件运行所需的虚拟硬件环境,提供嵌入式软件开发和调试的真正“软”平台。第27页,此课件共105页哦纯软件仿真开发分纯软件仿真开发分类类 应用级仿真 编程接口级仿真 硬件级仿真第28页,此课件共105页
7、哦编程接口级仿真编程接口级仿真 第29页,此课件共105页哦硬件级仿真开发硬件级仿真开发 第30页,此课件共105页哦二、仿真开发过程二、仿真开发过程 第31页,此课件共105页哦三、仿真开发环境三、仿真开发环境 第32页,此课件共105页哦四、仿真开发环境四、仿真开发环境的特点的特点 不需要提供实际的目标硬件环境;编译调试都在宿主机上进行;可以最大限度地保证软硬件同时开发。第33页,此课件共105页哦9.4 开发环境提供的主要开发环境提供的主要工具工具 项目管理器 项目配置工具 源码编辑工具 C RTL(C Run-Time Library)RTOS开发支持包 交叉编译工具 交叉调试工具 交
8、叉测试 性能分析工具等第34页,此课件共105页哦一、项目管理一、项目管理 项目管理器一般采用通用的工作区、项目管理方式,这能较好的支持在不同硬件平台上的软件移植。第35页,此课件共105页哦二、配置剪二、配置剪裁裁 编译参数配置工具 实时操作系统裁剪工具 内存配置工具第36页,此课件共105页哦三、源码编辑三、源码编辑 标准的文本编辑功能 支持语法色彩 简单的语法检查功能 源程序函数索引、定位功能显示调试信息文本保存的多中备份机制第37页,此课件共105页哦四、目标代码编译四、目标代码编译生成生成 嵌入式开发环境一般提供工具make,它利用编译器、汇编器、链接器和库管理器等工具,根据Make
9、file文件,将源代码转换成目标代码。第38页,此课件共105页哦1.目标代码生成目标代码生成 设置目标代码生成选项;C源码预处理;C源码编译成汇编代码;汇编语言程序转换为可重定位目标代码;可重定位的目标模块链接成目标程序;文件格式转换。第39页,此课件共105页哦2.目标代码优化目标代码优化 合并已有常量;公共子表达式删除;控制流优化;寄存器变量使用优化;循环优化;冗余指令删除;窥孔优化。第40页,此课件共105页哦3.编译提示信息编译提示信息 错误信息:致命错误、一般错误和警告。过程信息 状态信息第41页,此课件共105页哦4.库的使用库的使用 在开发大中型软件时,常把一些编译好的模块统一
10、放到一个库中。第42页,此课件共105页哦5.常用文件后缀常用文件后缀.c或.cc 或.cxx 或.cpp.h或.hpp.s或.asm.S.o或.obj.a或.lib.elf.omf.hex.eepk.cofl.s19或.s2或.s3m.lstn.map第43页,此课件共105页哦五、交叉调试五、交叉调试 硬件:连接线、仿真头、转换板等连接硬件。软件:宿主机端调试工具和目标机端ROM Monitor第44页,此课件共105页哦交叉调试定交叉调试定义义 调试器能够通过某种方式远程控制目标机上被调试程序的运行模式,并且具备查看和修改目标机上的内存、寄存器以及被调试程序中的变量等功能。第45页,此课
11、件共105页哦交叉调试与非交叉调交叉调试与非交叉调试比较试比较交叉交叉交叉交叉调试调试调试调试本地本地本地本地调试调试调试调试DebuggerDebugger和和DebuggeeDebuggee运行在运行在不同的不同的计计算机算机DebuggerDebugger和和DebuggeeDebuggee运行在运行在同一台同一台计计算机算机运行运行时时不一定需要操作系不一定需要操作系统统的的调试调试支持支持运行运行时时需要操作系需要操作系统统的的调试调试支支持持DebuggeeDebuggee装装载载由由DebuggerDebugger或或LoaderLoader完成完成DebuggeeDebugge
12、e的装的装载载是由是由专门专门的的LoaderLoader程序完成程序完成需要通需要通过过外部通信的方式来控外部通信的方式来控制制DebuggeeDebuggee不需要外部的通信方式来控制不需要外部的通信方式来控制DebuggeeDebuggee可以直接可以直接调试调试不同指令集的程不同指令集的程序序只能直接只能直接调试调试相同指令集的程相同指令集的程序序第46页,此课件共105页哦1.交叉调试支持的交叉调试支持的功能功能 内存 寄存器 断点 程序执行 变量 显示模式 OS-aware第47页,此课件共105页哦交交叉叉调调试试的的过过程程框框架架第48页,此课件共105页哦2.任务级调试任务
13、级调试 调试对象是一个用户任务(集),用户可以自定义调试范围。第49页,此课件共105页哦任务级调试任务级调试第50页,此课件共105页哦3.系统级调试系统级调试 即内核级调试,调试对象是目标机上除调试代理外的所有程序,包括RTOS本身。第51页,此课件共105页哦系统级调试系统级调试第52页,此课件共105页哦六、测试工具六、测试工具 嵌入式系统采用交叉测试,即嵌入式软件测试必须由宿主机和目标机协作完成。第53页,此课件共105页哦1.仿真测试仿真测试 仿真测试环境可分为两类:一类要求用户改写I/O部分代码。无须改动其源程序。第54页,此课件共105页哦纯软件仿真测试结纯软件仿真测试结构框架
14、构框架 第55页,此课件共105页哦2.交叉测试交叉测试 目标机的测试分为两类:仿真信号测试 实物测试第56页,此课件共105页哦仿真信号测试的结仿真信号测试的结构构 第57页,此课件共105页哦3.实时性测试实时性测试 静态时间分析。不执行被测程序,通过分析估计执行时间。动态实时检测。实际执行程序测试程序的时间特性。包括:在线仿真器、模拟器、插桩技术。第58页,此课件共105页哦七、版本管理工具七、版本管理工具 版本管理是用户对项目文件版本进行控制的工具软件。包括:版本库和临时工作区。第59页,此课件共105页哦嵌入式软件版本管理工具的嵌入式软件版本管理工具的功能结构功能结构 第60页,此课
15、件共105页哦9.5 GNU的嵌入式开的嵌入式开发环境发环境 C编译器gcc make工具GNU make 开发调试工具gdb第61页,此课件共105页哦一、一、gcc编译器编译器 gcc前端支持多种高级语言,后端支持多种平台,它是一个交叉编译器,可以把源代码编译成在其他硬件平台上运行的可执行代码。第62页,此课件共105页哦1.编译过程编译过程 预处理 编译 汇编 链接第63页,此课件共105页哦预处理预处理 执行源代码的预处理,处理完后生成一个以“.i”为后缀名的临时文件。第64页,此课件共105页哦编译编译 将预处理后生成的源代码编译为后缀名为“.s”的汇编文件。第65页,此课件共105
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 嵌入式 系统 应用 精选 PPT
限制150内