第七章节 嵌入式应用程序开发.ppt

  1. 1、本文档共27页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第七章节 嵌入式应用程序开发

* 第七章 嵌入式应用程序开发 学习目标: 1、了解嵌入式应用程序的基本架构 2、熟悉嵌入式应用程序的开发流程 3、掌握Linux环境下嵌入式应用程序的开发方法 7.1嵌入式应用程序的体系架构 嵌入式系统由嵌入式硬件和嵌入式软件组成。嵌入式软件呈现明显的层次化倾向,从与硬件相关的设备驱动、BSP(板级支持包)到操作系统内核、FS文件系统、GUI图形界面、数据库,以及用户层的应用软件等,各部分可以清晰地划分出来,如图所示: 7.2嵌入式应用程序的开发流程 嵌入式应用程序的开发与硬件的关系密不可分,从软硬件系统到平台选择、设计、开发、测试、集成,整个过程都需要软硬件并行交互进行。这样,嵌入式应用程序的开发已成为一项复杂的系统工程,其开发必须遵循系统工程与软件工程的要求。 7.2嵌入式应用程序的开发流程 1.系统需求分析 系统需求一般分为功能性需求和非功能性需求两个方面。功能性需求是系统的基本功能,如输入输出信号、操作方式等;非功能需求包括系统性能、成本、功耗、体积、重量等因素。在这一阶段要对拟开发的项目进行可行性分析,可从两个方面入手:一是分析技术的可行性,对现有软件和成熟的技术进行研究,看能否实现项目要求;二是分析经费的可行性,看目前的经济条件能否适应项目要求,最后写出一份系统需求分析报告。 7.2嵌入式应用程序的开发流程 2.体系结构设计 体系结构设计,描述系统如何实现系统功能和非功能需求,包括对硬件、软件和执行机构的功能划分,以及系统的软件和硬件的选型等。一个好的体系结构是设计成功与否的关键。 在这一阶段要解决怎么做的问题,可分为系统框架设计和详细设计两个阶段。框架设计根据需求分析的结果和系统设计目标,将系统分解为若干个子系统,确定每个子系统的功能、各子系统之间的关联。详细设计确定各个子系统的名称、功能描述、算法方案、输入输出接口与信息等等。 7.2嵌入式应用程序的开发流程 3.硬件、软件协同设计 根据上一阶段的设计方案,基于体系结构,对系统的硬件和软件进行详细设计。为了缩短系统开发周期,设计往往是并行的。嵌入式系统设计的工作大部分集中在软件设计上,采用面向对象、组件技术、模块化设计是现代软件工程常用的方法。 7.2嵌入式应用程序的开发流程 4.系统集成 系统集成是把系统的软件、硬件和执行装置集成在一起,进行调试,发现并改进模块设计过程中的错误。 7.2嵌入式应用程序的开发流程 5.总体测试 一般在需求阶段就开始写测试计划,包括测试用例、测试标准和测试方法。测试可分为模块测试、集成测试、系统测试和验收测试等。模块测试一般由程序编写者进行,按模块或类进行测试。集成测试是将几个或所有模块集成后进行的测试,测试模块的接口、关联,共同工作所完成的功能和达到的性能。系统测试则是从用户的角度出发进行的测试,包括对最终运行环境的测试。接收测试是根据项目需求的描述,测试系统是否达到接收标准。每项测试都要求有完整的测试记录,开发者要根据测试结果修改程序。程序修改完以后,再进行回归测试。前一阶段的测试若没有发现问题,则进入下一阶段的测试。 7.2嵌入式应用程序的开发流程 6.运行维护 运行程序是软件设计的最终目标,到此设计过程已基本完成。但是由于前面几个环节中可能因为考虑不周而导致在运行过程中出现各种可能的问题,这时开发者有责任进行维护,返回到问题环节进行处理,如此反复可使得最终程序能较好地满足用户需求。 7.3 Linux环境下Hello World应用程序的实现 1.熟悉目标机硬件资源 开发嵌入式应用程序的第一步是熟悉目标机硬件资源,了解处理器的型号与特点,熟悉存储器及I/O端口的地址分配。最为理想的状况是根据应用需要自己设计目标机。在缺乏数字电路、模拟电路、电路板设计知识和技能的情况下,可通过购买开发板作为开发阶段的目标机,待软件开发完成后,如果需要批量生成所开发的产品,则再重新设计与生产目标机。 7.3 Linux环境下Hello World应用程序的实现 2.配置开发环境 开发应用程序需要开发环境,包括安装Linux虚拟机、交叉编译器、DNW或超级终端、Xmanager系统,配置串口、并口参数,关闭防火墙,架设SMB和NFS服务器,建立面向目标机和Linux虚拟机连接等。 7.3 Linux环境下Hello World应用程序的实现 3.建立引导程序 购买的目标机一般都带有已经编译好的BootLoader,可能是vivi,也可能是uboot等。如果目标机中已经建立BootLoader,则可以直接使用。如果没有,或开发者对目标机自带的BootLoader不够满意,则可以重新烧写。

文档评论(0)

ctuorn0371 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档