




已阅读5页,还剩176页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
嵌入式控制系统,学习嵌入式控制系统的意义,激烈竞争的需要 技术发展的需要 本课程控制类的专业课,涉及到当今工业自动化、通信电子等许多领域的核心技术; 综合型人才培养的需要 是一门软件与硬件技术相融合、理论与实践相结合的综合课程;,参考教材,嵌入式控制系统 清华大学出版社,本课程重点学习内容,嵌入式技术的基本理论和基本概念 控制算法、嵌入式系统硬件、操作系统、应用程序设计及组态软件作为统一的技术平台 嵌入式技术在控制系统中应用的特点 通过应用实例分析解析嵌入式控制系统中各部分要解决问题。,第一章 嵌入式系统概述, 嵌入式系统的简介 嵌入式系统的构成 嵌入式系统的特点 嵌入式系统的分类 嵌入式系统的应用 嵌入式系统的现状和发展趋势,一、嵌入式系统简介,1、嵌入式系统的历史 划分为以下4个阶段: 第一阶段是以单芯片为核心的可编程控制器形式的系统,同时具有与监测、驱动、指示设备相配合的功能。 第二阶段是以嵌入式中央处理器(Embedded Central Processing Unit,ECPU)为基础、以简单操作系统为核心的嵌入式系统。 第三阶段是以嵌入式操作系统为标志的嵌入式系统。 第四阶段是以基于Internet 为标志的嵌入式系统,嵌入式系统的概念,对嵌入式系统的定义多种多样 从技术的角度定义:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。 从系统的角度定义:嵌入式系统是设计完成复杂功能的硬件和软件,并使其紧密耦合在一起的计算机系统。,一、嵌入式系统简介,2、嵌入式系统的定义 根据IEEE(国际电气和电子工程师协会)的定义,嵌入式系统是“用于控制、监测仪器、机器、设备的辅助运行装置”。这主要是从应用上加以定义的,从中可以看出嵌入式系统是软件和硬件的综合体,还可以涵盖机械等附属装置。 国内普遍被认同的定义是:嵌入式系统是以应用为中心,以计算机技术为基础,软件硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。,一、嵌入式系统简介,3、嵌入式系统相关概念 嵌入式微处理器 实时操作系统 分时系统 多任务操作系统,二、嵌入式系统的构成,嵌入式系统由硬件和软件两部分组成。 硬件包括微处理器、存储器、外部设备和I/O端口、图形控制器等。 软件部分包括操作系统(一般要求实时多任务操作系统)和应用程序。有时,设计人员把硬、软件组合在一起,作为一个软件系统来安装。,二、嵌入式系统的构成-硬件,硬件系统 以嵌入式微处理器为核心 主要由嵌入式微处理器 总线 存储器 输入/输出接口,二、嵌入式系统的构成-硬件系统,嵌入式微处理器 每个嵌入式系统至少包含一个嵌入式微处理器。 嵌入式微处理器体系结构可采用冯诺依曼结构或哈佛结构; 指令系统可采用精简指令集或复杂指令集。,二、嵌入式系统的构成-硬件系统,2. 总线 微处理器需要与一定数量的组件和外围设备连接,为了简化硬件电路和系统结构,常用总线将CPU与各组件和外围设备进行连接。,二、嵌入式系统的构成-硬件系统,3. 存储器 嵌入式系统的存储器分为三级 高速缓存Cache 主存 外存,二、嵌入式系统的构成-硬件系统,4. 输入输出接口和设备 嵌入式系统是面向应用的,不同的应用所需的接口和外设不同。 在嵌入式系统中,通常把大多数接口和部分外设集成到嵌入式处理器上,如Timer、RTC、UART、GPIO、USB、A/D、D/A、LCD Controller、DMA控制器和中断控制器等。,二、嵌入式系统的构成-软件系统,嵌入式软件包括嵌入式系统软件、支撑软件和应用软件。 嵌入式系统软件,是指控制、调度嵌入式系统资源的软件,主要包括嵌入式操作系统等。 嵌入式支撑软件,是指辅助应用软件开发的工具软件,包括系统分析设计工具、仿真开发工具、交叉开发工具、测试工具、配置管理工具和系统维护工具等。 嵌入式应用软件,是指嵌入式系统中面向特定应用的软件。,三、嵌入式系统的特点,系统内核小。 专用性强。 系统精简。 硬实时性。 多任务处理功能。,四、嵌入式系统的分类,其分类可以从硬件和软件进行划分。 从硬件方面来讲,各式各样的嵌入式处理器是嵌入式系统硬件中的最核心的部分。 根据其现状,嵌入式处理器可以分成下面几类: 1. 嵌入式微控制器(Microcontroller Unit, MCU) 2.数字信号处理器DSP (Digital Signal Processor, DSP) 3.微处理器(Micro Processing Unit,MPU) 4.嵌入式片上系统(System on Chip),五、嵌入式系统的应用领域,嵌入式系统小型化、专用性、高可靠性的优点,广泛应用于消费电子、通信、汽车、国防、航空航天、工业控制、仪表和办公自动化等领域。,六、嵌入式系统的现状与发展趋势,随着网络化、信息化、智能化的发展,嵌入式系统也将获得广阔的发展空间。 嵌入式技术已全面展开,目前已成为工业控制、通信和消费类产品的共同发展方向。,未来嵌入式系统的发展趋势,嵌入式开发是一项系统工程,因此要求嵌入式系统厂商不仅要提供嵌入式软硬件系统本身,同时还需要提供相关的硬件开发工具和软件包支持。 网络化、信息化的要求随着因特网技术的成熟、带宽的提高日益提高,使得以往单一功能的设备如电话、手机、冰箱、微波炉等功能不再单一,结构更加复杂。 随着信息化建设的不断深入,嵌入式系统的网络互联成为必然趋势。未来的嵌入式设备为了适应网络发展的要求,必然要求硬件上提供各种网络通信接口。 嵌入式系统要求精简系统内核、,降低系统功耗和软硬件成本。 嵌入式系统提供友好的多媒体人机界面。,思 考 题,1 什么是嵌入式系统? 2 与常用的计算机系统相比,嵌入式系统的特点有哪些? 3 嵌入式系统如何分类? 4 嵌入式系统主要应用于哪些领域? 5 嵌入式系统的发展趋势是什么?,本章学习以下内容:,本章从如何搭建一个嵌入式系统的角度,对嵌入式处理器、工业控制总线以及外部设备分别做了介绍。为今后的嵌入式硬件选择打下基础。 嵌入式处理器 工业控制总线 外部设备,第2章 嵌入式系统硬件平台,2.1 嵌入式处理器 2.2 工业控制总线 2.3 嵌入式外部设备,2.1 嵌入式处理器,各式各样的嵌入式处理器是嵌入式系统硬件中最核心的部分。嵌入式处理器分为嵌入式微控制器,嵌入式微处理器,嵌入式片上系统,数字信号处理器等,下面分别对它们进行介绍。,2.1.1 嵌入式微控制器(Micro Controller Unit,MCU),嵌入式微控制器将整个计算机系统集成到一块芯片中。嵌入式微控制器一般以某种微处理器内核为核心,根据应用要求,在芯片内部集成了ROM/EPROM、RAM、总线、总线逻辑、定时/计数器、看门狗、I/O、串行口、脉宽调制输出、A/D、D/A、Flash RAM、EEPROM等各种功能部件和外设。,图2-1 嵌入式微控制器结构,MC9S12DP256微控制器,MC9S12系列是MOTOROLA公司开发的高性能16位微控制器(MCU) 它具有丰富的输入输出接口,较强的数值运算和逻辑运算能力,特别还具有较强的定时控制功能,使其适用于复杂时序控制。,图2-2 MC9S12DP256结构框图,简单的背景开发模式(BDM),2.1.2 嵌入式微处理器,嵌入式微处理器一般具备4个特点: 1)对多任务和实时有很强的支持能力。能完成多任务并且有较短的中断响应时间,从而使内部的代码和实时操作系统的执行时间减少到最低限度; 2)具有功能很强的存储区保护功能。为避免在软件模块之间出现错误的交叉作用,需要设计强大的存储区保护功能,同时也有利于软件诊断; 3)可扩展的微处理器结构。即能迅速地扩展出满足应用的高性能的嵌入式微处理器; 4)嵌入式微处理器的功耗必须很低。尤其是便携式的计算和通信设备中靠电池供电的嵌入式系统更是如此,功耗只能为mW甚至W级。,嵌入式微处理器目前主要有ARM(ARM7、ARM9 、ARM10系列)、INTEL(SA、PXA、Xscale等系列)、IBM(PowerPC系列)、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核和存储器(或片外存储控制接口)集成在单一芯片上。SoC可以使应用产品实现小型、轻量、低功耗、多功能、高速度和低成本,因此具备较强的市场竞争力,主要广泛用于计算机、通信、消费、工控、交通运输等领域。,1. SoC研究内容,SoC沿CSoC、SoPC、ASIC SoC这三个方向发展,但最具挑战性的还是ASIC SoC研究领域。SoC设计方法学主要研究总线架构技术、IP核可复用技术、可靠性设计技术、软硬件协同设计技术、SoC设计验证技术、芯片综合/时序分析技术、可测性/可调试性设计技术、低功耗设计技术、新型电路实现技术等,此外还要做操作系统/嵌入式软件移植、开发研究,是一门跨学科的新兴研究领域。,2. SoC分类,SoC按实现技术可分为三类:一类是CSoC,当前仍以学术研究机构为主导,注重体系结构探索性工作;另一类是SoPC ,以FPGA 厂商和科研机构为主导,适合多品种少批量产品开发;第三类是ASIC SoC,以微处理器和芯片设计公司为主导,追求良好的性价比,适合大批量规模生产;,3. SoC产品介绍,SoC品种日益繁多,在关注面积、延迟、功耗的基础上,设计目标在向高成品率、高可靠性、低EMI噪声、低成本、高易用性等方面转移,这将使系统级集成能力快速发展。,4. SoC技术发展方向与前景,1) 计算机学科提升SoC技术水平 2)SoC推动计算机体系结构发展 3)SoC开创了交叉学科发展的新天地,2.1.4 数字信号处理器(Digital Signal Processor,DSP),数字信号处理是一种通过使用数学技巧执行转换或提取信息,来处理现实信号的方法,这些信号由数字序列表示。数字信号处理器(DSP)是一类微处理器具有速度快、功能强、实时处理数据的特点。,1. 什么是DSP,DSP是一种独特的微处理器,是以数字信号来处理大量信息的器件。其工作原理是接收模拟信号,将其转换为0或1的数字信号,再对数字信号进行修改、删除、强化,并在其他系统芯片中把数字数据解译回模拟数据或实际环境格式。它不仅具有可编程性,而且其实时运行速度可达每秒数以千万条复杂指令程序,远远超过通用微处理器,是数字化电子世界中日益重要的电脑芯片。它的强大数据处理能力和高运行速度,是最值得称道的两大特色。,2. DSP算法的主要特点及其硬件要求,特点: 信号处理算法运算量大,要求速度快。不论是一维的语言信号,还是二维的图像信号,一般算法的运算量都很大,且算法的实现都必须实时; 信号处理算法通常需要执行大量的乘累加运算。比如FIR滤波算法主要执行的是一个点积运算,也就是以乘、加为主的运算; 信号处理算法常具有某些特定模式。比较典型的数字滤波器中的连续推移位; 信号处理算法大部分处理时间花在执行相对小循环的操作上; 信号处理要求专门的接口。,要求: 单周期快速运算,允许任意计算次序; 单周期内能取两个以上操作数,保证快速的乘累加运算(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)开发工具的要求,5. 当前主流的DSP体系结构,当前高性能的DSP结构的主要特点就是采用了各种并行处理技术,它可由两个途径实现:一种途径是基于VLIW、类RISC指令集等技术来增加单时钟周期并发的指令数;另一种途径是通过SIMD、增大总线字长或增加指令字的长度等技术来增加单指令周期并行执行的处理单元个数。,2.1.5 其他嵌入式微处理器,1. MIPS:Microprocessor without Interlocked Pipeline Stages的缩写,是一种微处理器内核标准 如右图图2-7 MIPS微处理器产品结构,2. PowerPC PowerPC架构的特点是可伸缩性好,方便灵活。PowerPC微处理器品种很多,既有通用的微处理器,又有嵌入式控制器和内核,应用范围非常广泛,从高端的工作站、服务器到桌面计算机系统,从消费类电子产品到大型通信设备,无所不包。,3. 68K/Coldfire Motorola 68000(68K)很早就进入嵌入式微处理器市场。SUN也把这款微处理器用于其最早的工作站,现在68K芯片已经完全应用到嵌入式系统中去。由于68K使用了个人电脑CPU常用的CISC架构,因此它与现在的PC指令集保持了二进制兼容。 基于68K/Coldfire架构的嵌入式微处理器如: MCF5272微处理器是基于第二代ColdFire V2核心,在66MHz下操作速度为63Dhrystone 2.1MIPS,是迄今最高的V2性能。,2.2 工业控制总线,总线是指一组进行互连和传输信息(指令、数据和地址)的信号线,是连接系统各个部分之间的桥梁。微处理器需要通过总线与一定数量的部件和外围设备连接。嵌入式系统的总线一般分为片内总线和片外总线。片内总线就是嵌入式微处理器内的CPU与片内其他部件连接的总线;片外总线是嵌入式微处理器与外围芯片连接的总线。在本书介绍的控制系统中总线是指片外总线。,目前常用的总线有ISA总线、PCI总线、ARM总线等。下面着重介绍PC/104总线。 PC/104是一种专门为嵌入式控制而定义的工业控制总线,近年来在国际上广泛流行,被IEEE协会定义为IEEE-P996.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的基本尺寸(8位),2.2.1总线结构,1. PC/104 图2-9 PC / 104的8位总线图 图2-10 模块自我堆栈,2)PC/104plus PC/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保持了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接口设备、串行通信、外部存储器、键盘、网络接口等。,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接口的引脚定义,2.3.3串行通信,串行接口是微机应用系统常用的接口。 图2-15 串行通信时序图,2.3.4 嵌入式存储设备,嵌入式存储器用于存储操作微处理器器件所需的各种指令或数据。 电子硬盘,简单的说就是用固态电子存储芯片阵列制成的硬盘。 目前最常见的电子硬盘为Flash电子硬盘。,参 考 题,1.嵌入式微控制器的硬件结构包含哪几个部分?其功能是什么? 2.嵌入式微处理器有哪几个特点?ARM微处理器的性能特性是什么?ARM系列微处理器都有哪几个系列,其特点是什么? 3.x86有常用的微处理器?其功能特点是什么? 4.什么是SoC?SoC的研究内容包括几个方面,分成几类,其特点是什么? 5.什么是DSP?其主要特点是什么?DSP的基本结构有哪几个组成?DSP处理器与通用处理器的比较有哪些?主流的DSP体系结构有哪些? 6.什么是总线,常用的总线有哪几个?什么是PC/104,PC/104在硬件上与PC/AT主要存在着哪几方面的不同?其电器特性如何? 7.嵌入式系统的外部设备包括哪些? 8.LCD的优点是什么?LCD分成几类?什么是USB?USB有哪些优点? 9.什么是串行通信?串行接口的结构如何?什么是电子硬盘?常用的电子硬盘有哪些? 10.搭建一个嵌入式控制系统,如何选用硬件设备?,第3章 嵌入式系统软件平台,本章主要学习以下内容: 嵌入式操作系统概述 嵌入式操作系统体系结构 常用嵌入式操作系统 嵌入式操作系统的开发 通过本章的学习,要求对嵌入式操作系统的概念,分类,特点,发展,设计目标,体系结构,常用的嵌入式操作系统以及嵌入式操作系统的开发、定制方法有一个基本的了解。,3.1 嵌入式操作系统概述,作为嵌入式系统灵魂的嵌入式操作系统是随着嵌入式系统的发展而出现的,它是当代计算机飞速发展而带来的硬件小型化、微型化,以及软件技术深入发展的产物。 嵌入式操作系统的出现,大大提高了嵌入式系统开发的效率,改变了以往嵌入式软件设计只能针对具体的应用从头做起的历史。 在嵌入式操作系统之上开发嵌入式系统将减少开发的工作量,增强嵌入式应用软件的可移植性,使嵌入式系统的开发方法更具科学性。 可以说,嵌入式操作系统的出现为嵌入式系统的发展铺平了道路。,嵌入式操作系统的概念及分类,嵌入式操作系统是一种支持嵌入式系统应用的系统软件,它是嵌入式系统的重要组成部分。嵌入式操作系统具有通用操作系统的基本特点,能够有效管理复杂的系统资源,完成进程管理、处理器调度、存储管理、设备管理、中断处理等操作系统任务。它通常包括与硬件相关的底层驱动软件、系统内核、设备驱动接口、通信协议、图形界面、标准化浏览器等软件模块。 嵌入式操作系统能够把硬件虚拟化,使得开发人员从繁琐的驱动程序开发、移植和维护中解脱出来;能够提供库函数、驱动程序、工具集以及应用程序。与通用操作系统相比,嵌入式操作系统在系统实时性、硬件的相关依赖性、软件固态化以及应用的专门性等方面具有较为突出的特点。,1. 从应用角度分类 通用型嵌入式操作系统 常见的通用型嵌入式操作系统有Windows CE.net、嵌入式Linux、VxWorks等 专用型嵌入式操作系统 常用的专用型嵌入式操作系统有Smart Phone、Pocket PC、Symbian。 2.嵌入式操作系统按实时性可以分为两类: 实时嵌入式操作系统。 主要面向控制、通信等领域,如WindRiver公司的VxWorks、ISI的pSOS、QNX系统软件公司的QNX、ATI的Nucleus。 非实时嵌入式操作系统。 主要面向消费类电子产品,包括个人数字助理(PDA)、移动电话、机顶盒、电子书、WebPhone等。如微软面向手机应用的Smart Phone操作系统。,嵌入式操作系统特征和功能,嵌入式操作系统负责嵌入式系统的全部软、硬资源的分配和调度 控制并协调并发事件,它必须体现其所在系统的特征 能够通过装卸某些模块来达到系统所要求的功能。 与通用的操作系统相比,它具备一般操作系统最基本的功能,如任务调度、同步机制、中断处理、文件处理等,EOS特征,1. 可定制性 2. 可移植性 3. 实时性 4. 低资源占有性 5. 固化代码 6. 强稳定性,多数EOS必须 提供以下管理功能: 1. 多任务管理 2. 存储管理 3. 设备管理 4. 中断管理,嵌入式操作系统的发展简史,EOS的发展可以分为以下四个阶段: 第一阶段是以单芯片为核心的可编程控制器系统,具有检测、伺服、指示设备相配和的功能。 第二阶段是以嵌入式中央处理器(CPU)为基础,以简单操作系统为核心的嵌入式系统。 第三阶段是以嵌入式操作系统为标志的嵌入式系统。 第四阶段是以网络应用嵌入式操作系统为标志的嵌入式系统。,3.2 嵌入式操作系统体系结构,操作系统是计算机系统的重要组成部分,是用户与计算机系统的接口。 在进行操作系统设计前,首先要明确操作系统的设计目标。 嵌入式操作系统是操作系统大家族的一个分支,所以它的设计目标首先应满足一般操作系统的设计目标。,一般操作系统的设计目标和特点,一般说来,一个好的操作系统的设计目标至少应该包括以下几点: 1. 正确性和健壮性 2. 高效性 3. 易维护性 4. 可移植性,嵌入式操作系统的设计目标和特点,嵌入式操作系统在系统实时性、高效性、硬件的相关依赖性、软件固化以及应用的专用性等方面具有较为突出的特点。 它除了应该具备一般操作系统最基本的功能,如任务调度、同步机制、中断处理、文件处理等外,还应满足嵌入式系统环境的要求。,从系统设计角度看嵌入式系统,它具有如下特点: 1. 系统资源有限 2. 硬件种类繁多,为了满足嵌入式系统的要求,嵌入式操作系统的设计目标至少应该包括以下内容: 1. 低资源占有性 2. 开放性、可伸缩的体系结构 3. 高可靠性 4. 满足实时性要求 5. 较强的网络功能 6. 固化代码功能,通用操作系统的体系结构,操作系统的体系结构问题讨论的是如何把操作系统这一大型软件划分成若干较小的模块以及如何设计模块间接口的问题。 操作系统的体系结构是最能体现操作系统的先进性的问题。,常见的操作系统体系结构,1. 无序模块结构 2. 分层结构 3. 虚拟机结构 4. 客户/服务器结构,嵌入式操作系统的体系结构,嵌入式操作系统的设计应注意以下几点: 内核比通用操作系统更小,将更多的功能放在外部进程实现 采用模块化的设计,使系统可配置性增强 从结构设计上要使平台独立性更强,系统易于向其他平台移植,Windows CE.net操作系统模型,Windows CE.net的分层设计,主要考虑了如下因素: 1、从接口的角度讲,Windows CE.net要具备面向应用开发和面向系统两个界面。这也是通用操作系统应该实现的两个层面。 2、应该有一个层次来实现硬件特点与操作系统本身特性的隔离,以便于实现系统的移植。 3、在以上两个层次之外,底层是具体的硬件设备,顶层应该是具体的应用程序。,常用嵌入式操作系统,早期的嵌入式系统,还没有出现操作系统的概念,大部分功能是用汇编语言编写的应用程序来实现的。 C语言的出现促进了嵌入式操作系统的发展。20世纪80年代以来,出现了各种各样的嵌入式操作系统,逐步形成了百家争鸣的局面,较为流行的有VxWorks、Palm OS、嵌入式Linux和Windows CE.Net等等。,VxWorks,VxWorks是美国WindRiver公司设计开发的一种嵌入式实时操作系统(RTOS)。 VxWorks之所以能成功,得益于它的下列几个特点: 1)具有一个高性能的操作系统内核Wind。VxWorks的内核Wind是一个具有较高性能的、标准的嵌入式实时操作系统内核,主要特点包括快速多任务切换、抢占式任务调度、任务间通信手段多样化等。 2)VxWorks具有友好的开发调试环境,便于操作、配置和应用程序的开发调试。 3)VxWorks具有较好的兼容性。 4)VxWorks支持多种开发和运行环境。 5)在紧跟新技术持续发展方面有一定的能力和经验。,在具备上述一些优点的同时,VxWorks自身也有以下一些缺陷。 1) VxWorks目前版本的PPP协议有一定局限性。 2)VxWorks的任务间通信机制有一定的缺陷。 3)开发环境Tornado中项目管理能力不足。,Windows CE,Windows CE 是美国微软公司在嵌入式操作系统上的一个重要产品。 Windows CE是一个抢先式多任务并具有强大通信能力的嵌入式操作系统。 是一个全新的、可移植的、实时的、模块化的操作系统,具有流行的微软程序开发界面。 提供许多快速开发嵌入式系统的工具。,嵌入式Linux,特性: 精简的内核,适用于不同的CPU,支持多种体系结构,如x86,Alpha,Sparc,MIPS, PPC, ARM,NEC,MOTOROLA等。 针对嵌入式的存储方案。 用户可定制,可提供图形化的定制和配置工具。 常用嵌入式芯片的驱动集,支持大量的周边硬件设备,驱动丰富。,Palm OS,Palm OS是由个人数字助理(Personal Digial Assitant,PDA)的先驱者Palm Computing 公司开发的。在PDA市场上,Palm OS是全球最著名、市场份额最大的PDA操作系统。 特点: 能耗低 合理的内存管理 数据库存储方式,pSOS,pSOS是一个模块化、高性能的实时操作系统,专为嵌入式微处理器设计,提供一个完全多任务环境,在定制的或是商业化的硬件上提供高性能和高可靠性。 可以让开发者根据操作系统的功能和内存需求定制成每一个应用所需的系统。开发者可以利用它来实现从简单的单个独立设备到复杂的、网络化的多处理器系统。 pSOS具有可裁剪性,支持多种类型的处理器,其板级支持包(BSP)也比较全。pSOS的主要缺点是上下文切换时间长,实时性不如VxWorks。,QNX,QNX实时操作系统是加拿大QNX软件系统有限公司(QSSL)的产品 它是一个符合POSIX标准的实时的、可扩充的操作系统。 是一个可以应用于多种CPU上的操作系统,包括普通Intel x86兼容处理器和一些RISC处理器(如PowerPC和MIPS)。,OS-9,Microwave的OS-9是为微处理器的关键实时任务而设计的操作系统,广泛应用于高科技产品,包括消费电子产品、工业自动化、无线通讯产品、医疗仪器、数字电视/多媒体设备中 提供了很好的安全性和容错性。与其他的嵌入式系统相比,它的灵活性和可升级性非常突出。,LynxOS,Lynx Real-time Systems的LynxOS是一个分布式、嵌入式、可规模扩展的实时操作系统 它遵循POSIX.1a、POSIX.1b和POSIX.1c标准。 LynxOS支持线程概念,提供256个全局用户线程优先级;提供一些传统的、非实时系统的服务特征 包括基于调用需求的虚拟内存,一个基于Motif的用户图形界面,与工业标准兼容的网络系统以及应用开发工具。,嵌入式操作系统的开发,嵌入式Linux系统的构造 1. 嵌入式Linux内核的分析 内核在系统中起到的作用是:从程序员的角度看,操作系统内核提供了一个与计算机硬件等价的扩展成虚拟的计算平台,它抽象了许多硬件细节,程序可以以某种统一的方式进行数据处理,而程序员则可以避开许多硬件细节。 从用户的角度看,操作系统是一个资源管理者,用户可以以某种易于理解的方式组织自己的数据。,2. 开发环境的建立 由于嵌入式系统资源有限,通常是在通用计算机上编好程序,通过交叉编译生成可在目标板运行的二进制代码,然后再下载到目标板上的特定位置运行。所谓交叉编译环境是指编译、链接和调试嵌入式应用软件的环境,它与运行嵌入式应用软件的环境有所不同,通常采用宿主机目标机模式,如图3-7。,3. Linux内核的编译 首先编辑Makefile文件。 然后在Linux下进入目录/usr/src/linux-2.4进行内核的配置。 以make xconfig为例,键入命令后系统配置的界面如图3-8所示。,在每一项中都有不同的选项,例如Networking options选项的界面如图3-9所示。,满足依赖性以后,就可以建立内核映像。 在内核配置中若有选项设为可加载模块,则需建立模块. 现在得到了重新编译的内核。内核定制好之后,在系统开机复位后需要有引导程序将其装入内存运行。嵌入式系统的内核加载过程同x86 PC机的有所不同。下面就嵌入式系统中的引导程序Boot Loader进行简要分析。,4. 嵌入式系统中Boot Loader的分析 整个系统的加载启动任务就完全由 Boot Loader 来完成。 常用的Boot Loader有blob,U-boot,ARMboot等。这些Boot Loader可以从网络上获得,根据具体的硬件进行修改,最后生成.bin的二进制文件,烧入相应的存储器的前512字节中,从而完成硬件的初始化及内核的引导。,5. 在CF卡上安装嵌入式Linux操作系统 要在宿主机上将已定制好的内核装入CF卡中并在其上构建操作系统首先需要把CF挂载成宿主机的一个设备。,6.嵌入式Linux系统中驱动程序的加载 Linux下对于一个硬件的驱动,可以有两种方式:静态编译到内核代码中,启动内核时就会驱动此硬件设备。另一种就是以模块方式,编译生成一个.o文件。当应用程序需要时再动态加载进内核空间运行。 嵌入式系统中通常采用将驱动程序静态编译进内核的方法加载设备的驱动程序。上文提到Linux系统支持三种设备驱动程序:字符设备、块设备和网络设备。,7. CLinux内核的特点,Windows CE.net的开发工具,在Windows CE.net产品的开发中,有两个重要的方面:一是内核定制,一是应用程序的开发。微软在这两个方面都提供了非常好的开发工具,这就是内核定制工具Platform Builder和应用程序开发工具Embedded Visual C+。,1.Platform Builder简介,Platform Builder是微软提供给Windows CE系统开发人员进行嵌入式操作系统Windows CE.net定制和驱动程序开发的集成开发环境。它提供了所有进行设计、创建、编译、测试和调试Windows CE.net操作系统平台的工具。它运行在桌面Windows下,开发人员可以通过交互式的环境来设计和定制内核、选择系统特性、进行编译和调试。此外,开发人员还可以利用Platform Builder进行驱动程序开发和应用程序项目的开发等。Platform Builder的强大功能,已使其成为Windows CE.net平台下嵌入式操作系统开发和定制的必备工具。,使用Platform Builder定制一个平台的平台包括 1)生成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)启动工程向导 (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 Store ) (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)打开Platform菜单,选择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项,系统开始生成镜像文件。 (8)在系统Build过程中,有时会出现一些对话框,提示你现在准备将Digital Rights Management或.NET Compact Framework Beta Release等添加到平台中,直接单击“OK”按钮即可。,4)调试操作系统镜像 (1)仿真调试操作系统镜像 (2)在目标设备上调试操作系统镜像 (3)下载操作系统镜像到目标设备,思考题,1 什么是嵌入式操作系统? 2 嵌入式操作系统的特点有哪些? 3 嵌入式操作系统的如何分类? 4常用的嵌入式操作系统有哪些? 5嵌入式操作系统的开发主要有哪些步骤?,第4章 嵌入式组态软件及其应用,本章主要介绍嵌入式组态软件及其应用开发,并结合一个工程实例具体介绍了嵌入式组态软件的应用。主要内容包括: 嵌入式组态软件概述 嵌入式组态软件的系统构成 嵌入式组态软件的功能特点 嵌入式组态软件的工作方式 嵌入式组态软件的应用 通过本章的学习要求应该对嵌入式组态软件的基本概念、发展现状、系统构成、功能特点、工作方式、应用方法有一个大致的了解,为以后的进一步学习打下基础。,4.1 嵌入式组态软件概述,4.1.1 什么是组态和组态软件 “组态”英文是“Configuration”,就是用应用软件中提供的工具、方法,完成工程中某一具体任务的过程。 工控组态软件的特点是:面向工业控制需求、具有实时性和可靠性、组态监控画面方便、设备连接驱动丰富、便于工程技术人员的掌握。,4.1.2 什么是嵌入式组态,一般来讲,嵌入式工业自动化组态软件是一种用于嵌入式系统并带有网络功能(包括Internet服务功能)的嵌入式应用软件。嵌入式系统是指可嵌入至某一设备、产品并可连接至网络的带有智能(即微处理器或微控制器)的设备。,4.2 嵌入式组态软件的系统构成,嵌入式组态软件的结构划分有多种标准,这里以使用软件的工作阶段和软件系统的成员构成两种标准讨论其体系结构。,4.2.1 以使用软件的工作阶段划分,以使用软件的工作阶段划分,嵌入式组态软件分为系统开发环境和系统运行环境两大部分。 1. 系统开发环境 系统开发环境,又称为组态环境,是自动化工程设计人员为实施其控制方案,在嵌入式组态软件的支持下进行工程的系统生成工作所必须依赖的工作环境。 2. 系统运行环境 在系统运行环境下,目标工程被装入计算机内存并投入实时运行。,4.2.2 以组态软件系统的成员构成划分,嵌入式组态软件因为其功能强大,而每个功能相对来说又具有一定的独立性,因此其组成形式是一个集成软件平台,由若干程序组件构成。 其中必备的典型组件包括: 1.工程管理器 2.图形界面开发程序 3.图形界面运行程序 4.实时数据库系统组态程序 5.实时数据库系统运行程序 6.I/O设备驱动程序,此外,有些嵌入式组态软件还具有一些扩展可选组件,主要包括: 1.通用数据库接口(ODBC接口)组态程序 2.通用数据库接口(ODBC接口)运行程序 3.策略(控制方案)编辑/生成组态程序 4.实用通讯程序组件,4.3 嵌入式组态软件的功能和特点,4.3.1 嵌入式组态软件的主要功能 简单灵活的可视化操作界面。 实时性强、有良好的并行处理性能。 丰富、生动的多媒体画面。 完善的安全机制。 强大的网络功能。 多样化的报警功能。 实时数据库为用户分步组态提供极大方便。 支持多种硬件设备,实现“设备无关”。 方便控制复杂的运行流程。 良好的可维护性。 用自建文件系统来管理数据存储,系统可靠性更高 设立对象元件库,组态工作简单方便。,4.3.2 嵌入式组态软件的主要特点,容量小 速度快 成本低 真正嵌入 稳定性高 功能强大 通讯方便 操作简便 支持多种设备 有助于建造完整的解决方案,4.4 嵌入式组态软件的工作方式,4.4.1 实时数据库 在嵌入式组态软件中,用数据对象来描述系统中的实时数据,用对象变量代替传统意义上的值变量,把数据库技术管理的所有数据对象的集合称为实时数据库。 实时数据库是嵌入式组态软件系统的核心,也是应用系统的数据处理中心,系统各部分均以实时数据库为数据公用区,进行数据交换、数据处理和数据的可视化处理,实现各个部分协调动作。设备窗口通过设备构件驱动外部设备,将采集的数据送入实时数据库;由用户窗口组成的图形对象,与实时数据库中的数据对象建立连接关系,以动画形式实现数据的可视化;运行策略通过策略构件,对数据进行操作和处理。,4.4.2 用户窗口,嵌入式组态软件系统组态的一项重要工作就是用生动的图形界面、逼真的动画效果来描述实际工程问题。在用户窗口中,通过对多个图形对象的组态设置,建立相应的动画连接,用清晰生动的画面反映工业控制过程。有些嵌入式组态软件没有用户窗口构件,而是创建若干个用户画面,由工程浏览器进行管理。这两种方式实现的功能是基本相同的。,4.4.3主控窗口,主控窗口是组态工程的主窗口,是所有设备窗口和用户窗口的父窗口,它相当于一个大的容器,可以放置一个设备窗口和多个用户窗口,负责这些窗口的管理和调度,并调度用户策略的运行。同时,主控窗口又是组态工程结构的主框架,可在主控窗口内设置系统运行流程及特征参数,方便用户的操作。,4.4.4 设备组态,在嵌入式组态软件中,实现设备驱动的基本方法是:在设备窗口内配置不同类型的设备构件,并根据外部设备的类型和特征,设置相关的属性,将设备的操作方法如硬件参数配置、数据转换、设备调试等都封装在设备构件之中,以对象的形式与外部设备建立数据的传输通道连接。,4.4.5 运行策略,所谓“运行策略”,是用户为实现对系统运行流程自由控制所组态生成的一系列功能模块的总称。运行策略的建立,使系统能够按照设定的顺序和条件,操作实时数据库,控制用户窗口的打开、关闭以及设备构件的工作状态,从而实现对系统工作过程精确控制及有序调度管理的目的。通过对运行策略的组态,用户可以自行组态完成大多数复杂工程项目的监控软件,而不需要繁琐的编程工作。,1. 运行策略的类型 根据运行策略的不同作用和功能,一般把嵌入式组态软件的运行策略分为启动策略、退出策略、循环策略、用户策略、报警策略、事件策略、热键策略及中断策略几种。每种策略都由一系列功能模块组成。,2. 运行策略的构造方法 嵌入式组态软件的运行策略由以上几种类型的策略组成,每种策略都可完成一项特定的功能,而每一项功能的实现又以满足指定的条件为前提。每一个“条件功能”实体构成策略中的一行,称为策略行,每种策略由多个策略行构成。运行策略的这种结构形式类似于PLC系统的梯形图编程语言,但更加图形化,更加面向对象化,所包含的功能比较复杂,实现过程则相当简单。,3. 运行策略的实现 嵌入式组态软件的运行策略,在实现上充分利用了Windows 98和Windows NT的多任务能力,在系统的后台来处理和实现所有的运行策略。运行策略中的每个策略块都是一个独立的实体,一个策略块对应于一个线程,用相互独立的线程来管理和实现所有的策略块。 运行策略的多线程执行机制,大大提高了系统的运行效率和可靠性,由于每个策略块都有一个独立的线程,最大可能地避免了由于单个策略块的错误而导致整个系统的瘫痪。,4.4.6 脚本语言,脚本程序是组态软件中的一种内置编程语言引擎。当某些控制和计算任务通过常规组态方法难以实现时,通过使用脚本语言,能够增强整个系统的灵活性,解决其常规组态方法难以解决的问题。,4.4.7数据处理,嵌入式组态软件提供了功能强大,使用方便的数据处理功能。按照数据处理的时间先后顺序,将数据处理过程分为三个阶段,即:数据前处理、实时数据处理以及数据后处理,以满足各种类型的需要。,4.4.8 报警处理,嵌入式组态软件把报警处理作为数据对象的属性,封装在数据对象内,由实时数据库在运行时自动处理。当数据对象的值或状态发生改变时,实
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 品质部主管工作总结
- 颅脑外伤急诊抢救护理
- 山东省淄博市2025-2026学年高三上学期开学考试语文试题及参考答案
- 数学教师培训交流
- 代理记账工作总结
- 2026届重庆市荣昌区化学九上期中教学质量检测模拟试题含解析
- 数学建模博弈论析
- 2026届湖北省荆州市松滋市化学九年级第一学期期中综合测试模拟试题含解析
- 建筑行业个人工作总结
- 2026届山东省青岛市崂山区化学九年级第一学期期中复习检测模拟试题含解析
- 专用车产品规模设计手册
- 储能技术-氢储能
- 西方国家的宪法制度课件
- 网站对历史发布信息进行备份和查阅的相关管理制度及执行情况的说明
- 中医四大经典题目及答案
- 近代中国交通交通运输业变迁课件
- 食品生物技术导论ppt课件
- 非油气探矿权变更延续申请登记书
- 鱼塘补偿协议书范文
- 印度白内障小切口手术学习笔记
- 卢春房副部长讲话《树立质量意识,强化风险控制,持续纵深推进铁
评论
0/150
提交评论