




已阅读5页,还剩21页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
嵌入式ARM系统原理与实例开发,北京大学出版社 出版 杨宗德 编著 2007年7月,1,2,嵌入式系统软硬件结构,嵌入式软件开发工具及开发模式,第5章 嵌入式系统结构及软件开发模式,2019/1/30,北京大学出版社出版 杨宗德编著,3,嵌入式硬件最小系统结构,2019/1/30,北京大学出版社出版 杨宗德编著,4,嵌入式软件系统基本模型,2019/1/30,北京大学出版社出版 杨宗德编著,5,通用计算机系统与嵌入式系统对比,1,2,嵌入式系统软硬件结构,嵌入式软件开发工具及开发模式,第5章 嵌入式系统结构及软件开发模式,2019/1/30,北京大学出版社出版 杨宗德编著,7,嵌入式软件开发的特点和技术挑战,嵌入式软件开发需要软硬件开发环境和工具 嵌入式软硬件必须协同设计 需要新的任务设计方法 开发过程完成后,系统应用程序代码需要固化到系统中并进行功能、性能和可靠性测试 技术挑战:软件的要求更高,开发工作量和难度更大,需要较大的知识集合,2019/1/30,北京大学出版社出版 杨宗德编著,8,嵌入式软件开发环境,1)交叉开发环境 交叉开发软件一般为一个整合编辑、编译、汇编、链接、调试、工程管理及函数库等功能模块的集成开发环境IDE(Intergrated Development Environment)。 所谓交叉是指在一种CPU及其环境上开发另一种CPU及其环境上运行的程序。,2019/1/30,北京大学出版社出版 杨宗德编著,9,嵌入式软件开发环境,2)软件模拟环境 软件模拟环境也称为指令集模拟器ISS(Instruction Set Simulator) 软件模拟不可能完全代替真正的硬件环境,这种模拟调试只能作为一种初步调试,主要是用作用户程序的模拟运行,用来检查语法、程序的结构等简单错误,用户最终还必须在真实的硬件环境中实际运行调试,完成整个应用的开发。,2019/1/30,北京大学出版社出版 杨宗德编著,10,嵌入式软件开发环境,3)评估电路板 一般用来作为开发者使用的开发平台、学习板、实验板,它们可以作为应用目标板出来之前的软件测试、硬件调试的电路板,2019/1/30,北京大学出版社出版 杨宗德编著,11,嵌入式应用软件开发的基本流程,基于交叉开发环境的嵌人式应用软件开发主要分如下几个步骤:开发环境的建立、源代码编辑阶段、交叉编译和链接、重定位和下载、联机调试几个基本阶段。 开发环境建立 源文件编辑阶段 编译 链接 下载 调试,2019/1/30,北京大学出版社出版 杨宗德编著,12,嵌入式应用软件开发的基本流程,链接器 命令文件,编译预处理,编译器,汇编器,Archive工具,链接器和定位器,头文件 (*.h,*.hpp),可重定位 目标文件,库文件 (*.a,*.lib),头文件 (*.h,*.hpp),C/C+源代码,汇编源代码,源文件列表,源文件列表,源代码编辑 阶段,源文件编译 阶段,链接 与重定位,调试与下载 阶段,重定位文件表 (*.o,*.a),共享目标文件 (*.o,*.a),可执行映象 (*.elf,*.coff),链接映射文件 (*.map),设备程序员,目标开发系统,2019/1/30,北京大学出版社出版 杨宗德编著,13,嵌入式软件开发的可移植性和可重用性,在确保软件的正确性、实时性的前提下,必须关注软件的可移植性和可重用性。 嵌入式软件与通用软件的不同在于嵌入式应用软件高度依赖于目标应用的软硬件环境,软件的部分任务功能函数由和处理器密切相关的汇编语言完成,可移植性差。 一个运行良好的嵌入式软件或其中的部分子程序可能在今后的开发中被应用于类似的应用领域。原有的代码已被反复应用和维护,具有更好的稳定性。在原有的代码上进行移植将会减少开发的周期、提高开发效率、节约开发成本,2019/1/30,北京大学出版社出版 杨宗德编著,14,嵌入式软件开发的可移植性和可重用性,采用下面的方法可以提高应用软件的可移植性和可重用性。 多用高级语言少用或者不用汇编语言 将不可移植部分局域化 提高代码的可重用性(标准化接口),2019/1/30,北京大学出版社出版 杨宗德编著,15,嵌入式开发的考虑要素,复杂计算与资源紧缺 用户界面的选择 实时性 多任务多速率 制造成本 功耗 成品的体积,2019/1/30,北京大学出版社出版 杨宗德编著,16,软硬件协同设计,嵌入式系统设计是使用一组物理硬件和软件来完成所需功能的过程。系统是指任何由硬件、软件或者两者的结合来构成的功能设备。 由于嵌入式系统是一个专用的系统,所以嵌入式产品的设计过程中,软件设计和硬件设计是紧密结合、相互协调的。这就产生了一种全新的发展中的设计理论软硬件协同设计 这种方法的特点是在设计时,从系统功能的实现考虑,把实现时的软硬件同时考虑进去,硬件设计包括芯片级“功能定制”设计。既可以最大限度的利用有效资源、缩短开发周期,又能取得更好的设计效果。,2019/1/30,北京大学出版社出版 杨宗德编著,17,软硬件协同设计,2019/1/30,北京大学出版社出版 杨宗德编著,18,嵌入式开发的基本流程,系统定义与需求分析 系统设计方案的初步确立 初步设计方案性价比评估与方案评审论证 完善初步方案、初步方案实施 软硬件集成测试 系统功能性能测试及可靠性测试,2019/1/30,北京大学出版社出版 杨宗德编著,19,2019/1/30,北京大学出版社出版 杨宗德编著,20,常用嵌入式系统软件开发工具,面向硬件的开发工具 如ADS 嵌入式操作系统开发 如GCC 面向特定操作系统的应用开发工具,2019/1/30,北京大学出版社出版 杨宗德编著,21,使用ADS开发程序流程及调试方式,2019/1/30,北京大学出版社出版 杨宗德编著,22,嵌入式操作系统开发,GCC系列工具 嵌入式操作系统多用C/C+开发,因此,要编译操作系统内容,一般都使用GCC系列工具。 GCC可以用来编译uClinux、Linux、 ECOS、uC/OS-II等操作系统。,2019/1/30,北京大学出版社出版 杨宗德编著,23,面向特定操作系统的应用工具,WinCE应用软件开发:如果选用的操作系统为WinCE,则应用软件需要选择WinCE的Embeded VC开发环境。 Symbian应用程序开发:如果开发Symbian手机应用程序,则Symbian应用程序开发选择的是Symbian的C/C+集成开发环境。 Linux应用程序开发:如果开发的是Linux应用程序,则选择的开发工具是Linux程序开发工具(GCC/G+/GDB/Makefile)。,2019/1/30,北京大学出版社出版 杨宗德编著,24,Linux交叉编译调试环境开发程序过程,2019/1/30,北京大学出版社出版 杨宗德编著,25,Linux交叉编译调试环境开发程序过程,(1)程序首先在宿主机(安装与应用目标板同样内核的Linux操作系统)编辑编译,生成可执行文件。 (2)通过网络共享方式将该程序共享给目标板,因为此处是开发Linux应用程序,目标板已经移植了Linux操作系统,因此,可以充分利用Linux操作系统强大的网络功能,通过共享的方式的原因一方面是减少下载程序的时间,另一方面也是因为目标板资源有很,尽可能少占用目标板资源的考虑。 (3)通过Linux操作系统远程登陆方式登陆到目标板Li
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 沙发电动机构装配流程
- 2025企业合同审查流程包含几步
- 2025冰箱保修的合同范本
- 2025年机关临时人员劳动合同样本
- 部编版三年级上册道德与法治暑期学习计划
- 高功率激光与智能优化算法的协同切割技术-洞察及研究
- 2025年高校产学研一体化模式下产学研合作项目风险管理与防范报告
- 工商股权转让协议书(集合15篇)
- 体育赛事解说创新创业项目商业计划书
- 中药果汁饮品创新创业项目商业计划书
- 旋挖钻孔灌注桩施工培训
- 自动化立体库培训
- 2025年中国彩色超声多普勒诊断系统市场调查研究报告
- 焦化厂安全管理制度
- 2025年全国统一高考英语试卷(全国一卷)含答案
- 2025年内蒙古高考物理试卷(含答案)
- 抗震支架试题及答案大全
- 零件清洁度的试题及答案
- 兆丰教育保过单招协议书
- 营养与食品卫生学:蛋白质概述
- 2024年四川省理塘县事业单位公开招聘辅警考试题带答案分析
评论
0/150
提交评论