嵌入式PPT课件.ppt
课程介绍2023/1/42几个问题?n n为什么要开设这门课程?为什么要开设这门课程?n n主要内容?考核方式?主要内容?考核方式?2023/1/43自动控制领域:自动控制领域:数控机床、电网安全、电网设备监数控机床、电网安全、电网设备监测、发电站和电力传输、污水处理、测、发电站和电力传输、污水处理、自动化工厂、石油提炼和贮运设施、自动化工厂、石油提炼和贮运设施、建筑设备、计算机辅助制造、能源建筑设备、计算机辅助制造、能源控制、核电站、机器人控制、核电站、机器人传感器传感器-控制器控制器-执行单元执行单元家电领域家电领域机顶盒、机顶盒、PDAPDA、DVDDVD、MP3MP3播放器、数播放器、数码相机、数字电视、网络冰箱、网码相机、数字电视、网络冰箱、网络空调、家庭网关络空调、家庭网关交通领域交通领域汽车导航系统、不停车收费系统、汽车导航系统、不停车收费系统、移动电子警察、智能交通路口机、移动电子警察、智能交通路口机、汽车汽车TelematicsTelematics系统、各种汽车系统、各种汽车ECUECU医疗领域医疗领域心脏除颤器、心脏起搏器、病员监心脏除颤器、心脏起搏器、病员监视系统、视系统、X X光设备、理疗控制系统、光设备、理疗控制系统、电磁成像系统电磁成像系统通信网络领域通信网络领域手机、交换机、路由器、手机、交换机、路由器、HubHub等等后PC时代-丰富的嵌入式产品市场2023/1/44何为嵌入式产品?n n与与PCPC相对应相对应n n包含处理器、拥有计包含处理器、拥有计算能力、面向具体应算能力、面向具体应用、对功耗用、对功耗/体积体积/价价格等具有严格要求的格等具有严格要求的产品产品2023/1/45嵌入式课程设置2023/1/46课程内容(基本理论)n n嵌入式系统概述嵌入式系统概述n n嵌入式处理器简介嵌入式处理器简介n n嵌入式操作系统嵌入式操作系统n n嵌入式软件设计与开发嵌入式软件设计与开发 2023/1/47教学方式n n课堂教学课堂教学n n课后作业课后作业n n课内、课外实验课内、课外实验2023/1/48教材n嵌入式系统基础及应用,作者:孙嵌入式系统基础及应用,作者:孙媛,机械工业出版社,媛,机械工业出版社,200920092023/1/49参考资料(1)n n1 1)嵌入式系统导论嵌入式系统导论人民邮电出版社人民邮电出版社 作者:彭蔓蔓,作者:彭蔓蔓,2008.102008.10n n2 2)ARM9ARM9嵌入式技术及嵌入式技术及linuxlinux高级实践教高级实践教程程 北京航天航空大学出版社,作者北京航天航空大学出版社,作者:陈颐等,陈颐等,2005.6 2005.6 n n3 3)实验箱配套电子手册、资料)实验箱配套电子手册、资料2023/1/410参考资料(2)n nArmArm公司电子手册公司电子手册n nARM Architecture Reference ManualARM Architecture Reference ManualARM Architecture Reference ManualARM Architecture Reference Manualn nARM Program TecgniquesARM Program TecgniquesARM Program TecgniquesARM Program Tecgniquesn nARM SDTARM SDTARM SDTARM SDT随带各种手册随带各种手册随带各种手册随带各种手册n nARM ADSARM ADSARM ADSARM ADS随带各种手册随带各种手册随带各种手册随带各种手册n nhttp:/ n课堂给出的各种电子资料以及网址课堂给出的各种电子资料以及网址第一章嵌入式系统概述Embedded Systems2023/1/412嵌入式系统概述1.1.1.1.嵌入式系统的定义嵌入式系统的定义2.2.2.2.嵌入式系统的特点嵌入式系统的特点3.3.3.3.嵌入式系统的发展历史嵌入式系统的发展历史4.4.4.4.嵌入式系统的组成嵌入式系统的组成5.5.5.5.嵌入式系统的设计过程嵌入式系统的设计过程6.6.6.6.嵌入式技术的发展趋势嵌入式技术的发展趋势Chap.1 Chap.1 2023/1/413嵌入式系统的定义1.1.定定义义2023/1/414嵌入式系统定义n n嵌入式系统是以应用为中心,以计算机技嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应术为基础,并且软硬件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。耗有严格要求的专用计算机系统。1.1.定定义义2023/1/415嵌入式系统的特点n n嵌入式系统是嵌入式到对象体系中的专用计算机嵌入式系统是嵌入式到对象体系中的专用计算机嵌入式系统是嵌入式到对象体系中的专用计算机嵌入式系统是嵌入式到对象体系中的专用计算机系统。系统。系统。系统。n n嵌入性:嵌入性:嵌入性:嵌入性:由于是嵌入到对象系统中,必须满足对由于是嵌入到对象系统中,必须满足对由于是嵌入到对象系统中,必须满足对由于是嵌入到对象系统中,必须满足对象系统的环境要求,如物理环境(小型)、电气象系统的环境要求,如物理环境(小型)、电气象系统的环境要求,如物理环境(小型)、电气象系统的环境要求,如物理环境(小型)、电气环境(可靠)、成本(价廉)、功耗(低功耗设环境(可靠)、成本(价廉)、功耗(低功耗设环境(可靠)、成本(价廉)、功耗(低功耗设环境(可靠)、成本(价廉)、功耗(低功耗设计)等要求。计)等要求。计)等要求。计)等要求。n n专用性:专用性:专用性:专用性:嵌入式系统特别强调嵌入式系统特别强调嵌入式系统特别强调嵌入式系统特别强调“量身定做量身定做量身定做量身定做”的特的特的特的特性,通过对软、硬件的裁剪,使其满足对象要求性,通过对软、硬件的裁剪,使其满足对象要求性,通过对软、硬件的裁剪,使其满足对象要求性,通过对软、硬件的裁剪,使其满足对象要求的最小软、硬件配置,满足某一种特殊用途的需的最小软、硬件配置,满足某一种特殊用途的需的最小软、硬件配置,满足某一种特殊用途的需的最小软、硬件配置,满足某一种特殊用途的需求,针对这项用途开发出与其他产品截然不同的求,针对这项用途开发出与其他产品截然不同的求,针对这项用途开发出与其他产品截然不同的求,针对这项用途开发出与其他产品截然不同的系统。系统。系统。系统。n n计算机系统:计算机系统:计算机系统:计算机系统:嵌入式系统必须是能满足对象系统嵌入式系统必须是能满足对象系统嵌入式系统必须是能满足对象系统嵌入式系统必须是能满足对象系统控制要求的计算机系统。控制要求的计算机系统。控制要求的计算机系统。控制要求的计算机系统。2.2.特特点点2023/1/416嵌入式系统的诞生n n现代计算机技术的两大分支现代计算机技术的两大分支现代计算机技术的两大分支现代计算机技术的两大分支n n通用计算机系统通用计算机系统通用计算机系统通用计算机系统n n嵌入式计算机系统嵌入式计算机系统嵌入式计算机系统嵌入式计算机系统n n1946194619461946年诞生了电子数字计算机年诞生了电子数字计算机年诞生了电子数字计算机年诞生了电子数字计算机n n供养在特殊机房中、实现数值计算的大型昂贵设备供养在特殊机房中、实现数值计算的大型昂贵设备供养在特殊机房中、实现数值计算的大型昂贵设备供养在特殊机房中、实现数值计算的大型昂贵设备 n n1970197019701970s,s,s,s,第一片微处理器第一片微处理器第一片微处理器第一片微处理器(Intel 4004)(Intel 4004)(Intel 4004)(Intel 4004)诞生诞生诞生诞生n n微处理器为核心的微型计算机以其小型、价廉和高可微处理器为核心的微型计算机以其小型、价廉和高可微处理器为核心的微型计算机以其小型、价廉和高可微处理器为核心的微型计算机以其小型、价廉和高可靠性特点,迅速走出了机房靠性特点,迅速走出了机房靠性特点,迅速走出了机房靠性特点,迅速走出了机房,表现出了高度的智能化水表现出了高度的智能化水表现出了高度的智能化水表现出了高度的智能化水平平平平 n n控制专业人士将微型机嵌入到一个对象体系中控制专业人士将微型机嵌入到一个对象体系中控制专业人士将微型机嵌入到一个对象体系中控制专业人士将微型机嵌入到一个对象体系中,并配置并配置并配置并配置各种外围接口电路各种外围接口电路各种外围接口电路各种外围接口电路,安装到大型舰船中构成自动驾驶仪安装到大型舰船中构成自动驾驶仪安装到大型舰船中构成自动驾驶仪安装到大型舰船中构成自动驾驶仪或轮机状态监测系统或轮机状态监测系统或轮机状态监测系统或轮机状态监测系统 3.3.发展历史发展历史不同的技术发展要求和发展方向不同的技术发展要求和发展方向2023/1/417不同的技术发展要求与发展方向n n通用计算机系统通用计算机系统n n技术要求是高速、海量的数值计算;技术要求是高速、海量的数值计算;技术要求是高速、海量的数值计算;技术要求是高速、海量的数值计算;n n技术发展方向是总线速度的无限提升,存储容技术发展方向是总线速度的无限提升,存储容技术发展方向是总线速度的无限提升,存储容技术发展方向是总线速度的无限提升,存储容量的无限扩大。量的无限扩大。量的无限扩大。量的无限扩大。n n嵌入式计算机系统的嵌入式计算机系统的n n技术要求则是对象的智能化控制能力;技术要求则是对象的智能化控制能力;技术要求则是对象的智能化控制能力;技术要求则是对象的智能化控制能力;n n技术发展方向是与对象系统密切相关的嵌入性技术发展方向是与对象系统密切相关的嵌入性技术发展方向是与对象系统密切相关的嵌入性技术发展方向是与对象系统密切相关的嵌入性能、控制能力与控制的可靠性。能、控制能力与控制的可靠性。能、控制能力与控制的可靠性。能、控制能力与控制的可靠性。3.3.发展历史发展历史2023/1/418两代分支的形成n n早期,人们勉为其难地将通用计算机系统早期,人们勉为其难地将通用计算机系统进行改装,在大型设备中实现嵌入式应用。进行改装,在大型设备中实现嵌入式应用。n n众多的对象系统(如家用电器、仪器仪表、众多的对象系统(如家用电器、仪器仪表、工控单元工控单元)无法嵌入通用计算机系统)无法嵌入通用计算机系统n n必须独立地发展通用计算机系统与嵌入式必须独立地发展通用计算机系统与嵌入式计算机系统计算机系统3.3.发展历史发展历史2023/1/419嵌入式系统发展历程n n无操作系统阶段无操作系统阶段n n简单操作系统阶段简单操作系统阶段n n实时操作系统阶段实时操作系统阶段n n面向面向InternetInternet阶段阶段3.3.发展历史发展历史2023/1/420嵌入式系统实例分析4 4、组成、组成实例分析实例分析2023/1/421典型例子 PDA4 4、组成、组成实例分析实例分析2023/1/422硬件组成4.4.组成组成嵌入式处理器嵌入式处理器存储器存储器输入设备输入设备输出设备输出设备外围接口外围接口软件软件硬件单元硬件单元中央处理器是嵌入式系统的核中央处理器是嵌入式系统的核心,它负责控制整个系统的执心,它负责控制整个系统的执行。行。括微处理器、微控制器、括微处理器、微控制器、DSPDSP处理器、专用处理器、处理器、专用处理器、SOC(System on Chip)SOC(System on Chip)存储器按存储信息的功能存储器按存储信息的功能可分为只读存储器可分为只读存储器ROMROM(Read Only Read Only MemoryMemory)和随机存储器)和随机存储器RAMRAM(Random Access Random Access MemoryMemory)嵌入式系统中的输入形式一嵌入式系统中的输入形式一般包括触摸屏、语音输入、般包括触摸屏、语音输入、按键和虚拟键盘按键和虚拟键盘 输出设备则主要有输出设备则主要有LCD LCD 显示和语音输出显示和语音输出 外围接口主要有外围接口主要有GPIOGPIO、串口、串口、I2CI2C总线、总线、USBUSB总总线和线和IEEE 1394IEEE 1394总线等等总线等等 2023/1/423嵌入式处理器选择n nARMARMn nPowerPCPowerPCn nMIPSMIPSn nXscaleXscalen nDSPDSPn nX86X864.4.组成组成2023/1/424嵌入式处理器使用调查nWhat CPUs were used in your embedded projects What CPUs were used in your embedded projects during the past two years?during the past two years?Which will be used during the next two?Which will be used during the next two?4.4.组成组成2023/1/425多处理器-TI OMAPn nDSPDSP加加RISCRISC的多处理器,针对通讯、多媒体的多处理器,针对通讯、多媒体C55x DSPOMAP 5910/161x/171x/24xx:ARM9MMUMemory ctrlMPUinterfaceSystemDMAcontrolbridgeI/O4.4.组成组成2023/1/426软件组成软件组成4.4.组成组成有时也叫板级支持包,有时也叫板级支持包,是一个介于硬件与软是一个介于硬件与软件之间的中间层次。件之间的中间层次。硬件抽象层通过特定硬件抽象层通过特定的上层接口与操作系的上层接口与操作系统进行交互,向操作统进行交互,向操作系统提供底层的硬件系统提供底层的硬件信息,并根据操作系信息,并根据操作系统的要求完成对硬件统的要求完成对硬件的直接操作的直接操作 Hardware Abstraction Layer Hardware Abstraction Layer:BSP&Device DriverBSP&Device DriverSCSISCSIDriverDriverFlashFlashDriverDriverMMUMMUDriverDriverCacheCacheDriverDriverSerialSerialDriverDriverEthernetEthernetDriverDriverDeviceDeviceDriversDrivers支持嵌入式系统应用的操作系统软支持嵌入式系统应用的操作系统软件件,它是嵌入式系统(包括硬、软件它是嵌入式系统(包括硬、软件系统)极为重要的组成部分,通常系统)极为重要的组成部分,通常包括与硬件相关的底层驱动软件、包括与硬件相关的底层驱动软件、系统内核、设备驱动接口、通信协系统内核、设备驱动接口、通信协议、图形界面、标准化浏览器议、图形界面、标准化浏览器BrowserBrowser等等 Hardware Independent SoftwareHardware Independent SoftwareTCP/IP StackTCP/IP StackI/O SystemI/O SystemRTOS librariesRTOS librariesRTOS KernelRTOS KernelFile SystemFile SystemBoot LoaderBoot Loader中间件位于操作系统和应用软件之间,屏中间件位于操作系统和应用软件之间,屏蔽了各种操作系统提供不同应用程序接口蔽了各种操作系统提供不同应用程序接口的事实,向应用程序提供统一的接口,从的事实,向应用程序提供统一的接口,从而便于用户开发应用程序,同时也使应用而便于用户开发应用程序,同时也使应用程序具有跨平台的特性。程序具有跨平台的特性。嵌入式应用程序运行于操作系统之上,利用操作系统提供的机制嵌入式应用程序运行于操作系统之上,利用操作系统提供的机制完成特定功能的嵌入式应用,不同的系统需要设计不同的嵌入式完成特定功能的嵌入式应用,不同的系统需要设计不同的嵌入式应用程序。它是整个系统功能的体现,系统的能力总是通过应用应用程序。它是整个系统功能的体现,系统的能力总是通过应用程序表现出来。一个嵌入式系统可简单的没有支撑软件,甚至没程序表现出来。一个嵌入式系统可简单的没有支撑软件,甚至没有操作系统,但却不能没有应用软件,否则它就不能成为一个系有操作系统,但却不能没有应用软件,否则它就不能成为一个系统。统。2023/1/427嵌入式系统组成(软件)4.4.组成组成2023/1/428引导程序:bootloader4.4.组成组成2023/1/429内核(kernel)以嵌入式Linux为例2023/1/430文件系统(rootfs)n nrootrootrootroot根文件系统唯一性根文件系统唯一性根文件系统唯一性根文件系统唯一性n n包括启动时第一个运行包括启动时第一个运行包括启动时第一个运行包括启动时第一个运行/sbin/init/sbin/init/sbin/init/sbin/init服务服务服务服务n n内核挂载内核挂载内核挂载内核挂载rootrootrootroot文件系统,运行所有的应用和后台文件系统,运行所有的应用和后台文件系统,运行所有的应用和后台文件系统,运行所有的应用和后台服务,例如服务,例如服务,例如服务,例如:sh,telnet,ftp,web server:sh,telnet,ftp,web server:sh,telnet,ftp,web server:sh,telnet,ftp,web server 等,等,等,等,其他有共享库、数据、设备节点等其他有共享库、数据、设备节点等其他有共享库、数据、设备节点等其他有共享库、数据、设备节点等n n包含:可执行程序、数据文件、共享库等包含:可执行程序、数据文件、共享库等包含:可执行程序、数据文件、共享库等包含:可执行程序、数据文件、共享库等2023/1/431嵌入式操作系统选择n nLinuxLinuxLinuxLinuxn nuC/OS uC/OS uC/OS uC/OS n nWindows CE Windows CE Windows CE Windows CE n nVxWorks VxWorks VxWorks VxWorks n nPalm OS Palm OS Palm OS Palm OS n nQNX QNX QNX QNX n nSymbianSymbianSymbianSymbian4.4.组成组成2023/1/432嵌入式操作系统使用调查(1)Which OSes have been in your embedded systems Which OSes have been in your embedded systems during the past 2 years?during the past 2 years?Which will be used during the next two?Which will be used during the next two?4.4.组成组成THANK YOUSUCCESS2023/1/433可编辑2023/1/434嵌入式操作系统使用调查(2)Actual and projected Linux use,over the last five yearsActual and projected Linux use,over the last five years 4.4.组成组成2023/1/435嵌入式系统与PC硬件4.4.组成组成设备名称设备名称设备名称设备名称嵌入式系统嵌入式系统嵌入式系统嵌入式系统PCPC机机机机CPUCPU嵌入式处理器(嵌入式处理器(嵌入式处理器(嵌入式处理器(ARMARM,MIPSMIPS)CPUCPU(Intel PentiumIntel Pentium、AMD AthlonAMD Athlon)内存内存内存内存SDRAMSDRAM芯片芯片芯片芯片SDRAMSDRAM,DDRDDR内存条内存条内存条内存条存储设备存储设备存储设备存储设备FlashFlash芯片芯片芯片芯片硬盘硬盘硬盘硬盘输入设备输入设备输入设备输入设备 按键、触摸屏按键、触摸屏按键、触摸屏按键、触摸屏鼠标、键盘鼠标、键盘鼠标、键盘鼠标、键盘 输出设备输出设备输出设备输出设备LCDLCD显示器显示器显示器显示器声音设备声音设备声音设备声音设备音频芯片音频芯片音频芯片音频芯片声卡声卡声卡声卡接口接口接口接口MAX232MAX232等芯片等芯片等芯片等芯片主板集成主板集成主板集成主板集成其他设备其他设备其他设备其他设备USBUSB芯片、网卡芯片芯片、网卡芯片芯片、网卡芯片芯片、网卡芯片主板集成或外接卡主板集成或外接卡主板集成或外接卡主板集成或外接卡2023/1/436嵌入式系统与PC软件4.4.组成组成设备名称设备名称设备名称设备名称嵌入式系统嵌入式系统嵌入式系统嵌入式系统PCPC机机机机引导代码引导代码引导代码引导代码 Bootloader Bootloader引导,针对不同电引导,针对不同电引导,针对不同电引导,针对不同电路板进行移植路板进行移植路板进行移植路板进行移植主板的主板的主板的主板的BIOSBIOS引导,无须改动引导,无须改动引导,无须改动引导,无须改动操作系统操作系统操作系统操作系统 WinCE WinCE、VxWorksVxWorks、LinuxLinux等,等,等,等,需要移植需要移植需要移植需要移植WindowsWindows、LinuxLinux等,不需要移等,不需要移等,不需要移等,不需要移植植植植驱动程序驱动程序驱动程序驱动程序 每个设备驱动都必须针对电路每个设备驱动都必须针对电路每个设备驱动都必须针对电路每个设备驱动都必须针对电路板进行重新开发或移植,一般板进行重新开发或移植,一般板进行重新开发或移植,一般板进行重新开发或移植,一般不能直接下载使用不能直接下载使用不能直接下载使用不能直接下载使用操作系统含有大多数驱动程序,操作系统含有大多数驱动程序,操作系统含有大多数驱动程序,操作系统含有大多数驱动程序,或从网上下载直接使用或从网上下载直接使用或从网上下载直接使用或从网上下载直接使用协议栈协议栈协议栈协议栈 需要移植需要移植需要移植需要移植操作系统包括,或第三方提供操作系统包括,或第三方提供操作系统包括,或第三方提供操作系统包括,或第三方提供开发环境开发环境开发环境开发环境 借助服务器进行交叉编译借助服务器进行交叉编译借助服务器进行交叉编译借助服务器进行交叉编译在本机就可开发调试在本机就可开发调试在本机就可开发调试在本机就可开发调试仿真器仿真器仿真器仿真器 需要需要需要需要不需要不需要不需要不需要2023/1/437嵌入式系统设计方法n n由上而下与由下而上由上而下与由下而上由上而下与由下而上由上而下与由下而上 n n由上而下(由上而下(由上而下(由上而下(Top down ApproachTop down ApproachTop down ApproachTop down Approach)是一个正统的设计方案,)是一个正统的设计方案,)是一个正统的设计方案,)是一个正统的设计方案,也就是说,所有的设计皆是遵循系统工程的流程来进行,确也就是说,所有的设计皆是遵循系统工程的流程来进行,确也就是说,所有的设计皆是遵循系统工程的流程来进行,确也就是说,所有的设计皆是遵循系统工程的流程来进行,确定需求、制定系统规格、设计、实现、测试都是一步一步、定需求、制定系统规格、设计、实现、测试都是一步一步、定需求、制定系统规格、设计、实现、测试都是一步一步、定需求、制定系统规格、设计、实现、测试都是一步一步、按部就班地进行。按部就班地进行。按部就班地进行。按部就班地进行。n n相对应的是由下而上(相对应的是由下而上(相对应的是由下而上(相对应的是由下而上(Button up ApproachButton up ApproachButton up ApproachButton up Approach)。由下而上的)。由下而上的)。由下而上的)。由下而上的意思是:一个系统是由已经有的基础(或组件)为起点,开意思是:一个系统是由已经有的基础(或组件)为起点,开意思是:一个系统是由已经有的基础(或组件)为起点,开意思是:一个系统是由已经有的基础(或组件)为起点,开始往上延伸,最后将系统完成。始往上延伸,最后将系统完成。始往上延伸,最后将系统完成。始往上延伸,最后将系统完成。n n其实大部分的项目都是这两种方式的混合体,很少有整个项其实大部分的项目都是这两种方式的混合体,很少有整个项其实大部分的项目都是这两种方式的混合体,很少有整个项其实大部分的项目都是这两种方式的混合体,很少有整个项目都是从上而下的,同样也很少有整个项目都是由下而上的。目都是从上而下的,同样也很少有整个项目都是由下而上的。目都是从上而下的,同样也很少有整个项目都是由下而上的。目都是从上而下的,同样也很少有整个项目都是由下而上的。5.5.设计设计2023/1/438嵌入式系统设计方法n nUMLUMLUMLUML系统建模系统建模系统建模系统建模 n n统一建模语言统一建模语言统一建模语言统一建模语言UMLUMLUMLUML(Unified Modeling LanguageUnified Modeling LanguageUnified Modeling LanguageUnified Modeling Language)采用)采用)采用)采用一种简单而直观的图形化方式描述系统设计中的各个问一种简单而直观的图形化方式描述系统设计中的各个问一种简单而直观的图形化方式描述系统设计中的各个问一种简单而直观的图形化方式描述系统设计中的各个问题和细节,不仅可以使系统分析设计实现标准化,而且题和细节,不仅可以使系统分析设计实现标准化,而且题和细节,不仅可以使系统分析设计实现标准化,而且题和细节,不仅可以使系统分析设计实现标准化,而且完全可以实现系统分析、设计和制作、测试分别由不同完全可以实现系统分析、设计和制作、测试分别由不同完全可以实现系统分析、设计和制作、测试分别由不同完全可以实现系统分析、设计和制作、测试分别由不同的项目成员在统一、一贯的方式下完成,也使得系统分的项目成员在统一、一贯的方式下完成,也使得系统分的项目成员在统一、一贯的方式下完成,也使得系统分的项目成员在统一、一贯的方式下完成,也使得系统分析和设计模型在相似系统中重用成为可能。目前析和设计模型在相似系统中重用成为可能。目前析和设计模型在相似系统中重用成为可能。目前析和设计模型在相似系统中重用成为可能。目前UMLUMLUMLUML已已已已经广泛应用于嵌入式系统建模中,它采用规范化的验证、经广泛应用于嵌入式系统建模中,它采用规范化的验证、经广泛应用于嵌入式系统建模中,它采用规范化的验证、经广泛应用于嵌入式系统建模中,它采用规范化的验证、综合系统以及自动生成系统为嵌入式系统提供了有保障综合系统以及自动生成系统为嵌入式系统提供了有保障综合系统以及自动生成系统为嵌入式系统提供了有保障综合系统以及自动生成系统为嵌入式系统提供了有保障的可靠性和安全性的设计方法。的可靠性和安全性的设计方法。的可靠性和安全性的设计方法。的可靠性和安全性的设计方法。5.5.设计设计2023/1/439嵌入式系统设计方法n n面向对象设计面向对象设计面向对象设计面向对象设计 n n面向对象的分析(面向对象的分析(面向对象的分析(面向对象的分析(Object-Oriented AnalysisObject-Oriented AnalysisObject-Oriented AnalysisObject-Oriented Analysis)、面向对象的设计)、面向对象的设计)、面向对象的设计)、面向对象的设计(Object-Oriented DesignObject-Oriented DesignObject-Oriented DesignObject-Oriented Design)和面向对象的编程()和面向对象的编程()和面向对象的编程()和面向对象的编程(Object-Object-Object-Object-Oriented ProgrammingOriented ProgrammingOriented ProgrammingOriented Programming)n n面向对象的分析是所有软件分析活动的第一步,仔细的划分系统的面向对象的分析是所有软件分析活动的第一步,仔细的划分系统的面向对象的分析是所有软件分析活动的第一步,仔细的划分系统的面向对象的分析是所有软件分析活动的第一步,仔细的划分系统的各个部分,然后将各个部分作为一个对象进行功能或行为的分析和各个部分,然后将各个部分作为一个对象进行功能或行为的分析和各个部分,然后将各个部分作为一个对象进行功能或行为的分析和各个部分,然后将各个部分作为一个对象进行功能或行为的分析和定义。定义。定义。定义。n n面向对象的设计是将面向对象分析所建立的分析模型转变为软件构面向对象的设计是将面向对象分析所建立的分析模型转变为软件构面向对象的设计是将面向对象分析所建立的分析模型转变为软件构面向对象的设计是将面向对象分析所建立的分析模型转变为软件构造蓝图的设计模型,即在预定义的基本类框架上构建一个系统,在造蓝图的设计模型,即在预定义的基本类框架上构建一个系统,在造蓝图的设计模型,即在预定义的基本类框架上构建一个系统,在造蓝图的设计模型,即在预定义的基本类框架上构建一个系统,在这个阶段中,只要进一步确定各个对象的功能以及各个对象之间的这个阶段中,只要进一步确定各个对象的功能以及各个对象之间的这个阶段中,只要进一步确定各个对象的功能以及各个对象之间的这个阶段中,只要进一步确定各个对象的功能以及各个对象之间的关系即可。关系即可。关系即可。关系即可。n n面向对象的编程是指使用面向对象的设计语言(如面向对象的编程是指使用面向对象的设计语言(如面向对象的编程是指使用面向对象的设计语言(如面向对象的编程是指使用面向对象的设计语言(如JAVAJAVAJAVAJAVA、C+C+C+C+、AdaAdaAdaAda等)把面向对象设计的系统模型程序化,亦即是完成具体实现。编等)把面向对象设计的系统模型程序化,亦即是完成具体实现。编等)把面向对象设计的系统模型程序化,亦即是完成具体实现。编等)把面向对象设计的系统模型程序化,亦即是完成具体实现。编码是软件开发过程中最基本、最底层的需求,它强调的是一种分析码是软件开发过程中最基本、最底层的需求,它强调的是一种分析码是软件开发过程中最基本、最底层的需求,它强调的是一种分析码是软件开发过程中最基本、最底层的需求,它强调的是一种分析及解决问题的思路,而不在乎所使用的语言工具。及解决问题的思路,而不在乎所使用的语言工具。及解决问题的思路,而不在乎所使用的语言工具。及解决问题的思路,而不在乎所使用的语言工具。5.5.设计设计2023/1/440嵌入式系统开发流程n n需求分析需求分析需求分析需求分析n n功能、非功能部分功能、非功能部分功能、非功能部分功能、非功能部分n n总体功能、输入、输出、性能需求、功耗总体功能、输入、输出、性能需求、功耗总体功能、输入、输出、性能需求、功耗总体功能、输入、输出、性能需求、功耗n n名称、目的、成本要求、物理尺寸名称、目的、成本要求、物理尺寸名称、目的、成本要求、物理尺寸名称、目的、成本要求、物理尺寸n n规格说明(做什么)规格说明(做什么)规格说明(做什么)规格说明(做什么)n n需求细化需求细化需求细化需求细化n n详细的规格说明详细的规格说明详细的规格说明详细的规格说明n n设计阶段设计阶段设计阶段设计阶段n n开发实现开发实现开发实现开发实现5.5.设计设计2023/1/441系统开发基础流程(1)n n第一步:功能与需求分析第一步:功能与需求分析第一步:功能与需求分析第一步:功能与需求分析n n系统功能部分系统功能部分系统功能部分系统功能部分n n这个系统可能会有哪些输入;输入量是什么;以什这个系统可能会有哪些输入;输入量是什么;以什这个系统可能会有哪些输入;输入量是什么;以什这个系统可能会有哪些输入;输入量是什么;以什么方式进行输入;是否需要进行前期处理;物理量么方式进行输入;是否需要进行前期处理;物理量么方式进行输入;是否需要进行前期处理;物理量么方式进行输入;是否需要进行前期处理;物理量的范围是否确定;有没有特别的需求,比如采样频的范围是否确定;有没有特别的需求,比如采样频的范围是否确定;有没有特别的需求,比如采样频的范围是否确定;有没有特别的需求,比如采样频率、信号放大等。率、信号放大等。率、信号放大等。率、信号放大等。n n系统需要哪些输出;是否需要进行类比数字转换;系统需要哪些输出;是否需要进行类比数字转换;系统需要哪些输出;是否需要进行类比数字转换;系统需要哪些输出;是否需要进行类比数字转换;可能需要驱动哪些外设;输出范围是什么;有没有可能需要驱动哪些外设;输出范围是什么;有没有可能需要驱动哪些外设;输出范围是什么;有没有可能需要驱动哪些外设;输出范围是什么;有没有特殊需求,比如输出频率、输出信号种类等。特殊需求,比如输出频率、输出信号种类等。特殊需求,比如输出频率、输出信号种类等。特殊需求,比如输出频率、输出信号种类等。n n通过输入端取得的数据是否需要经过处理;数据需通过输入端取得的数据是否需要经过处理;数据需通过输入端取得的数据是否需要经过处理;数据需通过输入端取得的数据是否需要经过处理;数据需不需要进行存储;要不要进行特殊的数据处理后,不需要进行存储;要不要进行特殊的数据处理后,不需要进行存储;要不要进行特殊的数据处理后,不需要进行存储;要不要进行特殊的数据处理后,再送到输出端等。再送到输出端等。再送到输出端等。再送到输出端等。5.5.设计设计2023/1/442n n系统非功能部分系统非功能部分系统非功能部分系统非功能部分n n嵌入式系统可能被应用在各种环境中。温度、湿度、嵌入式系统可能被应用在各种环境中。温度、湿度、嵌入式系统可能被应用在各种环境中。温度、湿度、嵌入式系统可能被应用在各种环境中。温度、湿度、震动、电磁干扰、电源供应、工业安全标准以及是震动、电磁干扰、电源供应、工业安全标准以及是震动、电磁干扰、电源供应、工业安全标准以及是震动、电磁干扰、电源供应、工业安全标准以及是否要在特定的时间内完成某项任务等都是嵌入式系否要在特定的时间内完成某项任务等都是嵌入式系否要在特定的时间内完成某项任务等都是嵌入式系否要在特定的时间内完成某项任务等都是嵌入式系统可能会遇到的工业环境限制。由于这些和系统所统可能会遇到的工业环境限制。由于这些和系统所统可能会遇到的工业环境限制。由于这些和系统所统可能会遇到的工业环境限制。由于这些和系统所处的环境有关,所以要和专业人员做进一步的确认。处的环境有关,所以要和专业人员做进一步的确认。处的环境有关,所以要和专业人员做进一步的确认。处的环境有关,所以要和专业人员做进一步的确认。n n价格的限制会影响到系统的设计与组成组件。在价价格的限制会影响到系统的设计与组成组件。在价价格的限制会影响到系统的设计与组成组件。在价价格的限制会影响到系统的设计与组成组件。在价格成本的限制下,开发团队需要寻找适当的方案来格成本的限制下,开发团队需要寻找适当的方案来格成本的限制下,开发团队需要寻找适当的方案来格成本的限制下,开发团队需要寻找适当的方案来应付。应付。应付。应付。系统开发基础流程(1)5.5.设计设计2023/1/443系统开发基础流程(2)n n第二步:设计阶段第二步:设计阶段第二步:设计阶段第二步:设计阶段n n系统架构设计系统架构设计系统架构设计系统架构设计