嵌入式系统开发方法剖析.ppt

  1. 1、本文档共28页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Spring Semester 2006 嵌入式系统及应用 嵌入式系统及应用 开发流程 嵌入式系统开发流程 硬件开发流程 嵌入式Linux开发流程 传统的程序开发 #includestdio.h void main(void) { printf(“hello,world!\n”); } Host与Target 嵌入式Linux开发模式 嵌入式Linux开发模式(2) 嵌入式系统的软件开发 嵌入式操作系统 操作系统与应用软件的集成 软件的结构 嵌入式系统的软件设计需要考虑硬件的支持、操作系统的支持、程序的初始化和引导 嵌入式系统软件的组成 初始化引导代码 BSP(Board Support Package) 嵌入式操作系统 设备驱动程序 文件系统 网络协议栈 GUI 应用软件 交叉开发环境 开放源码 GNU工具链 商业 ARM Software Development Toolkit RealView Developer Suite IAR 嵌入式系统软件开发过程 无操作系统的嵌入式系统设计 1)前后台系统 前后台系统程序框架 main() { /* 硬件初始化 */ while(1) { action_1(); action_2(); … action_n(); } 2)事件驱动系统 软件系统由中断服务程序实现 主程序:主要完成系统的初始化,如硬件的初始化,初始化完成后,执行低功耗指令进入省电模式。 中断服务程序:执行相关的处理,处理完成后,系统进入省电模式。 事件驱动系统程序框架 main() { /* 系统初始化 */ while(1) enter_low_power(); } Isr_1() /*其中一个中断服务子程序 { /* 处理中断事件 */ } 3)轮询服务系统 轮询服务系统程序框架 main() { /* 系统初始化 */ while(1) { action_1(); /* 轮询事件1并处理事件 */ action_2(); /* 轮询事件2并处理事件 */ … action_n(); /* 轮询事件n并处理事件 */ } } 轮询服务系统的缺点 处理器开销大 功耗高 实时性弱 4)基于定时器的轮询服务系统 定时轮询服务系统程序框架 main() { /* 系统初始化 */ /* 设置定时器 */ while(1) { enter_low_power(); } } Isr_timer() /* 定时器的中断服务程序 */ { action_1(); /* 执行事件1的处理 */ action_2(); /* 执行事件2的处理 */ … action_n(); /* 执行事件n的处理 */ } 有操作系统的嵌入式系统设计 1)分时系统 分时系统由操作系统、多个任务组成的应用软件构成。 使用定时器来调度任务的运行。 基于分时操作系统的嵌入式软件结构 实时系统 实时系统把系统处理的事件根据轻重缓急进行分类,并赋予不同的优先级。 典型的实时操作系统 Tornado/VxWorks WindowsCE(软实时) QNX μc/OS Montavista Linux 基于实时系统的嵌入式系统软件结构 思考题 什么是host和target 假设目标平台是ARM,那么在ARM平台上运行的程序一定是在ARM上编译的,这种说法对吗? 简述嵌入式linux开发的ramdisk模式 说出5种实时操作系统 * * (5) Embedded System Application 嵌入式系统开发方法 选择硬件平台 选择软件平台 开发嵌入式应用 系统测试 测试通过 开发结束 Y N 电路设计 (第1版) BootLoader 内核移植 编译器移植 电路设计 (第2版) 电路设计 (第3版) 设备驱动程序开发 应用程序开发 编写 编译 运行 调试 再运行 Linux服务器(Host) 客户机1 客户机2 客户机3 客户机4 交 换 机 开发板 (Target) 串口 是一个基于x86架构的计算机(Pentium4处理器、Athlon处理器等),即i386平台。 Target是目标平台,比如ARM、MIPS、SuperH、PowerPC等。 Linux JTAG CPU CORE BootLoader 内核 Flash Target Host 串口 网口 NFS模式 Root fs Linux JTAG CPU CORE BootLoader 内核 RAMDISK Flash Target Host 串口 网口 Ramdisk模式 SDRAM 解开的RAMDISK 代码编程 交叉编译 交叉链接 调试

文档评论(0)

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

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

1亿VIP精品文档

相关文档