《嵌入式控制系统课件.ppt》由会员分享,可在线阅读,更多相关《嵌入式控制系统课件.ppt(181页珍藏版)》请在三一办公上搜索。
1、嵌入式控制系统,学习嵌入式控制系统的意义,激烈竞争的需要技术发展的需要 本课程控制类的专业课,涉及到当今工业自动化、通信电子等许多领域的核心技术;综合型人才培养的需要 是一门软件与硬件技术相融合、理论与实践相结合的综合课程;,参考教材,嵌入式控制系统清华大学出版社,本课程重点学习内容,嵌入式技术的基本理论和基本概念控制算法、嵌入式系统硬件、操作系统、应用程序设计及组态软件作为统一的技术平台嵌入式技术在控制系统中应用的特点通过应用实例分析解析嵌入式控制系统中各部分要解决问题。,第一章 嵌入式系统概述, 嵌入式系统的简介 嵌入式系统的构成 嵌入式系统的特点 嵌入式系统的分类 嵌入式系统的应用 嵌入
2、式系统的现状和发展趋势,一、嵌入式系统简介,1、嵌入式系统的历史划分为以下4个阶段:第一阶段是以单芯片为核心的可编程控制器形式的系统,同时具有与监测、驱动、指示设备相配合的功能。第二阶段是以嵌入式中央处理器(Embedded Central Processing Unit,ECPU)为基础、以简单操作系统为核心的嵌入式系统。第三阶段是以嵌入式操作系统为标志的嵌入式系统。第四阶段是以基于Internet 为标志的嵌入式系统,嵌入式系统的概念,对嵌入式系统的定义多种多样从技术的角度定义:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算
3、机系统。从系统的角度定义:嵌入式系统是设计完成复杂功能的硬件和软件,并使其紧密耦合在一起的计算机系统。,一、嵌入式系统简介,2、嵌入式系统的定义根据IEEE(国际电气和电子工程师协会)的定义,嵌入式系统是“用于控制、监测仪器、机器、设备的辅助运行装置”。这主要是从应用上加以定义的,从中可以看出嵌入式系统是软件和硬件的综合体,还可以涵盖机械等附属装置。国内普遍被认同的定义是:嵌入式系统是以应用为中心,以计算机技术为基础,软件硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。,一、嵌入式系统简介,3、嵌入式系统相关概念嵌入式微处理器实时操作系统分时系统多任务操作系统
4、,二、嵌入式系统的构成,嵌入式系统由硬件和软件两部分组成。硬件包括微处理器、存储器、外部设备和I/O端口、图形控制器等。软件部分包括操作系统(一般要求实时多任务操作系统)和应用程序。有时,设计人员把硬、软件组合在一起,作为一个软件系统来安装。,二、嵌入式系统的构成-硬件,硬件系统以嵌入式微处理器为核心主要由嵌入式微处理器总线存储器输入/输出接口,二、嵌入式系统的构成-硬件系统,嵌入式微处理器 每个嵌入式系统至少包含一个嵌入式微处理器。 嵌入式微处理器体系结构可采用冯诺依曼结构或哈佛结构; 指令系统可采用精简指令集或复杂指令集。,二、嵌入式系统的构成-硬件系统,2. 总线微处理器需要与一定数量的
5、组件和外围设备连接,为了简化硬件电路和系统结构,常用总线将CPU与各组件和外围设备进行连接。,二、嵌入式系统的构成-硬件系统,3. 存储器嵌入式系统的存储器分为三级高速缓存Cache主存外存,二、嵌入式系统的构成-硬件系统,4. 输入输出接口和设备嵌入式系统是面向应用的,不同的应用所需的接口和外设不同。在嵌入式系统中,通常把大多数接口和部分外设集成到嵌入式处理器上,如Timer、RTC、UART、GPIO、USB、A/D、D/A、LCD Controller、DMA控制器和中断控制器等。,二、嵌入式系统的构成-软件系统,嵌入式软件包括嵌入式系统软件、支撑软件和应用软件。嵌入式系统软件,是指控制
6、、调度嵌入式系统资源的软件,主要包括嵌入式操作系统等。嵌入式支撑软件,是指辅助应用软件开发的工具软件,包括系统分析设计工具、仿真开发工具、交叉开发工具、测试工具、配置管理工具和系统维护工具等。嵌入式应用软件,是指嵌入式系统中面向特定应用的软件。,三、嵌入式系统的特点,系统内核小。专用性强。系统精简。硬实时性。多任务处理功能。,四、嵌入式系统的分类,其分类可以从硬件和软件进行划分。从硬件方面来讲,各式各样的嵌入式处理器是嵌入式系统硬件中的最核心的部分。根据其现状,嵌入式处理器可以分成下面几类:1. 嵌入式微控制器(Microcontroller Unit, MCU) 2.数字信号处理器DSP (
7、Digital Signal Processor, DSP)3.微处理器(Micro Processing Unit,MPU)4.嵌入式片上系统(System on Chip),五、嵌入式系统的应用领域,嵌入式系统小型化、专用性、高可靠性的优点,广泛应用于消费电子、通信、汽车、国防、航空航天、工业控制、仪表和办公自动化等领域。,六、嵌入式系统的现状与发展趋势,随着网络化、信息化、智能化的发展,嵌入式系统也将获得广阔的发展空间。嵌入式技术已全面展开,目前已成为工业控制、通信和消费类产品的共同发展方向。,未来嵌入式系统的发展趋势,嵌入式开发是一项系统工程,因此要求嵌入式系统厂商不仅要提供嵌入式软硬
8、件系统本身,同时还需要提供相关的硬件开发工具和软件包支持。网络化、信息化的要求随着因特网技术的成熟、带宽的提高日益提高,使得以往单一功能的设备如电话、手机、冰箱、微波炉等功能不再单一,结构更加复杂。随着信息化建设的不断深入,嵌入式系统的网络互联成为必然趋势。未来的嵌入式设备为了适应网络发展的要求,必然要求硬件上提供各种网络通信接口。嵌入式系统要求精简系统内核、,降低系统功耗和软硬件成本。嵌入式系统提供友好的多媒体人机界面。,思 考 题,1 什么是嵌入式系统?2 与常用的计算机系统相比,嵌入式系统的特点有哪些?3 嵌入式系统如何分类?4 嵌入式系统主要应用于哪些领域?5 嵌入式系统的发展趋势是什
9、么?,本章学习以下内容:,本章从如何搭建一个嵌入式系统的角度,对嵌入式处理器、工业控制总线以及外部设备分别做了介绍。为今后的嵌入式硬件选择打下基础。 嵌入式处理器 工业控制总线 外部设备,第2章 嵌入式系统硬件平台,2.1 嵌入式处理器2.2 工业控制总线2.3 嵌入式外部设备,2.1 嵌入式处理器,各式各样的嵌入式处理器是嵌入式系统硬件中最核心的部分。嵌入式处理器分为嵌入式微控制器,嵌入式微处理器,嵌入式片上系统,数字信号处理器等,下面分别对它们进行介绍。,2.1.1 嵌入式微控制器(Micro ControllerUnit,MCU),嵌入式微控制器将整个计算机系统集成到一块芯片中。嵌入式微
10、控制器一般以某种微处理器内核为核心,根据应用要求,在芯片内部集成了ROM/EPROM、RAM、总线、总线逻辑、定时/计数器、看门狗、I/O、串行口、脉宽调制输出、A/D、D/A、FlashRAM、EEPROM等各种功能部件和外设。,图2-1 嵌入式微控制器结构,MC9S12DP256微控制器,MC9S12系列是MOTOROLA公司开发的高性能16位微控制器(MCU)它具有丰富的输入输出接口,较强的数值运算和逻辑运算能力,特别还具有较强的定时控制功能,使其适用于复杂时序控制。,图2-2MC9S12DP256结构框图,简单的背景开发模式(BDM),2.1.2 嵌入式微处理器,嵌入式微处理器一般具备
11、4个特点:1)对多任务和实时有很强的支持能力。能完成多任务并且有较短的中断响应时间,从而使内部的代码和实时操作系统的执行时间减少到最低限度;2)具有功能很强的存储区保护功能。为避免在软件模块之间出现错误的交叉作用,需要设计强大的存储区保护功能,同时也有利于软件诊断;3)可扩展的微处理器结构。即能迅速地扩展出满足应用的高性能的嵌入式微处理器;4)嵌入式微处理器的功耗必须很低。尤其是便携式的计算和通信设备中靠电池供电的嵌入式系统更是如此,功耗只能为mW甚至W级。,嵌入式微处理器目前主要有ARM(ARM7、ARM9 、ARM10系列)、INTEL(SA、PXA、Xscale等系列)、IBM(Powe
12、rPC系列)、Motorola(68K、MC68、ColdFire、MPC、HC等系列)、VIA威盛(C3、Antaur、Eden等系列)、Texas Instruments德州仪器(TMS320、OMAP等系列)、Philips(Trimedia系列)、AMD(DB系列)、SuperH(SH、Crusoe、MIPS等系列)等,国内研华、研祥、同维电子等公司也有自己的产品。我国32位嵌入式微处理器“方舟3号”已问世,它是32位微处理器,采用0.18微米工艺和超流水线结构,频率将达到500Mhz以上,具有数字处理增强支持功能。,2.1.3嵌入式片上系统,SoC通常将微处理器、模拟IP核、数字IP
13、核和存储器(或片外存储控制接口)集成在单一芯片上。SoC可以使应用产品实现小型、轻量、低功耗、多功能、高速度和低成本,因此具备较强的市场竞争力,主要广泛用于计算机、通信、消费、工控、交通运输等领域。,1. SoC研究内容,SoC沿CSoC、SoPC、ASIC SoC这三个方向发展,但最具挑战性的还是ASIC SoC研究领域。SoC设计方法学主要研究总线架构技术、IP核可复用技术、可靠性设计技术、软硬件协同设计技术、SoC设计验证技术、芯片综合/时序分析技术、可测性/可调试性设计技术、低功耗设计技术、新型电路实现技术等,此外还要做操作系统/嵌入式软件移植、开发研究,是一门跨学科的新兴研究领域。,
14、2. SoC分类,SoC按实现技术可分为三类:一类是CSoC,当前仍以学术研究机构为主导,注重体系结构探索性工作;另一类是SoPC ,以FPGA 厂商和科研机构为主导,适合多品种少批量产品开发;第三类是ASIC SoC,以微处理器和芯片设计公司为主导,追求良好的性价比,适合大批量规模生产;,3. SoC产品介绍,SoC品种日益繁多,在关注面积、延迟、功耗的基础上,设计目标在向高成品率、高可靠性、低EMI噪声、低成本、高易用性等方面转移,这将使系统级集成能力快速发展。,4. SoC技术发展方向与前景,1) 计算机学科提升SoC技术水平2)SoC推动计算机体系结构发展 3)SoC开创了交叉学科发展
15、的新天地,2.1.4 数字信号处理器(DigitalSignalProcessor,DSP),数字信号处理是一种通过使用数学技巧执行转换或提取信息,来处理现实信号的方法,这些信号由数字序列表示。数字信号处理器(DSP)是一类微处理器具有速度快、功能强、实时处理数据的特点。,1. 什么是DSP,DSP是一种独特的微处理器,是以数字信号来处理大量信息的器件。其工作原理是接收模拟信号,将其转换为0或1的数字信号,再对数字信号进行修改、删除、强化,并在其他系统芯片中把数字数据解译回模拟数据或实际环境格式。它不仅具有可编程性,而且其实时运行速度可达每秒数以千万条复杂指令程序,远远超过通用微处理器,是数字
16、化电子世界中日益重要的电脑芯片。它的强大数据处理能力和高运行速度,是最值得称道的两大特色。,2. DSP算法的主要特点及其硬件要求,特点: 信号处理算法运算量大,要求速度快。不论是一维的语言信号,还是二维的图像信号,一般算法的运算量都很大,且算法的实现都必须实时; 信号处理算法通常需要执行大量的乘累加运算。比如FIR滤波算法主要执行的是一个点积运算,也就是以乘、加为主的运算; 信号处理算法常具有某些特定模式。比较典型的数字滤波器中的连续推移位; 信号处理算法大部分处理时间花在执行相对小循环的操作上; 信号处理要求专门的接口。,要求: 单周期快速运算,允许任意计算次序; 单周期内能取两个以上操作
17、数,保证快速的乘累加运算(MAC); 能产生信号处理算法需要的特殊寻址,如循环寻址和位翻转寻址; 有相应的硬件循环缓冲区,能执行零开销的循环和转移操作; 具有串口、DMA控制器、定时器等丰富的外设资源。,3. DSP的基本结构组成,1)多总线结构 a)冯诺曼结构 b)哈佛结构 图2-6 两种总线结构框图,2)流水线3)硬件乘法器4)多处理单元 5)外围设备,4. DSP处理器与通用处理器(General-Purpose Processor,GPP)的比较,1)对密集的乘法运算的支持2)存储器结构3)零开销循环4)定点计算5)专门的寻址方式6)执行时间的预测7)定点DSP指令集8)开发工具的要求
18、,5. 当前主流的DSP体系结构,当前高性能的DSP结构的主要特点就是采用了各种并行处理技术,它可由两个途径实现:一种途径是基于VLIW、类RISC指令集等技术来增加单时钟周期并发的指令数;另一种途径是通过SIMD、增大总线字长或增加指令字的长度等技术来增加单指令周期并行执行的处理单元个数。,2.1.5 其他嵌入式微处理器,1. MIPS:Microprocessor without Interlocked Pipeline Stages的缩写,是一种微处理器内核标准如右图图2-7 MIPS微处理器产品结构,2. PowerPCPowerPC架构的特点是可伸缩性好,方便灵活。PowerPC微处
19、理器品种很多,既有通用的微处理器,又有嵌入式控制器和内核,应用范围非常广泛,从高端的工作站、服务器到桌面计算机系统,从消费类电子产品到大型通信设备,无所不包。,3. 68K/ColdfireMotorola 68000(68K)很早就进入嵌入式微处理器市场。SUN也把这款微处理器用于其最早的工作站,现在68K芯片已经完全应用到嵌入式系统中去。由于68K使用了个人电脑CPU常用的CISC架构,因此它与现在的PC指令集保持了二进制兼容。基于68K/Coldfire架构的嵌入式微处理器如:MCF5272微处理器是基于第二代ColdFire V2核心,在66MHz下操作速度为63Dhrystone 2
20、.1MIPS,是迄今最高的V2性能。,2.2 工业控制总线,总线是指一组进行互连和传输信息(指令、数据和地址)的信号线,是连接系统各个部分之间的桥梁。微处理器需要通过总线与一定数量的部件和外围设备连接。嵌入式系统的总线一般分为片内总线和片外总线。片内总线就是嵌入式微处理器内的CPU与片内其他部件连接的总线;片外总线是嵌入式微处理器与外围芯片连接的总线。在本书介绍的控制系统中总线是指片外总线。,目前常用的总线有ISA总线、PCI总线、ARM总线等。下面着重介绍PC/104总线。PC/104是一种专门为嵌入式控制而定义的工业控制总线,近年来在国际上广泛流行,被IEEE协会定义为IEEE-P996.
21、1。在硬件上与PC/AT主要存在着以下几方面的不同:1)小尺寸结构:标准模块的机械尺寸是3.63.8英寸,即9690mm如图2-8所示。 2)堆栈式连接:去掉总线背板和插板滑道,总线以“针”和“孔”形式层叠连接,即PC/104总线模块之间总线的连接是通过上层的针和下层的孔相互咬合相连,这种层叠封装有极好的抗震性。3)轻松总线驱动:减少元件数量和电源消耗,4mA总线驱动即可使模块正常工作,每个模块的能耗为1-2瓦。 4)独立的模块堆栈:PC/104模块是自我堆栈式。这方式中,模块是被用作全兼容的总线底板,但是不需要背板或插槽叠成的,每个模块留出 0.6英寸间距。,图2-8 PC/104的基本尺寸
22、(8位),2.2.1总线结构,1. PC/104 图2-9 PC / 104的8位总线图 图2-10 模块自我堆栈,2)PC/104plusPC/104plus为单列三排120个总线管脚,有效信号线、控制线和PCI总线完全兼容。与计算机一样,一个计算机主板可以同时拥有PC/AT和PCI总线,一个PC/104 CPU模块则可以同时拥有PC/104和PC/104plus总线。PC/104PLUS 是专为PCI总线设计的,可以连接高速外接设备。PC/104PLUS 在硬件上通过一个3X40即120孔插座,PC/104PLUS包括了PCI规范2.1版要求的所有信号。为了向下兼容,PC/104PLUS保
23、持了PC/104的所有特性。,PC/104模块的扩展和应用是灵活的,通常使用PC/104的方法有:1)一个单独的PC/104模块可以作为一个独立的系统使用。 2)PC/104模块能够作为一个成员被嵌入到一个更大的系统中去。3)各种类的PC/104模块能够被堆叠在一起组成一个系统。,图2-11 PC/104和PC/104PLUS,2.2.2电器特性,全部PC/104总线信号都和它们的P996对应部分在定义和功能上相同。 图2-12 PC / 104的16位总线图,2.3嵌入式外部设备,嵌入式外部设备主要是指一些嵌入式系统的一些辅助性设备,如LCD、USB接口设备、串行通信、外部存储器、键盘、网络
24、接口等。,2.3.1 LCD,1. LCD分类:就使用范围分,LCD可分为笔记本电脑(Notebook)LCD以及桌面电脑(Desk Top)LCD。2.LCD液晶显示器具有以下五大优点:1)超精致影像画质。2)十足平面显示:液晶显示技术体积更加扁平、轻巧。3)节省空间。4)节约能源。5)有利健康:LCD无辐射、无闪烁,因而会使使用者眼睛感觉非常舒适。,2.3.2 USB,USB是英文Universal Serial Bus的缩写,中文含义是“通用串行总线”。USB设备之所以会被大量应用,主要具有以下优点:1. 可以热插拔2. 携带方便3. 标准统一4. 可以连接多个设备图2-14 USB接口
25、的引脚定义,2.3.3串行通信,串行接口是微机应用系统常用的接口。 图2-15 串行通信时序图,2.3.4 嵌入式存储设备,嵌入式存储器用于存储操作微处理器器件所需的各种指令或数据。电子硬盘,简单的说就是用固态电子存储芯片阵列制成的硬盘。目前最常见的电子硬盘为Flash电子硬盘。,参 考 题,1.嵌入式微控制器的硬件结构包含哪几个部分?其功能是什么?2.嵌入式微处理器有哪几个特点?ARM微处理器的性能特性是什么?ARM系列微处理器都有哪几个系列,其特点是什么?3.x86有常用的微处理器?其功能特点是什么?4.什么是SoC?SoC的研究内容包括几个方面,分成几类,其特点是什么?5.什么是DSP?
26、其主要特点是什么?DSP的基本结构有哪几个组成?DSP处理器与通用处理器的比较有哪些?主流的DSP体系结构有哪些?6.什么是总线,常用的总线有哪几个?什么是PC/104,PC/104在硬件上与PC/AT主要存在着哪几方面的不同?其电器特性如何?7.嵌入式系统的外部设备包括哪些?8.LCD的优点是什么?LCD分成几类?什么是USB?USB有哪些优点?9.什么是串行通信?串行接口的结构如何?什么是电子硬盘?常用的电子硬盘有哪些?10.搭建一个嵌入式控制系统,如何选用硬件设备?,第3章 嵌入式系统软件平台,本章主要学习以下内容:嵌入式操作系统概述嵌入式操作系统体系结构常用嵌入式操作系统嵌入式操作系统
27、的开发通过本章的学习,要求对嵌入式操作系统的概念,分类,特点,发展,设计目标,体系结构,常用的嵌入式操作系统以及嵌入式操作系统的开发、定制方法有一个基本的了解。,3.1 嵌入式操作系统概述,作为嵌入式系统灵魂的嵌入式操作系统是随着嵌入式系统的发展而出现的,它是当代计算机飞速发展而带来的硬件小型化、微型化,以及软件技术深入发展的产物。嵌入式操作系统的出现,大大提高了嵌入式系统开发的效率,改变了以往嵌入式软件设计只能针对具体的应用从头做起的历史。在嵌入式操作系统之上开发嵌入式系统将减少开发的工作量,增强嵌入式应用软件的可移植性,使嵌入式系统的开发方法更具科学性。可以说,嵌入式操作系统的出现为嵌入式
28、系统的发展铺平了道路。,嵌入式操作系统的概念及分类,嵌入式操作系统是一种支持嵌入式系统应用的系统软件,它是嵌入式系统的重要组成部分。嵌入式操作系统具有通用操作系统的基本特点,能够有效管理复杂的系统资源,完成进程管理、处理器调度、存储管理、设备管理、中断处理等操作系统任务。它通常包括与硬件相关的底层驱动软件、系统内核、设备驱动接口、通信协议、图形界面、标准化浏览器等软件模块。嵌入式操作系统能够把硬件虚拟化,使得开发人员从繁琐的驱动程序开发、移植和维护中解脱出来;能够提供库函数、驱动程序、工具集以及应用程序。与通用操作系统相比,嵌入式操作系统在系统实时性、硬件的相关依赖性、软件固态化以及应用的专门
29、性等方面具有较为突出的特点。,1. 从应用角度分类通用型嵌入式操作系统 常见的通用型嵌入式操作系统有Windows CE.net、嵌入式Linux、VxWorks等专用型嵌入式操作系统 常用的专用型嵌入式操作系统有Smart Phone、Pocket PC、Symbian。2.嵌入式操作系统按实时性可以分为两类:实时嵌入式操作系统。 主要面向控制、通信等领域,如WindRiver公司的VxWorks、ISI的pSOS、QNX系统软件公司的QNX、ATI的Nucleus。非实时嵌入式操作系统。 主要面向消费类电子产品,包括个人数字助理(PDA)、移动电话、机顶盒、电子书、WebPhone等。如微
30、软面向手机应用的Smart Phone操作系统。,嵌入式操作系统特征和功能,嵌入式操作系统负责嵌入式系统的全部软、硬资源的分配和调度控制并协调并发事件,它必须体现其所在系统的特征能够通过装卸某些模块来达到系统所要求的功能。与通用的操作系统相比,它具备一般操作系统最基本的功能,如任务调度、同步机制、中断处理、文件处理等,EOS特征,1. 可定制性2. 可移植性3. 实时性4. 低资源占有性5. 固化代码6. 强稳定性,多数EOS必须提供以下管理功能:1. 多任务管理2. 存储管理3. 设备管理4. 中断管理,嵌入式操作系统的发展简史,EOS的发展可以分为以下四个阶段:第一阶段是以单芯片为核心的可
31、编程控制器系统,具有检测、伺服、指示设备相配和的功能。第二阶段是以嵌入式中央处理器(CPU)为基础,以简单操作系统为核心的嵌入式系统。第三阶段是以嵌入式操作系统为标志的嵌入式系统。第四阶段是以网络应用嵌入式操作系统为标志的嵌入式系统。,3.2 嵌入式操作系统体系结构,操作系统是计算机系统的重要组成部分,是用户与计算机系统的接口。在进行操作系统设计前,首先要明确操作系统的设计目标。嵌入式操作系统是操作系统大家族的一个分支,所以它的设计目标首先应满足一般操作系统的设计目标。,一般操作系统的设计目标和特点,一般说来,一个好的操作系统的设计目标至少应该包括以下几点:1. 正确性和健壮性2. 高效性3.
32、 易维护性4. 可移植性,嵌入式操作系统的设计目标和特点,嵌入式操作系统在系统实时性、高效性、硬件的相关依赖性、软件固化以及应用的专用性等方面具有较为突出的特点。它除了应该具备一般操作系统最基本的功能,如任务调度、同步机制、中断处理、文件处理等外,还应满足嵌入式系统环境的要求。,从系统设计角度看嵌入式系统,它具有如下特点: 1. 系统资源有限2. 硬件种类繁多,为了满足嵌入式系统的要求,嵌入式操作系统的设计目标至少应该包括以下内容: 1. 低资源占有性2. 开放性、可伸缩的体系结构3. 高可靠性4. 满足实时性要求 5. 较强的网络功能6. 固化代码功能,通用操作系统的体系结构,操作系统的体系
33、结构问题讨论的是如何把操作系统这一大型软件划分成若干较小的模块以及如何设计模块间接口的问题。操作系统的体系结构是最能体现操作系统的先进性的问题。,常见的操作系统体系结构,1. 无序模块结构2. 分层结构3. 虚拟机结构4. 客户/服务器结构,嵌入式操作系统的体系结构,嵌入式操作系统的设计应注意以下几点:内核比通用操作系统更小,将更多的功能放在外部进程实现采用模块化的设计,使系统可配置性增强从结构设计上要使平台独立性更强,系统易于向其他平台移植,Windows CE.net操作系统模型,Windows CE.net的分层设计,主要考虑了如下因素:1、从接口的角度讲,Windows CE.net要
34、具备面向应用开发和面向系统两个界面。这也是通用操作系统应该实现的两个层面。2、应该有一个层次来实现硬件特点与操作系统本身特性的隔离,以便于实现系统的移植。3、在以上两个层次之外,底层是具体的硬件设备,顶层应该是具体的应用程序。,常用嵌入式操作系统,早期的嵌入式系统,还没有出现操作系统的概念,大部分功能是用汇编语言编写的应用程序来实现的。C语言的出现促进了嵌入式操作系统的发展。20世纪80年代以来,出现了各种各样的嵌入式操作系统,逐步形成了百家争鸣的局面,较为流行的有VxWorks、Palm OS、嵌入式Linux和Windows CE.Net等等。,VxWorks,VxWorks是美国Wind
35、River公司设计开发的一种嵌入式实时操作系统(RTOS)。VxWorks之所以能成功,得益于它的下列几个特点:1)具有一个高性能的操作系统内核Wind。VxWorks的内核Wind是一个具有较高性能的、标准的嵌入式实时操作系统内核,主要特点包括快速多任务切换、抢占式任务调度、任务间通信手段多样化等。2)VxWorks具有友好的开发调试环境,便于操作、配置和应用程序的开发调试。3)VxWorks具有较好的兼容性。4)VxWorks支持多种开发和运行环境。5)在紧跟新技术持续发展方面有一定的能力和经验。,在具备上述一些优点的同时,VxWorks自身也有以下一些缺陷。1) VxWorks目前版本的
36、PPP协议有一定局限性。2)VxWorks的任务间通信机制有一定的缺陷。3)开发环境Tornado中项目管理能力不足。,Windows CE,WindowsCE是美国微软公司在嵌入式操作系统上的一个重要产品。Windows CE是一个抢先式多任务并具有强大通信能力的嵌入式操作系统。是一个全新的、可移植的、实时的、模块化的操作系统,具有流行的微软程序开发界面。提供许多快速开发嵌入式系统的工具。,嵌入式Linux,特性:精简的内核,适用于不同的CPU,支持多种体系结构,如x86,Alpha,Sparc,MIPS, PPC, ARM,NEC,MOTOROLA等。针对嵌入式的存储方案。用户可定制,可提
37、供图形化的定制和配置工具。常用嵌入式芯片的驱动集,支持大量的周边硬件设备,驱动丰富。,Palm OS,PalmOS是由个人数字助理(Personal Digial Assitant,PDA)的先驱者Palm Computing 公司开发的。在PDA市场上,PalmOS是全球最著名、市场份额最大的PDA操作系统。特点:能耗低合理的内存管理数据库存储方式,pSOS,SOS是一个模块化、高性能的实时操作系统,专为嵌入式微处理器设计,提供一个完全多任务环境,在定制的或是商业化的硬件上提供高性能和高可靠性。可以让开发者根据操作系统的功能和内存需求定制成每一个应用所需的系统。开发者可以利用它来实现从简单的
38、单个独立设备到复杂的、网络化的多处理器系统。pSOS具有可裁剪性,支持多种类型的处理器,其板级支持包(BSP)也比较全。pSOS的主要缺点是上下文切换时间长,实时性不如VxWorks。,QNX,QNX实时操作系统是加拿大QNX软件系统有限公司(QSSL)的产品它是一个符合POSIX标准的实时的、可扩充的操作系统。是一个可以应用于多种CPU上的操作系统,包括普通Intel x86兼容处理器和一些RISC处理器(如PowerPC和MIPS)。,OS-9,Microwave的OS-9是为微处理器的关键实时任务而设计的操作系统,广泛应用于高科技产品,包括消费电子产品、工业自动化、无线通讯产品、医疗仪器
39、、数字电视/多媒体设备中提供了很好的安全性和容错性。与其他的嵌入式系统相比,它的灵活性和可升级性非常突出。,LynxOS,LynxReal-timeSystems的LynxOS是一个分布式、嵌入式、可规模扩展的实时操作系统它遵循POSIX.1a、POSIX.1b和POSIX.1c标准。LynxOS支持线程概念,提供256个全局用户线程优先级;提供一些传统的、非实时系统的服务特征包括基于调用需求的虚拟内存,一个基于Motif的用户图形界面,与工业标准兼容的网络系统以及应用开发工具。,嵌入式操作系统的开发,嵌入式Linux系统的构造1. 嵌入式Linux内核的分析内核在系统中起到的作用是:从程序员
40、的角度看,操作系统内核提供了一个与计算机硬件等价的扩展成虚拟的计算平台,它抽象了许多硬件细节,程序可以以某种统一的方式进行数据处理,而程序员则可以避开许多硬件细节。从用户的角度看,操作系统是一个资源管理者,用户可以以某种易于理解的方式组织自己的数据。,2. 开发环境的建立由于嵌入式系统资源有限,通常是在通用计算机上编好程序,通过交叉编译生成可在目标板运行的二进制代码,然后再下载到目标板上的特定位置运行。所谓交叉编译环境是指编译、链接和调试嵌入式应用软件的环境,它与运行嵌入式应用软件的环境有所不同,通常采用宿主机目标机模式,如图3-7。,3. Linux内核的编译首先编辑Makefile文件。然
41、后在Linux下进入目录/usr/src/linux-2.4进行内核的配置。以make xconfig为例,键入命令后系统配置的界面如图3-8所示。,在每一项中都有不同的选项,例如Networking options选项的界面如图3-9所示。,满足依赖性以后,就可以建立内核映像。在内核配置中若有选项设为可加载模块,则需建立模块.现在得到了重新编译的内核。内核定制好之后,在系统开机复位后需要有引导程序将其装入内存运行。嵌入式系统的内核加载过程同x86 PC机的有所不同。下面就嵌入式系统中的引导程序Boot Loader进行简要分析。,4. 嵌入式系统中Boot Loader的分析整个系统的加载启
42、动任务就完全由 Boot Loader 来完成。常用的Boot Loader有blob,U-boot,ARMboot等。这些Boot Loader可以从网络上获得,根据具体的硬件进行修改,最后生成.bin的二进制文件,烧入相应的存储器的前512字节中,从而完成硬件的初始化及内核的引导。,5. 在CF卡上安装嵌入式Linux操作系统要在宿主机上将已定制好的内核装入CF卡中并在其上构建操作系统首先需要把CF挂载成宿主机的一个设备。,6.嵌入式Linux系统中驱动程序的加载Linux下对于一个硬件的驱动,可以有两种方式:静态编译到内核代码中,启动内核时就会驱动此硬件设备。另一种就是以模块方式,编译生
43、成一个.o文件。当应用程序需要时再动态加载进内核空间运行。嵌入式系统中通常采用将驱动程序静态编译进内核的方法加载设备的驱动程序。上文提到Linux系统支持三种设备驱动程序:字符设备、块设备和网络设备。,7. CLinux内核的特点,Windows CE.net的开发工具,在Windows CE.net产品的开发中,有两个重要的方面:一是内核定制,一是应用程序的开发。微软在这两个方面都提供了非常好的开发工具,这就是内核定制工具Platform Builder和应用程序开发工具Embedded Visual C+。,1.Platform Builder简介,Platform Builder是微软提
44、供给Windows CE系统开发人员进行嵌入式操作系统Windows CE.net定制和驱动程序开发的集成开发环境。它提供了所有进行设计、创建、编译、测试和调试Windows CE.net操作系统平台的工具。它运行在桌面Windows下,开发人员可以通过交互式的环境来设计和定制内核、选择系统特性、进行编译和调试。此外,开发人员还可以利用Platform Builder进行驱动程序开发和应用程序项目的开发等。Platform Builder的强大功能,已使其成为Windows CE.net平台下嵌入式操作系统开发和定制的必备工具。,使用Platform Builder定制一个平台的平台包括1)生
45、成OS Image(包括选择PB中一些现成的可选择项目);2)生成BSP包(包括OAL和驱动程序,PB中有一些现成的可选择项目);3)添加新的组件(包括驱动程序和应用程序);4)修改平台的组件;5)设置平台属性和环境变量;6)设置远程连接属性,以便下载操作系统;7)下载操作系统(包括下载操作系统到硬件平台和下载操作系统到模拟器);8)调试(包括硬件平台调试和模拟器调试)。,2. Windows CE.net内核定制,1)完整Windows CE.net系统的内容,建立基本的操作系统镜像 2)定制步骤,(1)启动Platform Builder(2)新建Platform Builder工程(3)
46、启动工程向导(4)选择开发板支持包(Board Support Packages,BSP)(5)选择基本配置结构(Platform Configuration)(6)选择定制设备的方法(Custom Device)(7)选择基础类库(Applications & Services Development)(8)选择应用程序(Applications-End User)(9)选择操作系统核心服务(Core OS Services),(10)选择通信服务(Communication Services and Networking)(11)选择文件系统(File System and Data St
47、ore )(12)选择字体(Fonts)(13)选择所支持的国家(International)(14)选择Internet程序(Internet Client Services)(15)选择多媒体技术(Multimedia Technologies)(16)选择安全设置(Security)(17)选择操作系统外壳(Shell and User Interface)(18)向导提示信息(19)完成工程向导,3)生成操作系统镜像选择生成版本后,还需要进行如下设置:(1)打开Build菜单,选择Set Active Confoguration项。(2)从显示的列表中选择要生成的镜像版本。(3)打开P
48、latform菜单,选择Setting项。(4)单击Build Options选项卡,选择Enable Full Kernel Mode项。(5)单击Environment选项卡,单击New按钮,在弹出的对话框的Variable Name栏中输入IMGRAM64, Variable Value栏中输入1,然后单击“OK”按钮。这里主要设置一些与操作系统镜像有关的环境变量,如IMGRAM64,这个变量主要是在操作系统镜像过大时,运行系统使用64MB或更大的内存运行系统。(6)单击“OK”按钮关闭Platform Setting对话框。(7)打开Build菜单,选择Build Platform项,
49、系统开始生成镜像文件。(8)在系统Build过程中,有时会出现一些对话框,提示你现在准备将Digital Rights Management或.NET Compact Framework Beta Release等添加到平台中,直接单击“OK”按钮即可。,4)调试操作系统镜像 (1)仿真调试操作系统镜像(2)在目标设备上调试操作系统镜像(3)下载操作系统镜像到目标设备,思考题,1 什么是嵌入式操作系统?2 嵌入式操作系统的特点有哪些?3 嵌入式操作系统的如何分类?4常用的嵌入式操作系统有哪些?5嵌入式操作系统的开发主要有哪些步骤?,第4章 嵌入式组态软件及其应用,本章主要介绍嵌入式组态软件及其
50、应用开发,并结合一个工程实例具体介绍了嵌入式组态软件的应用。主要内容包括:嵌入式组态软件概述嵌入式组态软件的系统构成嵌入式组态软件的功能特点嵌入式组态软件的工作方式嵌入式组态软件的应用通过本章的学习要求应该对嵌入式组态软件的基本概念、发展现状、系统构成、功能特点、工作方式、应用方法有一个大致的了解,为以后的进一步学习打下基础。,4.1 嵌入式组态软件概述,4.1.1 什么是组态和组态软件“组态”英文是“Configuration”,就是用应用软件中提供的工具、方法,完成工程中某一具体任务的过程。工控组态软件的特点是:面向工业控制需求、具有实时性和可靠性、组态监控画面方便、设备连接驱动丰富、便于