《嵌入式系统设计与开发ppt课件.ppt》由会员分享,可在线阅读,更多相关《嵌入式系统设计与开发ppt课件.ppt(54页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、嵌入式系统设计与开发 第1章 概述 第2章 ARM及其编程模型 第3章 ARM指令集 第4章 嵌入式程序设计 第5章 C/OS-实时操作系统 第6章 嵌入式最小系统设计 第7章 部件工作原理与开发实例 第8章 基于C/OS-的程序设计 第9章 ARM嵌入式开发工具 第10章 ARM9处理器嵌入式系统设计与开发嵌入式系统设计与开发第1章 概述本章提要 1.1 嵌入式系统 1.2 嵌入式系统的组成 1.3 嵌入式系统的主要应用领域 1.4 嵌入式处理器 1.5 嵌入式操作系统 1.6 嵌入式系统的开发1.1 嵌入式系统嵌入式系统的定义一般定义: 以应用为中心,计算机技术为基础,软硬件可剪,以适应应
2、用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。本质定义: 嵌入到对象体系中的专用计算机系统。嵌入式系统的发展历史 1976年,Intel 公司推出了MCS-48单片机,只有1KB ROM和64KB RAM。 1980年,Intel 公司对MCS-48单片机进行了全面完善,推出了8位MCS-51单片机。 1984年,Intel 公司又推出了16位8096系列并将其称之为嵌入式微控制器。 此外,为了高速、实时地处理数字信号,1982年诞生了首枚数字信号处理芯片DSP。 20世纪90年代后,伴随着网络时代的来临,网络、通信、多媒体技术得以发展,基于硬件底层的单线程程序的单片机已经
3、很难满足这些领域的要求。32位微处理器面向嵌入式系统的高端应用,由于速度快、资源丰富、本身的复杂性、可靠性等,得到了广泛的需求。嵌入式计算机系统与通用计算机系统l嵌入式系统通常是面向特定应用的,应用的多样性决定了硬件平台的多样性。l大多嵌入式系统都有实时性要求,在高端应用中,为满足应用需求、增强可靠性和便于开发,往往要有实时多任务操作系统的支持。l嵌入式系统是将先进的计算机技术、半导体技术和电子技术与各个行业的具体应用相结合后的产物。l功耗、成本和可靠性对嵌入式系统有特别重要的意义。嵌入式计算机系统与通用计算机系统l嵌入式系统和具体应用有机的结合在一起,它的升级换代也是和具体产品同步进行的,因
4、此嵌入式系统产品进入市场后具有较长的生命周期。l嵌入式系统本身不具备自主开发能力,即使设计完成以后,用户通常也不能对其中的程序功能进行修改,必须有一套交叉开发工具和环境才能进行开发。l嵌入式系统工业是不可垄断的高度分散的工业,充满了竞争、机遇与创新,是一个可以大有作为的行业。1.2 嵌入式系统的组成硬件 处理器/微处理器、存储器、 I/O接口及输入/输出设备软件 嵌入式操作系统、应用程序嵌入式系统的架构处理器处理器存储器存储器输入输入输出输出操作系统操作系统应用程序应用程序软件软件结构结构硬件硬件结构结构嵌入式系统的硬件组成电源模块电源模块时钟模块时钟模块复位复位外围电路外围电路微处理器微处理
5、器MPUFlashRAMROM 外设外设USBLCD键盘键盘其他其他嵌入式系统的软件组成 1.嵌入式操作系统 2.嵌入式应用软件 3.硬件抽象层HAL 4.板级支持包BSP 5.设备驱动程序 6.操作系统的应用程序接口函数API嵌入式软件的主要特点l软件要求固化存储。l软件代码要求高质量、高可靠性。l系统软件(OS)的高实时性是基本要求。l嵌入式系统软件需求实时多任务操作系统开发平台(RTOS)。l在嵌入式系统的软件开发过程中,采用C语言将是最佳的选择。1.3 嵌入式系统的主要应用领域嵌入式应用嵌入式应用信息家电信息家电智能玩具智能玩具军事电子军事电子通信设备通信设备移动存贮移动存贮工控设备工
6、控设备智能仪表智能仪表汽车电子汽车电子网络设备网络设备消费电子消费电子军事国防军事国防电子商务电子商务网络网络工业控制工业控制其其他他嵌入式系统的应用领域 PDA 可视电话可视电话 机器人机器人 SONY机器狗机器狗 嵌入式系统的应用领域嵌入式技术在电子通讯中的应用手机、小灵通、智能手机、手机、小灵通、智能手机、3C3C合一合一信息家电的应用信息家电数字机顶盒信息家电消费电子SAN公司的信息家电产品 嵌入式技术在汽车电子中的应用VOLVO S80汽车的CAN总线网络(1818个嵌入式控制模块)个嵌入式控制模块) CAN CAN总线网络总线网络阿富汗参加反恐作战的阿富汗参加反恐作战的“赫耳墨赫耳
7、墨斯斯”价值价值4 4万美元,可携带万美元,可携带2 2架摄架摄像机,发挥了很好作用。像机,发挥了很好作用。嵌入式技术在军事方面的应用嵌入式系统高性能武器平台的基础嵌入式Internet应用嵌入式系统与机器人技术图:卡耐基梅隆大学和瑞士图:卡耐基梅隆大学和瑞士EPFLEPFL研制的机器人控制器研制的机器人控制器 (采用卡西欧(采用卡西欧PDAPDA和和Windows CEWindows CE) 智能机器人基于Win CE的移动机器人平台基于Win CE的机器人装配平台基于RTLinux的仿人机器人高高 48 cm48 cm重重: 6 kg: 6 kg灵活性:灵活性:20 DOF20 DOF操作
8、系统操作系统: RT-Linux: RT-Linux接口形式接口形式: USB 1.0 (12Mbps): USB 1.0 (12Mbps)响应周期响应周期: 1ms: 1ms能源:能源: DC24V x 6.2A (150W)DC24V x 6.2A (150W)制造:富士通制造:富士通 基于VXworks的火星探路者2004年“勇气号”再次登陆火星1.4 嵌入式处理器 嵌入式处理器分类:嵌入式嵌入式 处理器处理器嵌入式微处理器嵌入式微处理器MPU嵌入式微处理嵌入式微处理MCU嵌入式数字信号嵌入式数字信号 处理器处理器EDSP嵌入式片上系统嵌入式片上系统SoC嵌入式处理器现状及发展趋势1.3
9、2位处理器在兴起2.处理器IP(知识产权)3.可编程处理器1.5 嵌入式操作系统嵌入式操作系统分类l面向控制、通信等领域的实习操作系统 WindRiver公司的VxWorks、ATI的Nucleus、QNX系统软件公司的QNX、ISI的pSOS等l面向消费电子产品的非实时操作系统 WinCE、Linux等实时操作系统 实时系统的两种类型 硬件实时系统和软件实时系统 在实时多任务系统中,内核负责管理各个任 务,或者说为每个任务分配CPU时间,并且负责任务之间的通信。 基于优先级的内核的2种类型 不可剥夺型的和可剥夺型内核不可剥夺型内核(非占先式 Non-Preemptive)低优先级任务低优先级
10、任务ISR高优先级任务高优先级任务(1)(2)(3)(4)(5)(6)(7)中断服务程序使中断服务程序使高优先级任务就绪高优先级任务就绪低优先级任务释放低优先级任务释放CPU使用权使用权TIME可剥夺型内核(占先式 Preemptive)低优先级任务低优先级任务ISR高优先级任务高优先级任务(1)(2)(3)(4)(5)(6)中断服务程序使中断服务程序使高优先级任务就绪高优先级任务就绪高优先级任务得到高优先级任务得到CPU使用权使用权TIME嵌入式操作系统的特点1.可裁剪2.强实时性3.统一的接口4.操作方便、简单、提供友好的图形用户界面GUI5.提供强大的网络功能6.稳定性,弱交互性7.固化
11、代码8.良好的移植性VxWorksl VxWorks操作系统是美国WindRiver公司于1983年设计开发的一种嵌入式实时操作系统(RTOS),具有良好的持续发展能力、高性能的内核以及友好的用户开发环境,在嵌入式实时操作系统领域牢牢占据着一席之地。l VxWorks所具有的显著特点是:u可靠性、实时性和可裁减性。u它支持多种处理器,如x86、i960、Sun Sparc、Motorola MC68xxx、MIPS 、POWER PC等等。l 大多数的VxWorks API是专有的,火星机器人。目前市场上流行的嵌入式操作系统NucleuslNucleus实时操作系统是Accelerater T
12、echnology公司开发的嵌入式RTOS,产品只需一次性购买Licenses就可以获得操作系统的源码,并且免产品版税。Nucleus的另一大好处是程序员不用写BSP。lNucleus的特点是:l对CPU的支持能力比较强,支持当前流行的大多数RISC、CISC、DSP处理器。lNucleus PLUS采用了软件组件的方法,每个组件具有单一而明确的目的。lNucleus PLUS除提供功能强大的内核操作系统外,还提供种类丰富的功能模块。lNucleus得到许多第三方工具厂商和方案提供商的支持。如ARM、Lauterbach、TI、Infineon、高通、IAR等。Windows CElMicro
13、soft Windows CE是从整体上为有限资源的平台设计的多线程、完整优先权、多任务的操作系统。lWindows CE操作系统的基本核心需要至少200KB的ROM。它支持Win32 API的子集,支持多种的用户界面硬件,同时提供熟悉的开发模式和工具。lWindows CE有5个主要的模块:l内核模块、内核系统接口模块、文件系统模块、图形窗口和事件子系统模块、通信模块嵌入式Linuxl自由免费软件Linux是一个类似于Unix的操作系统。l优点:uLinux是由很多体积小且性能高的微内核系统组成。uLinux支持所有标准的因特网协议。uLinux具备一整套工具链,容易自行建立嵌入式系统的开发
14、环境和交叉运行环境,可以跨越嵌入式系统开发中仿真工具的障碍。u传统的嵌入式程序调试和调试工具是用在线仿真器(ICE)实现的。uLinux具有广泛的硬件支持特性。l不足:u实时性是嵌入式操作系统的基本要求。uLinux内核的所有部分都集中在一起,而且所有的部件在一起编译连接。uLinux需要占用较多存储器。u提供完整的集成开发环境是每一个嵌入式系统开发人员所期待的。QNXl加拿大加拿大QNXQNX公司的产品。公司的产品。lQNXQNX是在是在X86X86体系上面开发出来的,这和别的体系上面开发出来的,这和别的RTOSRTOS不一样,别的好多不一样,别的好多RTOSRTOS都是从都是从68K68K
15、的的CPUCPU上上面开发成熟,然后再移植到面开发成熟,然后再移植到X86X86体系上面来的。体系上面来的。lQNXQNX是一个实时的、可扩充的操作系统,它部分是一个实时的、可扩充的操作系统,它部分遵循遵循POSIXPOSIX相关标准,由于相关标准,由于QNXQNX具有强大的图形具有强大的图形界面功能,因此很适合作为机顶盒、手持设备界面功能,因此很适合作为机顶盒、手持设备(手掌电脑、手机)、(手掌电脑、手机)、GPSGPS设备的实时操作系统设备的实时操作系统使用。使用。 C/OS-C/OS- C/OS-是一种可移植、可固化、可裁剪及可剥夺的多任务实时内核。 (第5章详细介绍)嵌入式操作系统在我
16、国的应用现状 目前为止,中国嵌入式操作系统的主要客户分布在电信、医疗、汽车、安全和消费类等行业,未来的嵌入式操作系统的主要增长动力来自消费类等行业。1.6 嵌入式系统的开发嵌入式系统设计流程:1.需求分析2.体系结构设计3.硬件的设计、制作及测试4.软件的设计、实现及测试5.系统集成6.系统性能测试及可靠性测试系统需要分析系统需要分析规格说明书规格说明书体系结构设计体系结构设计硬件设计硬件设计软件设计软件设计硬件制作硬件制作软件实现软件实现硬件测试硬件测试软件测试软件测试系统集成系统集成系统测试系统测试符合符合 要求?要求?产品产品否否是是基于知识平台的开发方法嵌入式系统的软/硬件框架机械装置
17、机械装置嵌入式嵌入式微处理器微处理器SDRAMSDRAMROMROMI/OI/OA/DA/DD/AD/A人机交互接口人机交互接口通用接口通用接口实时操作系统(实时操作系统(RTOS)RTOS)图形用户图形用户接口接口BSP/HAL 硬件抽象层/板极支持包BSP/HAL 硬件抽象层/板极支持包任务管理任务管理文件系统文件系统应用程序应用程序嵌入式计算机系统嵌入式计算机系统传感器1传感器1传感器2传感器2传感器N传感器N.驱动器1驱动器1驱动器2驱动器2驱动器N驱动器N.硬件层硬件层软件层软件层中间层中间层功能层功能层被控对象被控对象开发平台简介开始新工程编辑源代码交叉编译连接仿真调试程序下载台式/笔记本式PC机并口JTAG仿真器网络接口JTAG接口USB接口串口0ARM300开发板串口USB接口以太网口ARMSDTDebugArmDvkARM7处理器执行监测结果超级终端ARM300开发板实验流程结束嵌入式软件开发流程开发平台简介网口JTAGUSB串口0扩展板接口ARM微处理器S3C44B0X扩展口2网卡JTAG仿真器ARM300开发板集成开发环境运行平台嵌入式系统开发考虑的一些问题1.软硬件协同设计2.嵌入式处理器的选择3.操作系统的选择4.嵌入式系统的交叉开发环境5.嵌入式系统的调试交叉开发环境交叉开发环境
限制150内