嵌入式系统(第6章 嵌入式系统设计技术)_图文

第6章 嵌入式系统设计技术 章
COMPUTER SCIENCE AND TECHNOLOGY

? ? ? ? ?

嵌入式系统设计的特点 嵌入式系统的组成 嵌入式系统的设计流程 统一建模语言UML 统一建模语言UML 设计示例: 设计示例: 车载GPS GPS终端系统的设计 车载GPS终端系统的设计

Zhaohw@jlu.edu.cn

嵌入式系统设计的特点
COMPUTER SCIENCE AND TECHNOLOGY

? 嵌入式系统通常是面向特定应用的系统; 嵌入式系统通常是面向特定应用的系统; 面向特定应用的系统 ? 嵌入式系统的硬件和软件都必须高效地设计,量 嵌入式系统的硬件和软件都必须高效地设计, 体裁衣、去除冗余; 体裁衣、去除冗余; ? 嵌入式系统设计需要交叉开发环境; 嵌入式系统设计需要交叉开发环境 交叉开发环境; ? 嵌入式系统的程序需要固化; 嵌入式系统的程序需要固化 固化; ? 嵌入式系统的软件开发难度较大 ; ? 嵌入式系统还需要提供强大的硬件开发工具和软 件包的支持,需要设计者从速度、 件包的支持,需要设计者从速度、功能和成本综 合考虑。对稳定性、可靠性、功耗、抗干扰性、 合考虑。对稳定性、可靠性、功耗、抗干扰性、 重量体积等方面的性能要求都比通用系统的要求 更为严格和苛刻。 更为严格和苛刻。
Zhaohw@jlu.edu.cn

“宿主机/目标机”方式 宿主机/目标机” 宿主机
COMPUTER SCIENCE AND TECHNOLOGY
? 嵌入式系统的开发通常采用“宿主机/目标机”方式。 嵌入式系统的开发通常采用“宿主机/目标机”方式。 ? 宿主机(Host):一台通用的计算机,一般是PC机。它通 宿主机(Host):一台通用的计算机,一般是PC机 ):一台通用的计算机 PC 过串口或网络连接与目标机进行通信。 过串口或网络连接与目标机进行通信。 ? 目标机(Target):常用在嵌入式系统的开发过程期间。 目标机(Target):常用在嵌入式系统的开发过程期间。 ):常用在嵌入式系统的开发过程期间 目标机可以是嵌入式系统的实际运行环境, 目标机可以是嵌入式系统的实际运行环境,也可以是能替 代实际环境的仿真系统。 代实际环境的仿真系统。

Zhaohw@jlu.edu.cn

嵌入式系统的组成
COMPUTER SCIENCE AND TECHNOLOGY
执行装置 被控对象(如 微型电机)

功能层 文件系统 软件层

应用程序 图形用户接口 (GUI) 任务管理

实时操作系统(RTOS) 中间层 HAL/BSP硬件抽象层/板级支持包 通用接口 硬件层 ROM SDRAM 人机交互接口
Zhaohw@jlu.edu.cn

嵌入式 计算机 系统

D/A 嵌入式微处理器 (MCU) I/O A/D

硬件层
COMPUTER SCIENCE AND TECHNOLOGY
? 硬件层:由嵌入式微处理器、存储器系统、通用设备接口 硬件层:由嵌入式微处理器、存储器系统、 I/O接口 接口( D/A、I/O等 组成。 和I/O接口(A/D 、D/A、I/O等)组成。 ? 在一片嵌入式微处理器基础上增加电源电路、时钟电路和 在一片嵌入式微处理器基础上增加电源电路、 存储器电路( SDRAM等),就构成了一个嵌入式核心 存储器电路(ROM 和SDRAM等),就构成了一个嵌入式核心 控制模块。其中操作系统和应用程序都可以固化在ROM ROM中 控制模块。其中操作系统和应用程序都可以固化在ROM中。

Zhaohw@jlu.edu.cn

中间层
COMPUTER SCIENCE AND TECHNOLOGY

? 中间层:也称为硬件抽象层(Hardware Abstract 中间层:也称为硬件抽象层( Layer,HAL)或板极支持包( Layer,HAL)或板极支持包(Board Support Package,BSP), ),它把系统软件与底层硬件部分 Package,BSP),它把系统软件与底层硬件部分 隔离,使得系统的底层设备驱动程序与硬件无关。 隔离,使得系统的底层设备驱动程序与硬件无关。 ? BSP的特点: BSP的特点: 的特点 1)操作系统相关性 2)硬件相关性 ? 设计一个完整的BSP需要完成两部分工作: 设计一个完整的BSP需要完成两部分工作: BSP需要完成两部分工作 嵌入式系统的初始化:片级初始化、 1)嵌入式系统的初始化:片级初始化、板级初始化 和系统级初始化 设计硬件相关的设备驱动。 2)设计硬件相关的设备驱动。
Zhaohw@jlu.edu.cn

软件层
COMPUTER SCIENCE AND TECHNOLOGY

? 软件层:由实时多任务操作系统(RTOS)、文件 软件层:由实时多任务操作系统(RTOS)、文件 )、 系统、图形用户接口(GUI)、网络系统及通用组 系统、图形用户接口(GUI)、网络系统及通用组 )、 件模块组成。 件模块组成。 ? RTOS是嵌入式应用软件的基础和开发平台。 RTOS是嵌入式应用软件的基础和开发平台 是嵌入式应用软件的基础和开发平台。 ? RTOS实际上是一段嵌入式目标代码中的程序,系 RTOS实际上是一段嵌入式目标代码中的程序 实际上是一段嵌入式目标代码中的程序, 统复位后首先执行,相当于用户的主程序, 统复位后首先执行,相当于用户的主程序,用户 的其他应用程序都建立在RTOS之上。 RTOS之上 的其他应用程序都建立在RTOS之上。 ? RTOS是一个标准的内核,它将CPU时钟、中断、 RTOS是一个标准的内核 它将CPU时钟、中断、 是一个标准的内核, CPU时钟 I/O、定时器等资源都封装起来, I/O、定时器等资源都封装起来,留给用户的是一 个标准的API函数接口。 API函数接口 个标准的API函数接口。

Zhaohw@jlu.edu.cn

功能层与执行装置
COMPUTER SCIENCE AND TECHNOLOGY

? 功能层 :由基于 RTOS 开发的应用程序组成 , 用来 功能层:由基于RTOS开发的应用程序组成, RTOS开发的应用程序组成 完成对被控对象的控制功能。 完成对被控对象的控制功能。 ? 功能层是面向被控对象和用户的, 为方便用户操 功能层是面向被控对象和用户的, 往往需要提供一个友好的人机界面。 作,往往需要提供一个友好的人机界面。 ? 执行装置 :是指那些可以接受嵌入式计算机系统 执行装置: 发出的控制命令, 发出的控制命令 , 执行所规定的操作或任务的设 备和装置。 备和装置。 ? 在不同的应用领域中 , 嵌入式系统的执行装置一 在不同的应用领域中, 般是不同的, 般是不同的 , 应该根据具体的应用场合和系统所 要求实现的功能选择不同的设备和执行装置。 要求实现的功能选择不同的设备和执行装置。
Zhaohw@jlu.edu.cn

嵌入式系统的设计流程
COMPUTER SCIENCE AND TECHNOLOGY
开始 系统需求分析阶段

规格说明阶段

体系结构设计阶段

硬件构件设计

软件构件设计

执行装置设计

系统集成

系统测试

嵌入式产品发布

结束

Zhaohw@jlu.edu.cn

统一建模语言UML概述 概述 统一建模语言
COMPUTER SCIENCE AND TECHNOLOGY

? 统一建模语言UML:可视化建模语言,属于第三代 统一建模语言UML:可视化建模语言, UML 面向对象建模语言。 面向对象建模语言。它将模型中的信息用标准图 形元素直观地表示出来,便于人员交流。 形元素直观地表示出来,便于人员交流。 特点: 特点: UML语言简单 易学、易用; 语言简单, 1) UML语言简单,易学、易用; UML采用可视化的图形描述 比较形象直观; 采用可视化的图形描述, 2) UML采用可视化的图形描述,比较形象直观; 3) 可使不同技术背景的开发人员和设计人员很容 易的相互交流; 易的相互交流; ? 4) UML语言是第三代面向对象建模语言的标准, UML语言是第三代面向对象建模语言的标准 语言是第三代面向对象建模语言的标准, 被绝大多数业内人士认同; 被绝大多数业内人士认同; ? 5) UML采用图形化的设计,将系统的核心部分描 UML采用图形化的设计 采用图形化的设计, 述出来,可以供以后系统开发使用; 述出来,可以供以后系统开发使用; ? 6) 有利于项目的回溯和测试。 有利于项目的回溯和测试。
Zhaohw@jlu.edu.cn

? ? ? ?

UML组成 组成
COMPUTER SCIENCE AND TECHNOLOGY
? UML采用图形表示法,它的重要内容是由一些图来定义的。 采用图形表示法,它的重要内容是由一些图来定义的。 采用图形表示法 设计人员就是用这些图来描述整个系统的功能和设计。 设计人员就是用这些图来描述整个系统的功能和设计。 ? UML包括 部分: 包括4部分 包括 部分: ):UML的视图并不是图形,而是由许 的视图并不是图形, (1)视图(View): )视图( ): 的视图并不是图形 多图( 多图(Diagram)组成的一个抽象,视图显示表达系统的各 )组成的一个抽象, 个不同方面。 个不同方面。 ):描述 视图内容的图形。 (2)图(Diagram):描述 ) ):描述UML视图内容的图形。UML 视图内容的图形 共有9种不同类型的图 种不同类型的图, 共有 种不同类型的图,通过它们的相互组合来表示出被建 模系统的所有的视图。 模系统的所有的视图。 ):UML图中使用的概念 (3)模型元素(Model Element): )模型元素( ): 图中使用的概念 就是模型元素。模型元素代表普通的面向对象的概念, 就是模型元素。模型元素代表普通的面向对象的概念,例 如类、对象、消息以及这些概念之间的关系。 如类、对象、消息以及这些概念之间的关系。 ):UML提供的通用 (4)通用机制(General Mechanism): )通用机制( ): 提供的通用 机制为模型元素提供一些附加的信息、注释、语义。 机制为模型元素提供一些附加的信息、注释、语义。这些 通用机制也提供扩展机制,允许用户对UML进行扩展,以 进行扩展, 通用机制也提供扩展机制,允许用户对 进行扩展 便适应一个特定的方法/过程 组织或用户。 过程、 便适应一个特定的方法 过程、组织或用户。

Zhaohw@jlu.edu.cn

UML中的视图 中的视图
COMPUTER SCIENCE AND TECHNOLOGY
? 5种视图: 种视图: 种视图 ):描述系统应该交付的功能 (1)用例视图(Use Case View):描述系统应该交付的功能, )用例视图( ):描述系统应该交付的功能, 是外部参与者( 是外部参与者(Actor)观察到的系统功能。用例视图利用 )观察到的系统功能。 用例图、活动图进行描述。 用例图、活动图进行描述。 ? 一个用例就是对系统的一个功能的通用描述。 一个用例就是对系统的一个功能的通用描述。 ? 用例视图是核心。系统的最终目标,系统提供的功能在用例 用例视图是核心。系统的最终目标, 视图中被描述。用例视图会对所有其他的视图产生影响。 视图中被描述。用例视图会对所有其他的视图产生影响。 ):从系统的静态结构和动态行 (2)逻辑视图(Logical View):从系统的静态结构和动态行 )逻辑视图( ): 为角度显示如何实现系统的功能, 为角度显示如何实现系统的功能,描述如何实现用例视图中 提出的那些系统功能,逻辑视图注重的是系统的内部。 提出的那些系统功能,逻辑视图注重的是系统的内部。 ):显示代码组件的组织结 (3)组件视图(Component View):显示代码组件的组织结 )组件视图( ): 描述模块以及它们之间的依赖关系。 构,描述模块以及它们之间的依赖关系。组件是不同类型的 代码模块,通过代码模块的结构和依赖关系来表示。 代码模块,通过代码模块的结构和依赖关系来表示。 ):显示系统的并发性 (4)并发视图(Concurrency View):显示系统的并发性, )并发视图( ):显示系统的并发性, 解决并发系统中存在的通信和同步问题。 解决并发系统中存在的通信和同步问题。主要考虑资源的有 效利用、代码的并行执行以及系统环境中异步事件的处理。 效利用、代码的并行执行以及系统环境中异步事件的处理。 ):显示系统的具体部署 (5)部署视图(Deployment View):显示系统的具体部署, )部署视图( ):显示系统的具体部署, 将系统部署到有计算机和设备(称之为Node)组成的物理 将系统部署到有计算机和设备(称之为 ) 结构上。 结构上。
Zhaohw@jlu.edu.cn

UML中的图 中的图1 中的图
COMPUTER SCIENCE AND TECHNOLOGY
? 9种图:用例图、类图、对象图、状态图、顺序图、协作图、 种图:用例图、类图、对象图、状态图、顺序图、协作图、 种图 活动图、组件图和部署图。 活动图、组件图和部署图。 (1)用例图(Use Case Diagram) )用例图( ) ? 显示多个外部参与者(Actor)以及它们与系统提供的用例 显示多个外部参与者( ) 之间的连接,定义系统的功能需求。 之间的连接,定义系统的功能需求。 ? 一个用例是对系统提供的某个功能的描述,用例只是描述 一个用例是对系统提供的某个功能的描述, 系统活动者从外部观察系统所得到的那些功能, 系统活动者从外部观察系统所得到的那些功能,并不描述 这些功能在系统内部是如何实现的。 这些功能在系统内部是如何实现的。 ? 一个评分系统的用例图 :

Zhaohw@jlu.edu.cn

UML中的图 中的图2 中的图
COMPUTER SCIENCE AND TECHNOLOGY
(2)类图(Class Diagram) )类图( ) ? 显示系统中各个类的静态结构。类图是静态图。 显示系统中各个类的静态结构 类图是静态图。 类的静态结构。 ? 类代表系统内处理的事务,这些类可以多种方式连接:关 类代表系统内处理的事务,这些类可以多种方式连接: 依赖、特殊化或者打包。 联、依赖、特殊化或者打包。 ? 一个类的内部结构使用该类的属性和操作表示。 一个类的内部结构使用该类的属性和操作表示。 ? 一个系统一般有几个类图,并不是所有的类都放在一个类 一个系统一般有几个类图, 图中,一个类可以参与到多个类图中去。 图中,一个类可以参与到多个类图中去。
? 评分系统的类图: 评分系统的类图:

Zhaohw@jlu.edu.cn

UML中的图 中的图3 中的图
COMPUTER SCIENCE AND TECHNOLOGY
(3)对象图(Object Diagram) )对象图( ) ? 类图的一个实体。对象图中,对象名带下划线。 类图的一个实体。对象图中,对象名带下划线。 ? 与类图的区别:对象图显示的不是实际的类,而是类的多 与类图的区别:对象图显示的不是实际的类, 个对象的实例。因此,对象图就是类图的一个例子, 个对象的实例。因此,对象图就是类图的一个例子,显示 系统执行时的一个可能的快照。 系统执行时的一个可能的快照。
作者 Name: String Age:Integer Uses > 计算机 Name:String Memory:Integer

类图 张三的个人电脑 张三:作者 Name=“张三” Age=40 Name=”lenovo” Memory=512

张三办公电脑 Name=”Dell” Memory=256

对象图

Zhaohw@jlu.edu.cn

UML中的图 中的图4 中的图
COMPUTER SCIENCE AND TECHNOLOGY
(4)状态图(State Diagram) )状态图( ) ? 显示类的对象可能具备的所有状态,以及那些引起状态改 显示类的对象可能具备的所有状态, 可能具备的所有状态 变的事件。状态图是对类的描述的补充。 变的事件。状态图是对类的描述的补充。 ? 对象的一个事件可以是另一个对象向其发送的消息,例如 对象的一个事件可以是另一个对象向其发送的消息, 到了某个指定的时刻,或者已经满足了某个条件。 到了某个指定的时刻,或者已经满足了某个条件。 ? 状态的变化称之为转换,一个转换也可以有一个与之相连 状态的变化称之为转换 转换, 的动作,后者用以指定完成该状态转换应该执行的操作。 的动作,后者用以指定完成该状态转换应该执行的操作。
初始状态 Assign to subscription

Available

Time out Lock Unlock

Locked

Buy

Sold

Exchange
Zhaohw@jlu.edu.cn

UML中的图 中的图5 中的图
COMPUTER SCIENCE AND TECHNOLOGY
(5)顺序图(Sequence Diagram) )顺序图( ) ? 显示多个对象之间的动态协作。 显示多个对象之间的动态协作。 时间顺序。 ? 重点是显示对象之间发送消息的时间顺序。 重点是显示对象之间发送消息的时间顺序 ? 由多个用垂直线显示的对象组成,图中时间从上到下推移, 由多个用垂直线显示的对象组成,图中时间从上到下推移, 并且顺序图显示对象之间随着时间的推移而交换的消息或 函数。 函数。 ? 消息用带消息箭头的直线表示,位于垂直对象线之间。 消息用带消息箭头的直线表示,位于垂直对象线之间。
网站的接口 教师 电子邮件

Login teacher Look up student Send Email with grade Distribute Grade Logout teahcer

Zhaohw@jlu.edu.cn

UML中的图 中的图6 中的图
COMPUTER SCIENCE AND TECHNOLOGY
(6)协作图(Collaboration Diagram) )协作图( ) ? 显示动态协作。 显示动态协作。 ? 选择顺序图还是协作图的决定条件: 选择顺序图还是协作图的决定条件: 上下文, (1)重点强调上下文,选择协作图。 )重点强调上下文 选择协作图。 时间或顺序, (2)重点强调时间或顺序,选择顺序图。 )重点强调时间或顺序 选择顺序图。

Zhaohw@jlu.edu.cn

UML中的图 中的图7 中的图
COMPUTER SCIENCE AND TECHNOLOGY
(7)活动图(Activity Diagram) )活动图( ) ? 显示一系列顺序的活动,主要描述在一个操作内执行的那 显示一系列顺序的活动, 些活动。 些活动。 ? 由多个动作状态组成,这些动作状态包含将被执行的活动 由多个动作状态组成, 一个动作)的规格说明。 (一个动作)的规格说明。 ? 当动作完成后,动作状态将会改变,转换为一个新的状态, 当动作完成后,动作状态将会改变,转换为一个新的状态, 从而控制就在这些互相连接的动作状态之间流动。 从而控制就在这些互相连接的动作状态之间流动。

Zhaohw@jlu.edu.cn

UML中的图 中的图8 中的图
COMPUTER SCIENCE AND TECHNOLOGY
(8)组件图(Component Diagram) )组件图( ) ? 用代码组件显示代码物理结构。 用代码组件显示代码物理结构。 ? 组件可以是二进制组件、源代码组件或一个可执行的组件。 组件可以是二进制组件、源代码组件或一个可执行的组件。 ? 根据组件图中显示的那些组件之间的相互依赖关系,可以很 根据组件图中显示的那些组件之间的相互依赖关系, 容易地分析出其中某个组件的变化将会对其他组件产生什么 样的影响。 样的影响。

Zhaohw@jlu.edu.cn

UML中的图 中的图9 中的图
COMPUTER SCIENCE AND TECHNOLOGY
(9)部署图(Deployment Diagram) )部署图( ) ? 显示系统中的硬件和软件的物理结构。 显示系统中的硬件和软件的物理结构 硬件和软件的物理结构。 ? 可以显示实际的计算机和设备(或者 可以显示实际的计算机和设备(或者Node),它们之间必 ),它们之间必 ), 要的连接、连接的类型。 要的连接、连接的类型。 ? 也可以显示组件之间的依赖关系。 也可以显示组件之间的依赖关系。

Zhaohw@jlu.edu.cn

UML中的模型元素 中的模型元素
COMPUTER SCIENCE AND TECHNOLOGY

? 模型元素:在UML各种图中使用的概念。 模型元素: 各种图中使用的概念。 各种图中使用的概念 ? 一个模型元素是用语义、该元素的正式定义或者 一个模型元素是用语义、 用一条明确的语句中该元素所代表的准确意义来 定义的。 定义的。 ? 一个模型元素也有一个与之相对应的视图元素, 一个模型元素也有一个与之相对应的视图元素, 这些视图元素是模型元素的图形表示或者在UML 这些视图元素是模型元素的图形表示或者在 图中表示元素的图形符号。 图中表示元素的图形符号。 ? 常用的模型元素:类、对象、状态、节点、包和 常用的模型元素: 对象、状态、节点、 组件等。 组件等。

Zhaohw@jlu.edu.cn

COMPUTER SCIENCE AND TECHNOLOGY

模型元素对应的视图元素

Zhaohw@jlu.edu.cn

模型元素中的关系
COMPUTER SCIENCE AND TECHNOLOGY
? 关系:模型元素之间的相互连接。 关系:模型元素之间的相互连接。 ? UML中定义的关系: 中定义的关系: 中定义的关系 ):一个元素是另一个元素的特化 (1)泛化(Generalization):一个元素是另一个元素的特化, )泛化( ):一个元素是另一个元素的特化, 也称为继承关系。 也称为继承关系。 ):类实例之间连接的描述 (2)关联(Association):类实例之间连接的描述。 )关联( ):类实例之间连接的描述。 ):一种关联的形式 (3)聚合(Aggregation):一种关联的形式,一个元素包含 )聚合( ):一种关联的形式, 其他一些元素。 其他一些元素。 ):两模型之间的关系 (4)依赖(Dependency):两模型之间的关系,显示一个元 )依赖( ):两模型之间的关系, 素在某种程度上依赖于另一元素。 素在某种程度上依赖于另一元素。

Zhaohw@jlu.edu.cn

UML中的通用机制 中的通用机制
COMPUTER SCIENCE AND TECHNOLOGY

? UML在所有的图形中都使用一些通用机制来描述图 UML在所有的图形中都使用一些通用机制来描述图 的附加信息。 的附加信息。 ? 通用机制包括 三个方面的内容: 修饰 、 注解 、 规 通用机制包括三个方面的内容 修饰、注解、 三个方面的内容: 格说明。 格说明。 ? UML提供的这些视图和图为系统的分析、设计、建 UML提供的这些视图和图为系统的分析 设计、 提供的这些视图和图为系统的分析、 模提供了多种图形表达形式, 模提供了多种图形表达形式 , 可应用于开发的不 同阶段, 同阶段 , 它们的有机结合可以构建一个完整而一 致的系统。 致的系统。 ? 下面针对车载 GPS 终端说明 UML 在嵌入式系统设计 下面针对车载GPS终端说明UML GPS终端说明UML在嵌入式系统设计 中的具体应用。 中的具体应用。

Zhaohw@jlu.edu.cn

车载GPS终端系统简介 终端系统简介 车载
COMPUTER SCIENCE AND TECHNOLOGY
? GPS:全球定位系统(Global Position System)。 GPS:全球定位系统( System)。 ? 车载GPS终端:置于机动车内的实时定位装置。 车载GPS终端:置于机动车内的实时定位装置。 GPS终端 ? 应用对象:需要定位、调度的车队。车辆可以通过终端和 应用对象:需要定位、调度的车队。 GPS卫星进行实时 准确的定位, 卫星进行实时、 GPS卫星进行实时、准确的定位,并能够通过无线通讯网络 上报远程的车辆控制中心系统。 上报远程的车辆控制中心系统。

卫星 车辆调度中心

车载终端系统GPS

通讯网络

Zhaohw@jlu.edu.cn

车载GPS终端需求分析 终端需求分析 车载
COMPUTER SCIENCE AND TECHNOLOGY
? ? ? ? ? ? 可以使用用例图进行功能上的需求分析。 可以使用用例图进行功能上的需求分析。 用例图分角色( 用例图分角色(Actor)和案例(Case)两部分。 )和案例( )两部分。 角色:与系统交互的人或物。 角色:与系统交互的人或物。 车载GPS终端角色:车辆调度中心用户和车载终端用户。 终端角色: 车载 终端角色 车辆调度中心用户和车载终端用户。 案例:系统提供的功能块。 案例:系统提供的功能块。 使用用例图观察系统能够将系统实现与系统目标分开, 使用用例图观察系统能够将系统实现与系统目标分开,有 助于开发人员了解最重要的部分,满足用户需求, 助于开发人员了解最重要的部分,满足用户需求,而不只 是着眼于实现的具体细节。 是着眼于实现的具体细节。

Zhaohw@jlu.edu.cn

车载GPS终端规格说明1 终端规格说明1 车载 终端规格说明
COMPUTER SCIENCE AND TECHNOLOGY
? 规格说明要求比需求分析更加详细,通过UML设计可以 规格说明要求比需求分析更加详细,通过 设计可以 使规格说明更直观、更清晰。 使规格说明更直观、更清晰。 (1)使用类图描述系统所要处理的数据结构。 )使用类图描述系统所要处理的数据结构。 ? 例如在车载 例如在车载GPS终端的规格说明设计时可以使用类图描述 终端的规格说明设计时可以使用类图描述 需要接收的GPS卫星信号。 卫星信号。 需要接收的 卫星信号
GPSData UTCTime:time Longitude:double Latitude:double Direction:int Speed:double SendGpsDate():boolean RecvGpsDate():boolean
Zhaohw@jlu.edu.cn

车载GPS终端规格说明2 终端规格说明2 车载 终端规格说明
COMPUTER SCIENCE AND TECHNOLOGY
(2)在规格说明阶段,还需要识别出系统的对象。 )在规格说明阶段,还需要识别出系统的对象。 ? 首先以功能块划分,广泛地找出系统的主要对象; 首先以功能块划分,广泛地找出系统的主要对象; ? 然后使用协作图描述它们之间的关系。 然后使用协作图描述它们之间的关系。 ? 下图描述了车载 下图描述了车载GPS终端的主要对象,根据框图可以进行 终端的主要对象, 终端的主要对象 进一步的细化。 进一步的细化。

Zhaohw@jlu.edu.cn

车载GPS终端规格说明3 终端规格说明3 车载 终端规格说明
COMPUTER SCIENCE AND TECHNOLOGY
(3)在规格说明阶段还需要进行系统的业务描述,即规范系 )在规格说明阶段还需要进行系统的业务描述, 统完成一定功能的主要流程。 统完成一定功能的主要流程。 ? 可以利用活动图进行描述。 可以利用活动图进行描述。 ? 下图显示了当 下图显示了当GPS数据到达时,车载 数据到达时, 数据到达时 车载GPS终端系统所进行 终端系统所进行 的处理流程。 的处理流程。

Zhaohw@jlu.edu.cn

车载GPS终端系统体系结构 终端系统体系结构 车载
COMPUTER SCIENCE AND TECHNOLOGY

? 规格说明完成后,需要对系统的各个模块及模块 规格说明完成后, 之间的关系仔细地分析, 之间的关系仔细地分析,从而确定哪些部分使用 硬件完成,哪些部分使用软件实现。 硬件完成,哪些部分使用软件实现。 ? 在本例中,需要硬件实现的模块:电源模块、 在本例中,需要硬件实现的模块 电源模块、 硬件实现的模块: GPS接收模块、LCD显示模块、用户控制模块和 接收模块、 显示模块、 接收模块 显示模块 GSM通信模块。 通信模块。 通信模块 ? 所有的控制逻辑和数据计算全部由主控制器模块 的软件实现。 的软件实现。 ? 系统设计分为两个部分:硬件设计和软件设计。 系统设计分为两个部分 硬件设计和软件设计。 两个部分: ? 使用 使用UML的协作图和组件图对系统的硬、软件分 的协作图和组件图对系统的硬、 的协作图和组件图对系统的硬 别进行系统设计。 别进行系统设计。

Zhaohw@jlu.edu.cn

车载GPS终端软件系统架构 终端软件系统架构 车载
COMPUTER SCIENCE AND TECHNOLOGY

Zhaohw@jlu.edu.cn

车载GPS终端构件设计 终端构件设计1 车载 终端构件设计
COMPUTER SCIENCE AND TECHNOLOGY
? 对于某些工程,甚至需要把每一个构件作为一个项目,重 对于某些工程,甚至需要把每一个构件作为一个项目, 新以需求分析、规格说明开始展开构件设计循环。 新以需求分析、规格说明开始展开构件设计循环。 ? 在构件设计中,使用状态图和顺序图描述具体的系统流程 在构件设计中, 细节。 细节。 ? 本例中,GSM模块共有 个状态:通话当中、有问题、待命、 本例中, 模块共有4个状态 模块共有 个状态:通话当中、有问题、待命、 短消息通信中。 状态图如下图 如下图: 短消息通信中。其状态图如下图:

Zhaohw@jlu.edu.cn

车载GPS终端构件设计 终端构件设计2 车载 终端构件设计
COMPUTER SCIENCE AND TECHNOLOGY
? 顺序图从时间顺序上显示了一个特定对象进行特定操作时 顺序图从时间顺序上显示了一个特定对象进行特定操作时 所遇到的流程。 所遇到的流程。 ? 下图显示了车载终端用户在遇到特殊情况下通过车载电话 或按键与调度中心保持通信的系统的处理过程。 或按键与调度中心保持通信的系统的处理过程。

Zhaohw@jlu.edu.cn

车载GPS终端系统集成与测试 终端系统集成与测试 车载
COMPUTER SCIENCE AND TECHNOLOGY

? 系统集成测试时,可以将以上所有的UML框图综 系统集成测试时,可以将以上所有的 框图综 合起来,认真分析每个构件的原理和结构,针对 合起来,认真分析每个构件的原理和结构, 每一个系统功能、 每一个系统功能、每一个可能发生错误的过程写 出相应的测试程序,进行程序测试。 出相应的测试程序,进行程序测试。 ? 利用UML和系统的软 硬件协同设计方法,可以 和系统的软/硬件协同设计方法 利用 和系统的软 硬件协同设计方法, 使传统的嵌入式系统设计告别“手工作坊” 使传统的嵌入式系统设计告别“手工作坊”的开 发方式, 发方式,大大提高嵌入式系统的开发速度和产品 质量,增强设计的可复用性。 质量,增强设计的可复用性。 ? UML是图形化描述语言,比较适用于面向对象的 是图形化描述语言, 是图形化描述语言 程序设计, 程序设计,不适合精确的规格设计或非面向对象 的语言设计。 的语言设计。
Zhaohw@jlu.edu.cn

复习题
COMPUTER SCIENCE AND TECHNOLOGY

1. 嵌入式系统的设计与传统系统设计具有哪些异同 点? 2. 结合嵌入式系统的典型组成,试分析常见的嵌入 结合嵌入式系统的典型组成, 式产品( 式产品(如PDA、手机等)大体的结构组成? 、手机等)大体的结构组成? 3. 统一建模语言(UML)包括哪几个部分,各个部 统一建模语言( )包括哪几个部分, 分的组成又有哪些? 分的组成又有哪些? 4. 试画出 试画出UML中常用的几种图形,如用例图、类图、 中常用的几种图形, 中常用的几种图形 如用例图、类图、 顺序图等。 顺序图等。 5. 试着给出电梯的状态转换图。 试着给出电梯的状态转换图。 6. 结合嵌入式设计的具体流程和 结合嵌入式设计的具体流程和UML的相关知识, 的相关知识, 的相关知识 设计电梯调度系统。 设计电梯调度系统。

Zhaohw@jlu.edu.cn

COMPUTER SCIENCE AND TECHNOLOGY

请同学们认真复习

本章结束
Zhaohw@jlu.edu.cn


相关文档

嵌入式系统(第6章 嵌入式系统设计技术)分析
第6章 嵌入式系统设计技术
嵌入式系统(第7章 嵌入式系统设计技术)
吉林大学 嵌入式系统(第6章 嵌入式系统设计技术)
第6章嵌入式系统设计技术
嵌入式系统(第6章 嵌入式系统设计技术)剖析
第6章 嵌入式系统设计技术资料
第一讲 嵌入式系统设计技术介绍
嵌入式系统设计技术
嵌入式系统设计技术浅谈
电脑版