- 4
- 0
- 约3.64千字
- 约 27页
- 2018-09-22 发布于江苏
- 举报
第七章 嵌入应用程序开发
* 第七章 嵌入式应用程序开发 学习目标: 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不够满意,则可以重新烧写。
您可能关注的文档
- 第6章 市场灵及矫正.ppt
- 第6章 异常理与多线程.ppt
- 第6章 文艺兴时期的教育.ppt
- 第6章 年轻牙牙髓病和根尖周病 120.ppt
- 第6章 查询理和优化.ppt
- 第6章 海洋的混响1.ppt
- 第6章 消费权益保护法 - 副本.ppt
- 第6章 现场线技术基础第7章 典型现场总线及其应用.ppt
- 第6章 窗体基本控件.ppt
- 第6章 用Fash制作动画.ppt
- 新启航英语二年级上册Unit5 Festival Period 2 课件.ppt
- 10.相亲相爱一家人 情境化教学课件-统编版2026道德与法治一年级下册.ppt
- 7星星点点 AI赋能课件 2026人美版美术一年级下册.ppt
- 3.2 世界的气候类型(教学课件) 2025中图版地理八年级上册.ppt
- 5.1 发达国家与发展中国家的差异(教学课件) 2025中图版地理八年级上册.ppt
- 13.快乐的儿童节 情境化教学课件-统编版2026道德与法治一年级下册.ppt
- 新启航英语二年级上册Unit5 Festival Period 1 课件.ppt
- 2025冀教版数学三年级上册全册教学课件.ppt
- 地理试卷云南名校联盟2026届高三上学期第三次联考(12.25-12.26).docx
- 2025~2026学年第一学期 高一年级英语试卷.docx
原创力文档

文档评论(0)