




已阅读5页,还剩68页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
嵌入式系统简介IntroductiontoEmbeddedSystem,南开大学孙凤池Mar.12,2007,报告内容,认识嵌入式技术嵌入式技术的起源嵌入式技术的现状嵌入式系统的开发WinCE系统开发展望与总结,认识嵌入式技术,丰富多彩的嵌入式产品无处不在的嵌入式技术嵌入式系统的概念嵌入式系统的特点嵌入式系统的结构,丰富多彩的嵌入式产品,无处不在的嵌入式技术,消费电子:数码相机、MP3、游戏机等信息家电:数字电视、机顶盒智能电器:能上网的冰箱、空调、洗衣机等通信设备:手机、IP电话、网络设备等便携设备:PDA、数据采集、测试装置等工业设备:数控设备、过程工业控制设备商业金融:售货机、收款机、取款机等汽车电子:智能化汽车航空航天:飞行器控制、外星探测器医疗设备:CT机,电子血压计等交通管理:GPS导航、智能监控设施军事领域:武器控制、车载电子设备等,嵌入式系统的概念,定义:嵌入式系统是以应用为中心,以计算机技术为基础,软件、硬件可裁剪,功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。与通用计算机系统的不同:嵌入式系统是不同于常见计算机系统的一种计算机系统,它不以独立设备的物理形态出现,嵌入式系统的部件根据主体设备及其应用的需要,嵌入在主体设备内部,发挥着运算、处理、存储及控制的作用,是“用于控制、监视或者辅助操作机器和设备的装置”。,嵌入式系统的结构,从体系结构来看,嵌入式系统包括两部分:1)嵌入式处理器为中心的嵌入式硬件系统;2)由嵌入式操作系统和用户应用程序组成的嵌入式软件系统。注意:与传统的嵌入式控制系统相比,现在的嵌入式系统,强调“系统”-指的是嵌入式操作系统。,处理器,存储器,输入,输出,操作系统,应用程序,软件结构,硬件结构,嵌入式系统的特点,嵌入式系统是多学科融合的结果:计算机、电子、半导体、通信、控制等;嵌入式系统通常是面向用户、面向产品、面向特定应用,开发人员很可能是各个应用领域的专家;产品具有较长的生命周期;软件固化存储,OS内核小,OS和应用程序的区分不明显;需要另外的开发工具和环境:宿主机+目标机的开发方式/集成开发环境;,报告内容,认识嵌入式技术嵌入式技术的起源嵌入式技术的现状嵌入式系统的开发WinCE系统开发展望与总结,嵌入式技术的起源,早期的嵌入式技术嵌入式操作系统的出现采用嵌入式操作系统的优点,早期的嵌入式技术,微处理器-单板机-单片机、DSP等早期的嵌入式应用大都不采用操作系统,只是为了实现某些特定功能,使用一个简单的循环控制程序对外界的控制请求进行处理。问题:不利于扩展新功能;加入网络协议栈比较麻烦;应用程序移植性差;,嵌入式操作系统的出现,随着嵌入式系统的功能要求日益复杂,硬件功能越来越强大,使用操作系统是必须的,并且可能的;C语言被广泛用于嵌入式操作系统开发;从20世纪80年代开始,出现了各种各样;商用嵌入式操作系统,大多为专用系统开发,从而形成了目前多种嵌入式操作系统并存的局面;嵌入式操作系统的功能包括:任务管理、存储管理、时钟管理、进程间通信与同步、设备管理、文件系统、图形界面、网络接口等。,采用嵌入式操作系统的优点,在嵌入式应用中使用操作系统,可以把复杂的应用分解成多个任务,简化了应用系统软件的设计;程序的设计和扩展变得容易,不需要大的改动就可以增加新的功能;使控制系统的实时性得到保证;通过有效的系统服务,嵌入式实时操作系统使得系统资源得到更好的利用;良好的多任务设计,有助于提高系统的稳定性和可靠性.,报告内容,认识嵌入式技术嵌入式技术的起源嵌入式技术的现状嵌入式系统的开发WinCE系统开发展望与总结,嵌入式技术的现状,嵌入式微处理器发展现状嵌入式操作系统发展现状嵌入式技术市场现状,嵌入式微处理器现状,由于嵌入式系统应用环境比较特殊,因而嵌入式微处理器在对实时系统的支持能力、工作温度、电磁兼容性、功耗、可靠性方面的要求较通用微处理器更高;但嵌入式微处理器在基本功能方面与通用微处理器类似.,嵌入式处理器分类,五种主流的嵌入式微处理器体系ARMXscaleMIPSIBM的PowerPCINTEL的X86Motorola的68000(68K),嵌入式操作系统的发展现状,嵌入式操作系统是一种支持嵌入式系统应用的操作系统软件,通常包括与硬件相关的底层驱动软件、系统内核、设备管理、网络通信、图形界面、文件系统等模块;嵌入式操作系统具有通用操作系统的基本特点,能够有效管理越来越复杂的系统资源;能够把硬件虚拟化,使得开发人员从繁忙的驱动程序移植和维护中解脱出来;能够提供库函数、驱动程序、工具集以及一些典型应用程序。,嵌入式操作系统可以分为两类:面向控制、通信等领域的实时操作系统RTOS,实时系统能在确定的时间内执行其功能,并对外部的异步事件做出响应;面向消费电子产品的非实时操作系统,这类系统用于对响应时间要求不严格的场合。,实时系统的定义:系统执行的正确性不仅取决于计算的逻辑结果,还取决于结果产生的时间。特点:通过任务调度,使得对于重要事件在规定的时间内做出正确的响应。硬实时系统:必须对事件做出及时的反应,绝对不能错过事件处理的时限。软实时系统:如果在系统负荷比较严重的时候,允许发生错过时限的情况,而不会造成太大的危害。,内核是操作系统的核心程序,多任务系统中,内核负责管理各个任务:为每个任务分配CPU时间,并且负责任务之间的通信。任务调度(Scheduler)是内核的主要职责,就是要决定运行哪一个任务。多数实时内核是基于优先级调度法的:每个任务根据其重要程度的不同被赋予一定的优先级,CPU总是让“处在就绪态的优先级最高的任务先运行”。,当系统响应时间很重要时,要使用占先式(preemptive)调度的内核:最高优先级的任务一旦就绪,总能得到CPU的控制权。当一个运行着的任务使一个比它优先级高的任务进入了就绪态,当前任务的CPU使用权就被剥夺了,或者说被挂起了,那个高优先级的任务立刻得到了CPU的控制权。如果是中断服务程序使一个高优先级高的任务进入了就绪态,则中断完成时,原来被中断了的任务被挂起,优先级高的任务开始运行。占先式内核的任务级响应时间是可知的。,调度方式,几款主流嵌入式操作系统VxWorksWindowsCE嵌入式LinuxuC/OSPalmOSQNX,VxWorks,VxWorks操作系统是美国WindRiver公司于1983年设计开发的一种嵌入式实时操作系统(RTOS),具有良好的扩展能力、高性能的内核以及友好的用户开发环境。该公司在实时操作系统领域是世界公认最具有领导作用的公司。VxWorks具有很高的可靠性、实时性和可裁减性,它支持多种处理器,被广泛应用在通信、军事、航空、航天等对实时性要求极高的领域中,在美国的F-16、FA-18战斗机、B-2隐形轰炸机和爱国者导弹、火星探测器上也使用到了VxWorks。,VxWorks的特点,具有高性能实时微内核Wind;友好的开发调试环境Tornado:运行在宿主机上,包含编辑器、编译器、调试器的集成开发环境;兼容POSIX100.1b标准;良好的自由配置能力;广泛的CPU支持,基于VxWorks的火星探测机器人,VxWorks在高性能武器中广泛应用,WindowsCE,WindowsCE是一种针对小内存、移动式、智能化设备推出的模块化嵌入式操作系统。由于其Windows背景,界面比较统容易接受,系统功能丰富,如具有多媒体能力、网络和通信支持、高级应用程序服务。WinCE3.0以前的版本实时性能不高。另外两种版本:WindowsMobile和WindowsAutomotive,WindowsCE的开发环境,PlatformBuilder用于定制WindowsCE平台PlatformBuilder能够根据用户的需求,选择构建(定制)具有不同功能配置的CE系统;定制的平台编译后,就会得到一个OS映像文件;将该文件下载到目标平台,就能够调试、运行CE系统了。VisualSudio.NET2003/eMbeddedVsiualC+用于WindowsCE应用程序的开发。,基于WinCE的自动装配平台,基于WinCE的移动机器人平台,嵌入式Linux,嵌入式Linux(EmbeddedLinux)是指对Linux经过小型化裁剪后,固化在容量只有几百K字节或几兆字节的存储器芯片或单片机中,应用于特定嵌入式场合的专用Linux操作系统。前几年的嵌入式Linux主要有RTLinux和uCLinux两个版本。uClinux内核不关心实时性问题,可用于各种手持设备等场合,RTLinux适合处理实时任务,可用于工业控制等场合。Linux是开放源码的,并具有内核小、功能强大、运行稳定、系统健壮、效率高、易于定制剪裁等优点,在价格上极具竞争力,因此嵌入式Linux是一种最有前途的嵌入式操作系统。,嵌入式Linux的交叉编译环境,Linux内核编译时,默认的配置是对i386平台,如果要编译其他CPU内核,要先建立针对该处理器的编译环境,包括:Linux内核源代码、GNU的C库和线程库、GNU的C编译器、连接器ld、汇编代码编译器as、用来将文件打包重组的ar以及为ar打包的文件建立符号表的ranlib等。例如针对ARM处理器的交叉开发环境中:arm-linux-gcc是编译器,arm-linux-ld是连接器,嵌入式Linux的开发环节,引导装载程序(BootLoader)Linux系统内核嵌入式设备文件系统设备驱动程序应用程序,基于RTLinux的仿人机器人,高48cm重:6kg灵活性:20DOF操作系统:RT-Linux接口形式:USB1.0(12Mbps)响应周期:1ms能源:DC24Vx6.2A(150W)制造:富士通,基于嵌入式Linnux的电子书,uc/OS,uc/OS是一个源代码公开、免费的嵌入式操作系统,是一个高实时性的多任务系统内核,其应用面覆盖了诸多领域,如照相机、网络设备、医疗器械、音响设备、高速公路电话系统、自动提款机等,并于2000年得到美国航空管理局(FAA)的认证,可以用于飞行器中。,基于uc/OS的产品,3-AxisMotorControlCardC/OS-IIHitachiSH2runningat29.4912MHz7Tasks/10HzTickRate,SelfServiceTerminal(SST)C/OS-IIIntel80386CPU33MHz9Tasks20HzTickRate,基于uc/OS的机器鱼,机器鱼的嵌入式控制器,uC/OS-IIRTOS,PalmOS,PalmOS是PalmComputing公司为其掌上电脑产品开发的嵌入式操作系统,PalmOS在PDA市场上占有很大的市场份额,目前主要与WinCE(PocketPC)进行激烈竞争。采用PalmOS的掌上电脑:,QNX,加拿大QNX公司的产品。内核只有8K字节,QNX是一个实时的、可扩充的嵌入式操作系统,遵循POSIX(可移植操作系统接口)相关标准,QNX具有强大的图形界面功能。应用于机顶盒、手持设备(手掌电脑、手机)、GPS设备等,在工业控制领域也有比较广泛的应用。,采用QNX的机器人“EMIEW”,日立公司设计,在2005年爱知世博会展出。050317hit1.mpeg050317hit2.mpeg,附:手机操作系统,Linux微软WindowsMobileSymbine,嵌入式技术市场现状,引用:“PC和因特网之后最伟大的发明”,“福特出售的计算能力已超过了IBM”发展嵌入式软件有以下几个有利条件:1.通用软件容易被盗版,但是嵌入式软件由于固化存储的原因不易被盗版。2.和开发通用系统软件相比,嵌入式软件的开发成本低,风险小,门槛低。3.嵌入式软件和具体行业、应用联系紧密,国外垄断程度和垄断能力相对较弱。嵌入式应用软件是除行业应用软件、软件外包之外的又一个有前途的方向,嵌入式技术市场现状,嵌入式技术相关的企业的运营模式:生产、销售嵌入式系统相关产品的大公司;提供嵌入式技术、应用解决方案的中小型技术公司;用嵌入式技术进行生产设备改造或者产品升级的传统企业;,报告内容,认识嵌入式技术嵌入式技术的起源嵌入式技术的现状嵌入式系统的开发WinCE系统开发展望与总结,嵌入式系统的开发,设计流程软件开发调试方式宿主机-目标机开发模式嵌入式软件集成开发环境操作系统移植系统定制BootLoader设计BSP的概念,设计流程,系统需求分析:分功能性需求和非功能性需求两方面.体系结构设计:对硬件、软件和执行装置的功能划分,对操作系统、微处理器选型.硬件/软件协同设计:软硬件设计工作并行;采用基于开发平台的方式进行硬件开发;大部分工作集中在软件设计上,采用标准化的软件设计方法.系统集成与测试,软件开发调试方式,在线仿真器使用仿真头代替目标板上的CPU,可以完全仿真ARM芯片的行为,速度快。但结构较复杂,价格昂贵,通常用于ARM硬件开发中。JTAG仿真器通过ARM芯片的JTAG边界扫描口与ARM内核进行通信,不占用目标板的资源,是目前使用最广泛的调试手段。指令集模拟器驻留监控软件,宿主机-目标机开发模式,嵌入式软件集成开发环境,集成开发环境(IDE)的意义:加快开发进度,节省开发成本。IDE集成了丰富的功能模块和资源:编辑、编译、连接、调试、工程管理、函数库等。例如:ARMSDT(ARMSoftwareDevelopmentToolkit)用于在ARM微处理器上进行应用软件开发的集成开发工具,由ARM公司提供,可以直接用于uC/OS系统移植和应用程序开发。ARMSDT可以在多个系统平台上运行,可以支持C语言和汇编语言。,嵌入式操作系统的移植,操作系统的移植,是指使一个实时操作系统能够在某个微处理器平台上运行。操作系统移植成功的要求:微处理器能够支持编译器能够支持移植步骤和移植工作复杂程度,因选定的嵌入式操作系统而异。,举例:移植COS-II所需条件,处理器的C编译器能产生可重入代码;在程序中可以打开或者关闭中断;处理器支持中断,并且能产生定时中断(通常在10-100Hz之间);处理器支持能够容纳一定量数据的硬件堆栈;处理器有将堆栈指针和其他CPU寄存器存储和读出到堆栈(或者内存)的指令.,移植C/OS-II所需工作,在includes.h中设置与处理器和编译器相关的代码用C语言编写六个操作系统相关的函数(OS_CPU_C.C)用汇编语言编写四个与处理器相关的函数(OS_CPU.ASM),系统定制,嵌入式操作系统的定制:用户可以根据自己系统的功能需求,通过交叉开发环境对操作系统进行配置,保留所需要的功能,删除不需要的功能,以节省硬件存储空间。定制方式:选择组件方式条件编译方式在编译之前定制,BootLoader的设计,BootLoader是嵌入式系统最底层的引导软件,它在系统加电后初始化主板的基本设置,为接收外部程序做硬件上的准备。BootLoader是一段单独的程序代码,它存放于目标平台的非易失存储介质中,如ROM或FlashROM,BootLoader的作用硬件系统自检;配置其他存储体或者端口、外设的工作模式;处理系统的中断;FlashROM编程、映像文件下载;接收用户命令,参数和数据的设置、存储和传递.引导操作系统,BootLoader设计方法从操作系统厂商提供的例程中寻找与硬件平台最接近的作为标本程序,然后再根据自己的硬件平台做相应的改动。一些新的评估板可能会由供应商或者第三方的厂商来提供Bootloader。如果硬件平台是从这样的基板设计而来,寻求厂商获取Bootloader来移植,可以减少工作量。参考其他来源的近似系统的设计。编写BootLoader是开发第一步。,BSP的概念,BSP是板级支持包,是介于主板硬件和操作系统之间的层次,是操作系统的一部分,主要目的是为了支持操作系统,使之能够更好的运行于硬件主板。BSP是相对于操作系统而言的,不同的操作系统对应于不同定义形式的BSP,BSP一定要按照该系统BSP的定义形式来写,才能与上层OS保持正确的接口。通常,BSP包括硬件适配层和设备驱动程序,其编程过程大多数是在某一个成型的BSP模板上进行修改。,报告内容,认识嵌入式技术嵌入式技术的起源嵌入式技术的现状嵌入式系统的开发WinCE系统开发展望与总结,WinCE系统开发的环节,操作系统定制BootLoader开发硬件适配层(OAL)开发驱动程序开发应用程序设计,WinCE应用程序开发,WinCE支持本地应用程序和托管应用程序:Nativeapplication:开发工具是EmbeddedVisualC+Managedapplication:开发工具是VisaulStudio.NET,开发环境比较,EmbeddedVisualC+:直接编译C/C+代码到CPU指令可使用Win32API应用程序接口存取WindowsCE函数可使用MFC(MicrosoftFou
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 统编版2025-2026学年五年级上册语文期末专项复习-词语有答案
- 江苏省盐城市2024-2025年七年级下学期期末考试历史试卷(含答案)
- 2025年江西省吉安市吉水县中考物理二模试卷(含答案)
- 城市交通智能化发展前景研究
- 酒店行业市场复苏现状与前景
- “云·仓·配”带你走进智慧新世界-智慧仓储与配送管理知到智慧树答案
- “玩”创未来知到智慧树答案
- DB15-T 3155-2023 降雪对放牧畜牧业影响预报技术规程
- 水阻柜原理课件
- 消防消防水源保障方案
- 民族文化宫2024年度面向应届毕业生和社会人员公开招聘笔试模拟试题及参考答案详解一套
- 社会组织内部规范化治理课件
- 农村公路建设标准
- GB/T 13825-2008金属覆盖层黑色金属材料热镀锌层单位面积质量称量法
- GA/T 1237-2015人员基础信息采集设备通用技术规范
- 红十字急救培训-包扎课件
- 药物分析实验注意事项课件
- 沙盘游戏治疗课件
- 甘肃省烟花爆竹经营许可实施标准细则
- 企业内部控制基本规范与配套指引
- 建筑施工危险作业管理制度
评论
0/150
提交评论