版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 嵌入式系统设计与应用学时:40学时(实验12学时)学分:2.5学分主讲教师:王新春 EMAIL:内蒙古科技大学信息工程学院主要内容n嵌入式硬件平台n微处理器、存储器、I/OnARM和XScale的指令系统和体系结构n嵌入式操作系统n特点、进程调度、存储管理nC/OS, Linux的移植、设备驱动和应用开发n嵌入式应用开发n基于C/OS, Linux, WinCE等使用教材 ARM9嵌入式系统设计与开发应用 熊茂华 杨震伦 主编 清华大学出版社主要讲授内容n嵌入式系统的基本知识嵌入式系统的基本知识nARM微处理器体系结构与指令集微处理器体系结构与指令集nARM ADS集成开发环境集成开发环境n
2、嵌入式实时操作系统嵌入式实时操作系统n嵌入式系统硬件平台与接口设计嵌入式系统硬件平台与接口设计n基于基于C/OS-II的软件体系结构设计的软件体系结构设计课程考核标准n平时成绩10n大作业20n实验30n考试40第一章 嵌入式系统基础n嵌入式系统简介n嵌入式处理器n嵌入式操作系统n嵌入式系统开发过程1.1 嵌入式系统简介嵌入式系统简介从从使用使用角度,计算机可分为角度,计算机可分为两类两类:一类是一类是独立使用的计算机系统,如个人计算机、工作站等;独立使用的计算机系统,如个人计算机、工作站等;手持的手持的MP3PCPC机机, ,通用计算机通用计算机1、什么是嵌入式系统?、什么是嵌入式系统?一类
3、是一类是嵌入式计算机系统,它是作为其他系统的组成部分使用的。嵌入式计算机系统,它是作为其他系统的组成部分使用的。(1)根据根据IEEE(国际电气和电子工程师协会)的定义:国际电气和电子工程师协会)的定义: devices used to control, monitor, or assist the operation of equipment, machinery or plants(嵌入式系统是嵌入式系统是“用于控制、用于控制、监视或者辅助操作机器和设备的装置监视或者辅助操作机器和设备的装置” )。)。 可以看出此定义是从应用上考虑的,嵌入式系统是软件和硬件可以看出此定义是从应用上考虑的,
4、嵌入式系统是软件和硬件的综合体,还可以涵盖机电等附属装置。的综合体,还可以涵盖机电等附属装置。(2)一般定义)一般定义(国内定义国内定义) “以以应用为中心应用为中心、以、以计算机技术为基础计算机技术为基础、软件硬件可裁剪软件硬件可裁剪、功能、功能、可靠性、成本、体积、功耗严格要求可靠性、成本、体积、功耗严格要求的专用计算机系统。的专用计算机系统。” 2 2、几种定义、几种定义一般有以下四个部分组成一般有以下四个部分组成嵌入式微处理器嵌入式微处理器外围硬件设备外围硬件设备硬件硬件软件软件实现对其它设备的控制、实现对其它设备的控制、监视、管理等功能监视、管理等功能嵌入式操作系统嵌入式操作系统应用
5、程序应用程序3、嵌入式系统的组成、嵌入式系统的组成4、嵌入式系统的几个重要特征、嵌入式系统的几个重要特征(1)系统内核小)系统内核小 由于嵌入式系统一般是应用于小型电子装置的,系统由于嵌入式系统一般是应用于小型电子装置的,系统资源相对有限,所以内核较之传统的操作系统要小得多。资源相对有限,所以内核较之传统的操作系统要小得多。()专用性强()专用性强 嵌入式系统的个性化很强,其中的软件系统和硬件的结嵌入式系统的个性化很强,其中的软件系统和硬件的结合非常紧密,一般要针对硬件进行系统的移植。合非常紧密,一般要针对硬件进行系统的移植。()系统精简()系统精简嵌入式系统一般没有系统软件和应用软件的明显区
6、嵌入式系统一般没有系统软件和应用软件的明显区分,不要求其功能设计及实现上过于复杂,这样一分,不要求其功能设计及实现上过于复杂,这样一方面利于控制系统成本,同时也利于实现系统安全。方面利于控制系统成本,同时也利于实现系统安全。()高实时性()高实时性OS 是是嵌入式软件的基本要求,软件固态存储,以提嵌入式软件的基本要求,软件固态存储,以提高速度。软件代码要求高质量和高可靠性、实时性。高速度。软件代码要求高质量和高可靠性、实时性。 (5)嵌入式软件开发走向标准化)嵌入式软件开发走向标准化 嵌入式系统的应用程序可以没有操作系统直接在芯片上运行。嵌入式系统的应用程序可以没有操作系统直接在芯片上运行。5
7、、嵌入式系统应用领域嵌入式应用嵌入式应用信息家电信息家电智能玩具智能玩具军事电子军事电子通信设备通信设备移动存贮移动存贮工控设备工控设备智能仪表智能仪表汽车电子汽车电子网络设备网络设备工业工业消费电子消费电子军事国防军事国防电子商务电子商务网络网络6 6、嵌入式系统的发展、嵌入式系统的发展 嵌入式系统已经有了近嵌入式系统已经有了近3030年的发展历史,它是硬件年的发展历史,它是硬件和软件交替发展的双螺旋式发展。和软件交替发展的双螺旋式发展。 嵌入式处理器嵌入式处理器l19711971年,单片机是年,单片机是IntelIntel公司的公司的40444044,l同时期,同时期,MotorolaMo
8、torola:6868HC05HC05,ZilogZilog公司:公司:Z80Z80系列系列,均含有,均含有256256字节的字节的RAMRAM、4K4K的的ROMROM、4 4个个8 8位并口、位并口、1 1个全双工串行口、两个个全双工串行口、两个1616位定位定 时时 器。器。l8080年代初,年代初,IntelIntel80488048,80518051。 l9090年代,年代,ARM7TDMI ARM7TDMI 处理器,处理器,3232位位1.2 嵌入式处理器.1嵌入式系统分类嵌入式系统分类l按表现形式分:(硬件范畴)按表现形式分:(硬件范畴)n芯片级嵌入(含程序或算法
9、的处理器)芯片级嵌入(含程序或算法的处理器)n模块级嵌入(系统中的某个核心模块)模块级嵌入(系统中的某个核心模块)n系统级嵌入系统级嵌入SOC(System on a chip) l按实时性要求分按实时性要求分:(软件范畴):(软件范畴)l非实时系统(非实时系统(PDAPDA,Personal Digital Assistant 個人數字助理個人數字助理)l软实时系统(消费类产品)软实时系统(消费类产品)l硬实时系统(导引头等工业和军工系统)硬实时系统(导引头等工业和军工系统)1.2.2嵌入式处理器分类与现状n嵌入式微处理器嵌入式微处理器(Embedded Microprocessor Uni
10、t, EMPU) 嵌入式处理器目前主要有嵌入式处理器目前主要有Am186/88、386EX、SC-400、Power PC、68000、MIPS、ARM系列等。系列等。n嵌入式微控制器嵌入式微控制器(Microcontroller Unit, MCU)n嵌入式嵌入式DSP处理器处理器(Embedded Digital Signal Processor, EDSP) 嵌入式嵌入式DSP处理器比较有代表性的产品是处理器比较有代表性的产品是TexasInstruments的的TMS320系列和系列和Motorola的的DSP56000系列系列 1.2.2嵌入式处理器分类与现状n嵌入式片上系统嵌入式片
11、上系统(System On Chip) ARM微处理器的特点(1)低功耗、低成本、高性能(2)采用RISC体系结构(3)高效的指令系统(4)其它技术1.2.3 ARM处理器ARMARM的应用的应用lARM7ARM7、ARM9ARM9、ARM9EARM9E、ARM10ARM10、ARM11ARM11。l其中其中ARM7ARM7是低功耗的是低功耗的3232位核,最适合应用于对价位和功耗敏感位核,最适合应用于对价位和功耗敏感的产品,它又分为应用于实时环境的的产品,它又分为应用于实时环境的ARM7TDMIARM7TDMI、ARM7TDMI-SARM7TDMI-S,以及适用于开放平台的以及适用于开放平台
12、的ARM720TARM720T和适用于和适用于DSPDSP运算及支持运算及支持JavaJava的的ARM7EJARM7EJ等。等。lARM7ARM7主要在主要在PDAPDA、手持仪器仪表,手持仪器仪表,ARM9ARM9、ARM10ARM10主要在主要在NCNC、TFTTFT。1.3 嵌入式操作系统n基本概念 前后台系统 对基于芯片的开发来说,应用程序一般是一个无限的循环,可称为前后台系统或超循环系统。很多基于微处理器的产品采用前后台系统设计,例如微波炉、电话机、玩具等。在另外一些基于微处理器应用中,从省电的角度出发,平时微处理器处在停机状态,所有事都靠中断服务来完成。n基本概念 中断服务程序处
13、理异步事件,这部分可以看成前台行为,前台也叫中断级。时间相关性很强的关键操作一定是靠中断服务程序来保证的。 循环中调用相应的函数完成相应的操作,这部分可以看成后台行为,后台也可以叫做任务级。这种系统在处理的及时性上比实际可以做到的要差。 ISRISRISRISR后台前台中断服务程序前后台系统1.3 嵌入式操作系统n基本概念 操作系统操作系统是计算机中最基本的程序。操作系统负责计算机系统中全部软硬资源的分配与回收、控制与协调等并发的活动;操作系统提供用户接口,使用户获得良好的工作环境;操作系统为用户扩展新的系统功能提供软件平台。硬件硬件驱动操作系统用户程序1.3 嵌入式操作系统n基本概念 实时操
14、作系统(RTOS) 实时操作系统是一段在嵌入式系统启动后首先执行的背景程序,用户的应用程序是运行于RTOS之上的各个任务,RTOS根据各个任务的要求,进行资源(包括存储器、外设等)管理、消息管理、任务调度、异常处理等工作。在RTOS支持的系统中, 每个任务均有一个优先级,RTOS根据各个任务的优先级,动态地切换各个任务,保证对实时性的要求。使用嵌入式操作系统的优缺点n优点n使程序的设计和扩展变得容易,大大提高了开发效率。n充分发挥32位CPU多任务的潜力,实现多任务设计,能够充分利用硬件资源和实现资源共享。n实时性和健壮性能够得到更好的保证。n缺点n嵌入式操作系统增加ROM/RAM等额外开销,
15、510的CPU额外负荷。嵌入式操作系统分类n按收费模式划分n商用型nVxworks, Nucleux ,PlamOS, Symbian, WinCE, QNX, pSOS,VRTX,Lynx OS, Hopen, Delta OSn免费型nLinux, CLinux,C/OS-,eCos,uITRONn按实时性划分n硬实时nVxworksn软实时nWinCE,RTLinuxn无实时nEmbedded Linux nLinux是开放源码和免费使用的,遍布全球的众多Linux爱好者又是Linux开发的强大技术后盾。n嵌入式Linux(Embedded Linux)是指对Linux经过小型化裁剪后,
16、能够固化在容量只有几百K字节或几兆字节的存储器芯片或单片机中,应用于特定嵌入式场合的专用Linux操作系统。嵌入式Linux的开发和研究是目前操作系统领域的一个热点。主要有RTLinux和CLinuxnLinux的内核小、功能强大、API丰富,系统健壮、效率高,易于定制剪裁,在价格上极具竞争力。nLinux不仅支持x86 CPU,还可以支持其他数十种CPU芯片。n近几年Linux在嵌入式领域异军突起,过去的一年中有13%的用户已经开始使用嵌入式Linux系统进行开发工作;有52%的用户决定在未来24个月内开始使用Linux作为嵌入式操作系统的开发原型。 嵌入式Linux及应用Windows E
17、mbeddednWindows CE:一种针对小容量、移动式、智能化、32位、连接设备的模块化实时嵌入式操作系统(缩减的Win95)。n针对掌上设备、无线设备的动态应用程序和服务提供了一种功能丰富的操作系统平台,属于软实时操作系统,n由于其Windows背景,界面比较统一认可。可以使用大多数Windows开发工具(如VB,VC等),大多数Windows应用程序经过移植后就可以运行在WinCE平台上。n操作系统的基本内核需要至少200K的ROM。 VxWorksnVxWorks操作系统是美国WindRiver公司于1983年设计开发的一种嵌入式实时操作系统(RTOS),具有良好的持续发展能力、高
18、性能的内核以及友好的用户开发环境,在嵌入式实时操作系统领域牢牢占据着一席之地。nVxWorks所具有的显著特点是: 可靠性、实时性和可裁减性。 它支持多种处理器,如x86、i960、Sun Sparc、Motorola MC68xxx、MIPS 、POWER PC等等。n以其良好的可靠性和卓越的实时性被广泛地应用在通信、军事、航空航天等高精尖技术及实时性要求极高的领域中,如火星探测器(1997年7月4日登陆火星表面)。Symbian OSnSymbian由诺基亚、西门子、索尼爱立信等几家大型移动通讯设备商共同出资组建的一个合资公司,专门研发手机操作系统。Symbian操作系统的前身是EPOC。
19、n针对PDA及智能手机的,能够提供良好的软实时的操作系统n与之竞争的有Windows Mobile、PalmOS以及Linuxn主要版本nSeries 60/90/80/40nUIQAndroidnAndroid是一个开源的智能手机操作系统nAndroid操作系统的内核属于Linux内核的一个分支,具有典型的Linux周期和功能nAndroid的内核基于Linux,除了内核之外,则是中介层、数据库元和用C/C+编写的API以及应用程式框架nAndroid的应用程序通常以Java数据库元为基础编写iosniOSiOS是由苹果公司开发的操作系统niOS的系统架构分为四个层次:核心操作系统层(the
20、 Core OS layer),核心服务层(the Core Services layer),媒体层(the Media layer),可轻触层(the Cocoa Touch layer)。n系统操作占用大概240MB的内存空间QNXn 加拿大QNX公司的产品。n QNX是在X86体系上面开发出来的,这和别的RTOS不一样,别的好多RTOS都是从68K的CPU上面开发成熟,然后再移植到X86体系上面来的。n QNX是一个实时的、可扩充的操作系统,它部分遵循POSIX相关标准,由于QNX具有强大的图形界面功能,因此很适合作为机顶盒、手持设备(手掌电脑、手机)、GPS设备的实时操作系统使用。C/
21、OS及C/OS-IInC/OSMicro Controller O SnC/OS简介简介n美国人Jean Labrosse 1992年完成,已应用于数百种产品中。n应用面覆盖了诸多领域,如照相机、医疗器械、音响设备、发动机控制、高速公路电话系统、自动提款机等 n1998年C/OS-II,目前的版本C/OS -II V2.72n2000年,得到美国航空管理局(FAA)的认证,可以用于飞行器中n是一个源码公开、可移植、可裁减、占用资源少、抢先式的实时多任务操作系统。其绝大部分源码采用ANSI C写的,移植性好。高校教学可免费使用。n网站www.ucos-II.com()嵌入式系统与嵌入式系统与PC
22、PC之间的区别之间的区别l嵌入式系统一般是专用系统,而嵌入式系统一般是专用系统,而PC是通用计算平台是通用计算平台l嵌入式系统的资源比嵌入式系统的资源比PC少得多少得多l嵌入式系统软件故障带来的后果比嵌入式系统软件故障带来的后果比PC机大得多机大得多l嵌入式系统一般采用实时操作系统嵌入式系统一般采用实时操作系统l嵌入式系统大都有成本、功耗的要求嵌入式系统大都有成本、功耗的要求l嵌入式系统得到多种微处理体系的支持嵌入式系统得到多种微处理体系的支持l嵌入式系统需要专用的开发工具嵌入式系统需要专用的开发工具1.4 嵌入式系统开发过程1.4.1嵌入式系统的总体结构嵌入式嵌入式微处理器微处理器SDRAM
23、SDRAMROMROMI/OI/OA/DA/DD/AD/A人机交互接口人机交互接口通用接口通用接口实时操作系统(实时操作系统(RTOS)RTOS)图形用户图形用户接口接口BSP/HAL 硬件抽象层/板极支持包BSP/HAL 硬件抽象层/板极支持包任务管理任务管理文件系统文件系统应用程序应用程序嵌入式计算机系统嵌入式计算机系统硬件层硬件层软件层软件层中间层中间层功能层功能层典型嵌入式系统的基本组成典型嵌入式系统的基本组成MPU微处理器微处理器电源电源模块模块时钟时钟复位复位FlashRAMROMUSBLCDKeyboard外围电路外围电路Other外设外设 1.硬件层2. 中间层 硬件层与软件层
24、之间为中间层,也称为硬件层与软件层之间为中间层,也称为板级支持包板级支持包( (Board Support Package)Board Support Package)。 板级支持包是操作系统与目标应用硬件环境的中间接口,板级支持包是操作系统与目标应用硬件环境的中间接口,它是软件包中具有平台依赖性的那一部分。它是软件包中具有平台依赖性的那一部分。 板级支持包的主要功能包括两部分:板级支持包的主要功能包括两部分:在系统启动时,对硬件进行初始化在系统启动时,对硬件进行初始化 为驱动程序提供访问硬件的手段为驱动程序提供访问硬件的手段 BSP BSP为系统的移植提供了方便。为系统的移植提供了方便。3.
25、软件层 软件层主要是操作系统,有的还包括文件系统、GUI、网络系统等。操作系统是一个标准的内核,将CPU的中断、I/O、定时器等都封装起来,提供给一个标准的API函数接口。4.功能层 功能层是基于操作系统开发的应用程序组成,用来完成对被控对象的控制功能。 包括:控制部分、应用算法、用户界面、通信程序 1.4.2 嵌入式系统的开发特点n采用宿主机/目标机方式n为了保证稳定性和实时性,选用RTOS开发平台n生成代码需要固态化存储n软件代码具有高质量、高可靠性1.采用宿主机/目标机方式由于其本身不具备自主开发能力,即使设计完成由于其本身不具备自主开发能力,即使设计完成以后,用户通常也是不能对其中的程
26、序功能进行修改以后,用户通常也是不能对其中的程序功能进行修改,必须有一套,必须有一套开发工具开发工具和和环境环境才能进行开发。才能进行开发。宿主机宿主机( (Host)Host)是一台通用计算机,一般是是一台通用计算机,一般是PCPC机。机。它通过串口或网络连接与目标机通信。它通过串口或网络连接与目标机通信。 目标机目标机( (Target)Target) 可以是嵌入式应用软件的实际运可以是嵌入式应用软件的实际运行环境,也可以是能替代实际环境的仿真系统。行环境,也可以是能替代实际环境的仿真系统。2.为了保证稳定性和实时性,选用RTOS开发平台n对简单的嵌入式系统,应用程序可以没有操作系统直接在
27、芯片上运行;n对于那些复杂的嵌入式系统,为了合理地调度多任务、利用系统资源、系统函数以及和专家库函数接口,用户必须自行选配RTOS开发平台,这样才能保证程序执行的实时性、可靠性,并减少开发时间,保障软件质量。3.生成代码需要固态化存储n应用程序在目标环境下必须储存在非易失性存储器中,保证系统在掉电重启后仍能正常使用。所以,应用软件在开发完成以后,应生成固化版本,都固化在单片机本身或烧写到目标环境FLASH中运行。4.软件代码具有高质量、高可靠性n在大多数应用中,存储空间仍然是宝贵的,还存在实时性的要求。为此要求程序编写和编译工具的质量要高,以减少程序二进制代码长度、提高执行速度。n各行业的嵌入
28、式应用系统的工作环境可能非常恶劣,这就要求设计时考虑目标系统的工作环境,也要求对突发因素进行考虑,以提高其软件代码的可靠性。1.4.3 嵌入式系统的开发流程n设计流程需需求求分分析析体体系系结结构构设设计计执执行行装装置置设设计计硬硬件件设设计计软软件件设设计计系系统统集集成成系系统统测测试试产产品品1.4.3 嵌入式系统的开发流程n需求设计n确定任务、和设计目标n功能性 输入输出信号、操作方式n非功能性 性能、成本、功耗、体积、重量等n体系结构设计n软硬件功能划分、软硬件选型n软硬件设计n详细的软硬件设计n系统集成、系统测试1.4.4 嵌入式系统的调试嵌入式系统的调试有多种方法,可分为:n源程序模拟器(Simulator)方式n实时在线仿真系统(In-Circuit Emulator,ICE)方式n监控器方式n在线调
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026四川大西洋集团有限责任公司招聘2人笔试题库带答案详解
- 2026广州南沙人力资源发展有限公司招聘校医(外派项目)2人笔试题库【巩固】附答案详解
- 2026中国农业大学《农药学学报》编辑部招聘模拟试卷带答案详解(综合卷)
- 2026广东汕尾陆河县城镇公益性岗位招聘3人考前冲刺试卷【学生专用】附答案详解
- 2026四川安和精密电子电器股份有限公司招聘测试工程师等岗位的12人考前冲刺试卷及参考答案详解【轻巧夺冠】
- 2026年中宁县机关事业单位助理岗位见习备考题库(培优)附答案详解
- 2026自动驾驶高精地图采集技术与政策法规适配性分析报告
- 2026浙江丽水市松阳县疾病预防控制中心招聘见习大学生2人笔试题库及答案详解(历年真题)
- 2026中国新能源产业园区规划设计与区域经济带动效应报告
- 2026中国智能手表行业市场分析及发展趋势与投资前景预测研究报告
- SQE质量工程师岗位技能测试题
- 食管胃连接处恶性肿瘤的护理
- SA8000-2026社会责任管理体系全套管理手册及程序文件
- 金属冶炼安全员培训课程课件
- 教师风险管理办法
- 深度学习 课件 第2章 卷积神经网络
- 外墙保温装饰一体板施工方案
- 云南省公路工程试验检测费用指导价
- 签约仪式策划方案大型签约仪式流程方案
- 女包质检报告
- 中华文明的起源和发展
评论
0/150
提交评论