




已阅读5页,还剩49页未读, 继续免费阅读
(计算机系统结构专业论文)嵌入式系统设计模式的研究分析.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
中文摘要 嵌入式系统设计是一个快速发展的领域,目前嵌入式系统的软件大都基于不 同的硬件平台,而不同平台间的软件移植比较困难。鉴于市场上的产品更新周期 越来越短,必须提高嵌入式系统的开发效率才能满足市场的需求,因此使得改变 原有的工作方式,增加原有设计方案的复用性成为一个可行的方法。本文采用软 件设计模式的思想,提出使用模式的形式,来总结嵌入式系统设计中的硬件和软 件设计方案。在m a j o y 真人实景游戏项目,本人使用适合嵌入式系统的模式总结 了实际开发项目中遇到的一些软件和硬件问题,其中电源模块设计,单片机串口 硬件拓展,程序调度器等,都是在嵌入式设计中比较有代表性的问题。用模式的 方式总结的这些经验不仅有利于今后项目的移交和维护,还可供其他项目借鉴使 用。 在项目开发中,模式只能解决技术方面的问题,这是远远不够的,特别是对 于比较大的嵌入式项目开发,需要考虑的因素很多,因此需要采用良好的开发过 程对项目进行控制,以此保障项目快速、高质量地完成。嵌入式系统的快速面向 对象过程( r o p e s ) 是一种目前比较流行的嵌入式系统开发过程,它基于迭代式生 命周期,强调快速周转、早期的正确性证明和低风险等。在m a j o y 项目开发中我 们利用r o p e s 过程结合模式设计很好地完成了整个项目,本文的最后论述了我们 在项目开发的不同阶段如何使用r o p e s 的过程,以及在整个开发过程中采用的一 些策略和开发工具,我们在实际项目中把r o p e s 过程与模式设计结合,使嵌入式 项目的开发能有序进行,减少了今后项目二次开发中不必要的重复工作,使开发 人员能集中精力解决关键问题,保证了整个项目的良好运行。 关键词:嵌入式系统,模式,m a j o y ,r o p e s a b s t r a c t e m b e d d e ds y s t e md e s i g ni sar a p i d l yd e v e l o p i n gf i e l d m o s to ft h ec u r r e n t e m b e d d e ds y s t e m ss o f t w a r er u n so nd i f f e r e n th a r d w a r ep l a t f o r m s ,a n di t sh a r dt o t r a n s p l a n tt h es o f t w a r eo nd i f f e r e n tp l a t f o r m s s i n c et h ep r o d u c tr e f r e s hc y c l e i s b e c o m i n gs h o r t e ra n ds h o r t e r i ti sn e c e s s a r yt oi m p r o v et h ee f f i c i e n c y o ft h e d e v e l o p m e n to fe m b e d d e ds y s t e mt om e e tt h em a r k e t sn e e d s c h a n g i n gt h eo l dw o r k s t y l e ,i n c r e a s i n gt h er e u s a b i l i t yo ft h ee x i s t e dd e s i g ni saw o r k a b l es o l u t i o n i nt h i s p a p e ria d o p tt h es o f t w a r ed e s i g np a r e m s ,u s i n gp a a e m s t os u mu pt h ee x p e r i e n c eo f e m b e d d e ds y s t e m sh a r d w a r ed e s i g na n ds o f t w a r ed e s i g n i nm a j o yg a m ep r o j e c ti u t i l i z es o m em e t h o d si ne m b e d d e ds y s t e mp a r e mt os e t t l et h ea c t u a lp r o b l e m so f s o f t w a r ea n dh a r d w a r ee n c o u n t e r e di nt h ea c t u a lp r o j e c t s ,i nw h i c ht h ep o w e rs u p p l y m o d u l ed e s i g n ,t h eh a r d w a r ee x p a n s i o no fs c m ss e r i a lp o r ta n dt h ep r o c e s ss c h e d u l e r e p r e s e n t a t i v ed e v e l o p m e n t s u m m i n gu pt h ee x p e r i e n c eo ft h em o d e lu s e df o rt h e s e p r o j e c t sw i l ln o to n l yb e n e f i tt h ep r o j e c t sf u t u r em a i n t e n a n c eb u ta l s oo f f e rr e f e r e n c e s t oo t h e r s p a t t e r n sc a no n l ys e t t l et h et e c h n i c a lp r o b l e mi np r o j e c td e v e l o p m e n t i na c t u a l p r o j e c t ,e s p e c i a l l yi nb i gp r o j e c tt h e r ea r gm a n yf a c t o r sn e e d e dt ob ec o n s i d e r e ds oa g o o dm a n a g e m e n ti sn e e d e dt o c o n t r o lt h ep r o j e c t sd e v e l o p m e n ta n de n s u r et h e p r o j e c t sr a p i d ,h i g h q u a l i t yc o m p l e t i o n t h er a p i do b j e c t - o r i e n t e dp r o c e s s f o r e m b e d d e ds y s t e m s ( r o p e s ) p r o c e si sb a s e do nt h el i f ec y c l ea n de m p h a s i z e sr a p i d t u r n o v e r , e a r l yt h ec o r r e c t n e s sp r o o fa n dl o wr i s ke t c i nm a j o yp r o j e c td e v e l o p m e n t w eu s et h i sp r o c e s st o g e t h e rw i t hp a t t e r nd e s i g nt od e v e l o pt h ew h o l ep r o j e c t s u c c e s s f u l l y i nt h ee n d ,t h i sp a p e ri sa b o u th o wt ou s er o p e s i nt h ed i f f e r e n ts t a g e s o ft h ep r o j e c td e v e l o p m e n ta n dt h es t r a t e g i e sa n dt o o l su s e di nr o p e s w ec o m b i n e r o p e sa n dt h ep a t t e md e s i g ni na c t u a lp r o j e c t b yt h i sm e t h o dt h ep r o j e c tc a nb e c a r r i e do u ti no r d e ra n du n n e c e s s a r yr e p e t i t i o nw o r kc a nb ed e c r e a s e di nf u t u r e d e v e l o p m e n t s ot h ed e v e l o p e r sc o n c e r n et h e i re f f o r t so nr e s o l v i n gk e yp r o b l e m sa n d a sar e s u l tt h ee n t i r ep r o j e c tw o u l db ep e r f o r m e dw e l l k e yw o r d s :e m b e d d e ds y s t e m ,p a t t e r n ,m a j o y , r o p e s 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作和取得的研究成 果,除了文中特别加以标注和致谢之处外,论文中不包含其他人已经发表或撰写过的 研究成果,也不包含为获得墨鲞盘堂或其他教育机构的学位或证书而使用过的材 料。与我一同工作的同志对本研究所做的任何贡献均己在论文中作了明确的说明并表 示了谢意。 学位论文作者签名:力3 z 位翟 签字日期: 2 口。夕年2 月日 学位论文版权使用授权书 本学位论文作者完全了解鑫盗叁堂有关保留、使用学位论文的规定。特授 权叁盗苤鲎可以将学位论文的全部或部分内容编入有关数据库进行检索,并采用影 印、缩印或扫描等复制手段保存、汇编以供查阅和借阅。同意学校向国家有关部门或 机构送交论文的复印件和磁盘。 ( 保密的学位论文在解密后适用本授权说明) 学位论文作者签名:刍以缃葆 - 签- 7 - f t 期:2 b 口 年2 月曰 导师签名: 签字r 期: 磐缁 孔少 2 月厂日 天津大学硕士学位论文第一章绪论 1 1 课题研究背景 第一章绪论 在目前的生产和生活中,对嵌入式产品的需求越来越大,因此如何加快嵌入 式系统的开发业已成为研究的焦点。 众所周知,嵌入式系统的开发往往同时涉及硬件和软件两个部分。硬件作为 嵌入式系统的基础,其功能实现相对于软件的逻辑设计要简单一些,但是实现起 来要受到外界条件的限制,如芯片的性能、价格、制作工艺等。并且不同的硬件 设备还涉及到一些相关的背景知识,开发人员只有详细了解了这些细节以后才能 考虑使用的可行性。为此我们需要改变以往的工作方式,找到一种能提高方案的 可复用性的方法并应用到今后的嵌入式系统开发中,用它记录嵌入式系统中的硬 件和软件开发方案,使之不仅能便于系统今后的维护,还可以对其他项目起到参 考、借鉴的作用。模式就是一种针对上述问题的成功的解决方案,它就是针对某 一特定的、反复出现的问题而提出的。在嵌入式系统的开发中,开发人员经常要 借鉴已有的成功的项目经验,但是这些项目资料中能够借鉴的经验的可复用性较 差,对相关的知识涉及也很少,常常不能满足开发需要。 本文针对目前嵌入式系统开发的需求,旨在使用软件模式的方式,总结嵌入 式系统中硬件和软件实现方案,提高项目的可复用性,改进当前嵌入式系统开发 中不利于系统复用性的方面。 在将近十年的时间里,软件模式有了很大的发展,它不再只是一种经验的表 达,现在已经能够作为程序开发的一种驱动力了。因此,在嵌入式系统的设计中, 特别是其中的硬件设计引入的软件模式思想,大大地提高了嵌入式系统实现方案 的可重用性。 1 2 课题研究内容和创新点 本人在研究生阶段参与的实际项目开发过程中,根据嵌入式系统开发的特 点,结合软件模式已有的成功经验对软件模式技术进行了改进,使之更加适合于 描述嵌入式系统的设计方案,并以这种模式的方式,从嵌入式系统的硬件和软件 两个方面进一步总结了实际开发项目中的实现方案。诚然,模式仅仅是项目开发 天津大学硕士学位论文第一章绪论 中的点,还需要用一条线串起这些点才能贯穿到整个项目的开发过程中,文章最 后简要介绍了在开发实际项目中用到的r o p e s 过程,这是目前适合于嵌入式项目 的一种开发管理过程。 在与北京爱航公司合作的m a j o y 真人实景游戏项目中,本人所在的小组负责 开发游戏中使用的红外线发射枪和红外线接收设备。 m a j o y 项目是利用无线局域网技术实现的一款真人实景枪战游戏。游戏的原 理是在游戏的玩家身上安装一红外线接收装置,和能利用无线局域网通讯的 p d a 。在游戏中,玩家之间通过手中的红外线发射枪射击对手,每次射击和命中 的信息都通过联入无线局域网的p d a 传入后台的服务器中,由服务器判断游戏 结果,并将信息反馈到游戏玩家的p d a 上。 从本质上讲,我们负责开发的设备是一套集成了红外线收发模块和蓝牙模块 的嵌入式系统,其作用是将发射的红外线进行编码,用以辨别发射方的身份,被 击中者接收到红外线信号后对此进行解码,然后通过蓝牙模块将信息传入玩家佩 戴的p d a 上,再由p d a 把信息通过无线局域网传到后台的服务器上。在整个游 戏过程中,嵌入式设备起到了一个中间衔接的作用,是比较关键的部分。 在开发过程中硬件设计涉及到了两个关键的部分,即电源管理和串口通讯。 由于是项目中采用的是移动的嵌入式设备,所以必须使用电池,但是游戏的时间 往往很长,设备始终处在运行状态,这就要求除了使用大容量的电池以外,还要 在设计上使用转换效率较高的电源模块,并且在软件设计上尽量减少不必要的程 序,使单片机能用最少的电量完成任务。为解决这个问题,针对所使用的红外和 蓝牙模块所需电压不同,电源模块提供了5 v 和3 3 v 两种输出电源。而对于串 口通讯问题,一般的单片机上最多有1 2 个串口,但是游戏中除蓝牙模块使用 一个串口以外,红外模块要求使用多个串口,为此必须拓展单片机的串口,在软 件设计上还要能区分出信息来自哪个串口。这些在本文最后总结的硬件模式中有 详细的介绍。 目前设备的实验样品已经设计完成,基本能够达到游戏的要求,后期的开发 主要是提高产品的可靠性并降低成本。现在嵌入式设备的连线越来越少,用红外 和蓝牙技术替代线缆是比较常见的方案。这套设备正是集成了红外和蓝牙两种方 式的无线通讯,因此在其他项目开发中也是有借鉴意义的。 1 3 论文组织结构 本文围绕模式从三个方面展开讨论,介绍了如下内容。 1 、嵌入式系统和模式的概念。并根据已有的软件模式,提出适合嵌入式系 天津大学硕士学位论文第章绪论 统开发中兼容硬件和软件设计的模式。 2 、详细叙述实际项目开发中总结的硬件和软件模式。 3 、介绍适合嵌入式项目的r o p e s 开发过程。 其中: 第一章介绍了课题背景和意义,并介绍了本文的研究内容和创新点; 第二章介绍嵌入式系统和模式概念,提出适合嵌入式开发的新模式; 第三章描述了实际项目开发中总结出来的几种硬件模式; 第四章从软件体系和底层驱动两个方面,介绍嵌入式系统软件设计的开发实 例; 第五章介绍r o p e s 开发过程以及与之相关的软件开发工具。 第六章对本文的研究工作进行总结,并对未来研究工作做出展望。 天津大学硕士学位论文第二章嵌入式系统和模式的概念 第二章嵌入式系统和模式的概念 尽管嵌入式系统在我们生活中很常用,但是针对它的软件设计并没有成为软 件领域的焦点。而且实际开发嵌入式系统的工程师对软件设计技术的理解也有很 大的偏差,一些新的软件技术相对某些简单的嵌入式系统显得过于复杂繁琐,所 以开发人员在实际开发中迫于时间等原因不愿采用这些技术,并且这些技术又大 都是相对软件而言的,很少涉及硬件问题。对于嵌入式系统来说,开发中软件设 计和硬件设计往往是紧密结合的,因此上述技术的运用也就显然不太适合了。 一个成功的嵌入式系统设计,不仅要求设计人员具备软件工程和微控制器硬 件知识,而且还需要借助其他相关的工程技术领域的知识,包括仪表设备、数字 信号设备处理、人工智能和控制理论等。这些对嵌入式项目的设计都是必要的。 然而大多数软件设计人员缺乏此类相关知识,同时这些背景知识也常常被嵌入式 软件设计者所忽略。更令人遗憾的是,现有的嵌入式软件设计文档很少记录这些 用来弥补设计人员经验缺陷的内容。因此设计人员在每个嵌入式项目中经常会重 复设计类似的软件或硬件功能,为此需要找到一个在设计过程中能够重复利用以 往成功设计方案的方法。 2 1 什么是嵌入式系统 根据i e e e ( 国际电气和电子工程师协会) 的定义,嵌入式系统是“控制、监视 或者辅助设备、机器和车间运行的装置”。这主要是从应用上加以定义的。从中 可以看出嵌入式系统不仅是软件和硬件的综合体,还可以涵盖机械等附属装置。 目前国内一个普遍被认同的定义是:以应用为中心、以计算机技术为基础,软件、 硬件可以裁剪,适应应用系统对功能、可靠性、成本、体积、功耗等严格要求的 专用计算机系统。从这两个定义可以看出,嵌入式系统是一种包含至少一个可编 程计算机( 一般为微处理器、微控制器或数字信号处理器芯片) 的系统。但在实 际的应用中,使用者基本不关心系统是否是基于计算机的,嵌入式系统的不同分 类方式也比较多,其特性之一就是处理各种事件,这里按照触发的方式将它分为 如下两大类。 1 、事件触发系统:由外部和内部的事件引起的系统任务调度。嵌入式系统 中,事件的触发往往通过中断来实现。中断是一种硬件机制,用来通知 - 4 天津大学硕士学位论文第二章嵌入式系统和模式的概念 处理器发生了一个“事件”。这样的事件可能是“内部的”事件( 如定时 器的溢出) ,也可能是“外部的”事件( 如串行接口接收到的一个字符) 。 2 、时间触发系统:使用定时器预先设置的时间,在规定的时间段内触发系 统。基于这种方式设计的系统,其设计原理基本没有太大差别,只是不 同系统需要的时间精度和触发周期不一样。这些可以通过软件和硬件的 设置来调节。从概率学的角度来看,时间触发方案的优越性在于它把处 理事务的工作量平摊了,因此系统可以平稳的运行。事件触发方案则不 同,虽然不同事件短时间内集中发生的可能性也许很低,但是由于嵌入 式系统通常运行的时间很长,导致这种可能性发生的概率也随时间而增 长,一旦发生这种情况,系统的平稳运行将受到很大的影响,甚至引起 系统崩溃。 2 2 什么是模式 目前,软件设计中的软件模式可以为设计人员提供可借鉴的方案。那究竟什 么是模式呢? 其实模式在各种场合早已为大家所熟悉,人们在工作和生活中往往 互相学习别人成功的经验,这种经验一旦被大家认可并保持下来基本都可以归结 为一种生活或工作模式。如图2 1 所示模式必须具有三要素:适用场合、问题 以及解决方案。 适用场合:问题出现的场景。 问题:在给定场合重复出现的问题。 解决方案:给出对重复出现的问题的解决方案。 图2 1 在此基础上,不同的设计者可以添加一些其他的不同的要素来描述所建立的 模式。“观察者”模式是面向对象编程经常用到的模式,它描述了在多个组件的 应用中如何保持合作组件的同步化,以便当系统的一部分状态改变时,其他相关 组件将被通知到,如果需要,被通知组件会修改自己的状态。这种模式使得系统 不同的组成部分之间保持松散耦合,有利于组件在项目维护中的重复使用并且更 加容易修改。下面我们列出“观察者”模式的简短的模式描述。 天津大学硕士学位论文第二章嵌入式系统和模式的概念 观察者 适用场合: 观察者是一种软件设计模式,用在有两个或更多互连组件的应用中,其中各 个组件是相互台作的关系。 问题; 当某个内部数据元素改变时,所有依赖于这个数据的视图都必须被更新。此 种更新可以通过直接调用相关组件进行修改而实现,但是这种方式后期的工作量 大,而且不可重用。一旦涉及数据元素的组件有所变动,其他的视图组件都要修 改。因此要寻找一种更为通用的、可咀适用于不同环境的变更传播机制。例如, 假设正在研制一种电于表格应用。在这样的程序中,同样的信息可能以表格或柱 状圈、饼状图的形式同时显示出来。这几种显示中的任何一个改变都必须反映在 其他的显示中,每个视图都用一个组件来表示,并且变更的数据操作都绑定到各 个组件t 显然修改起来很麻烦,如果图2 2 所示: 图2 3 天津大学硕士学位论文 第二章嵌入式系统和模式的概念 可应用性和结果: 图2 4 个抽象模型有两个方面,其中一个方面依赖于另一方面,将这二者封装 在独立的对象中以使它们可以各自独立地改变和复用。 对一个对象的改变需要同时改变其他对象,而不知道具体有多少对象有 待改变。 个对象必须通知其他对象,而它又不能假定其他对象是谁。换言之,你 不希望这些对象是紧密耦合的。 使用这个模式的重要结果是,各种互连的组件松散地耦合在一起。这意味 着新加组件或删除现有的组件将几乎不影响程序的其余部分。 例子:( 程序代码略) 。 通过对模式的介绍不难看出,这种方式可记录开发人员的经验,一些文档的 编制也可以遵循一定的规范格式,有助于其他开发人员参考借鉴。然而模式的内 容并不是固定的,不同的行业和部门可以根据需要和特点添加其中的要素规则, 但是模式定义的三要素规则是基本的规则,此外使用例子可以有助于对模式的理 解,所以软件模式中一般都有例子要素,这样就变为四要素规则。 2 3 嵌入式系统的模式结构 软件模式虽然比较实用,然而对于嵌入式系统的针对性还不够。针对嵌入式 系统既要涉及到硬件知识又要求有广泛的其他相关知识的特点,我们在模式三要 素的基础上添加了一些具有嵌入式系统特点的要素,定义出了如下所述的嵌入式 系统模式。这些要素能较充分的描述出在嵌入式系统设计中,设计人员从各个相 关的角度需要考虑的问题。在后面的章节中,将以此模式的方式给出m a j o y 项目 天津大学硕士学位论文 第二章嵌入式系统和模式的概念 中总结出的各种软件和硬件模式。 模式名称 适用场合: 使用的微控制器( 不同的嵌入式系统使用的控制器有所不同,不同的控制器 各有各的特点,因此需要加以说明) 。 使用调度器构造一种触发结构。 问题: 具体提供用该模式来解决哪些问题的概要。 背景知识: 提供信息来帮助经验不足的开发人员充分利用该模式。 解决方案: 包括软件设计、源程序清单以及硬件原理图等。 硬件资源: 每个嵌入式设计模式中要用到的硬件资源。 可靠性和安全性: 模式潜在的可靠性和安全性问题。 可移植性: 嵌入式系统的特点之一就是徼控制器类型不一,为了使软件可以在不同的微 控制器上运行,可移植性是很重要的。 优缺点: 总结模式的优缺点。 相关的模式和替代解决方案: 模式未必百分之百的适应参考人员的需要,需要讨论并提供相关的、可能使 人感兴趣的模式参考文献,以方便参考人员借鉴其他的模式。 例子: 给出具体的例子有助于参考人员理解本模式的应用。 进阶阅读: 给出使用模式的有关辅助信息的来源。 天津大学硕士学位论文第三章嵌入式系统的硬件模式 第三章嵌入式系统的硬件模式 前面提到过嵌入式系统的设计往往涉及到硬件和软件两大部分,而一个嵌入 式项目往往要先从硬件设计开始。由于硬件受到的限制条件很多,不能轻易地改 动,所以开发出来的样品性能也不完全一样,即使是最后的成品,其质量也会因 制造工艺的影响而不完全一样。硬件平台的开发是项目的关键,硬件设计往往更 注重开发人员的经验。相对软件而言,硬件开发的逻辑复杂程度比起复杂的软件 设计要简单,文档资料也易于理解,在硬件开发人员对项目的关键芯片掌握以后, 其他的外围设计可以参考现有的设计方案进行。 嵌入式系统的涉及范围很广,可用的硬件芯片也很多,这里只讨论基于微控 制器的嵌入式系统的基本硬件基础。首先,就微控制器而言,项目初期就必须做 好微处理器的选择,这种选择将对后期的软件和硬件设计决策有很大的影响。其 次是振荡电路,该电路是系统的“脉搏”,是正确操作的关键,如果振荡器失灵, 系统将根本无法运行。大部分的嵌入式系统需要通过各种接口与外界交换数据并 控制外围设备的运行,而串口是其中最常用的接口之一,e l 前在设计中仍然被广 泛使用。对于嵌入式系统来说,存储器就像人的大脑一样重要,但是现在很多微 控制器都有内部存储器,而且内部存储器的容量也越来越大,所以开发人员应尽 量选择内部存储器容量合适的芯片以简化设计。 m a j o y 项目中的嵌入式设备利用单片机的串口将蓝牙模块和红外模块连接起 来,实现蓝牙和红外信号的收发,下面以模式的形式介绍一下在m a j o y 项目开发 中总结的一些嵌入式系统的硬件模式。 3 18 0 5 1 微控制器 在大多数嵌入式项目的初期都需要选定微控制器。在m a j o y 项目的后期开发 中我们选择了8 0 5 1 微控制器,8 0 5 1 微控制器生产厂家众多,其性能也在不断提 高中。实践证明,使用8 0 5 1 单片机是一种很好的选择。 标准8 0 5 l 微控制器的功能,为大多数厂商生产的8 0 5 1 微控制器产品所兼容。 在标准的8 0 5 1 微控制器基础上,不同的产品各有各的特点,而且都可以精简或 扩展其性能来满足市场的不同需求。在设计中经常涉及到对精简8 0 5 1 和扩展 8 0 5 1 两种类型的选择。 天津大学硕士学位论文第三章嵌入式系统的硬件模式 m a j o y 项目中使用的单片机只是完成对端口的读写操作,没有复杂的计算等 任务,因此选用精简的8 0 5 1 是最佳的方案,标准8 0 5 1 微控制器的功能只用到了 其中的一小部分,为了降低成本选择功能单一、适用的精简8 0 5 1 。这种精简的 8 0 51 微控制器管脚比标准8 0 51 微控制器少,设计开发难度也不高。 精简8 0 5 1 模式 适用场合: 基于微控制器的嵌入式系统,要求选择一种硬件平台。 问题: 精简8 0 5 1 能否适合目前的项目要求。 背景知识: 简言之,在产品中使用价格便宜的微控制器是嵌入式市场发展的总趋势。针 对这种特点,一些更新的8 0 5 1 器件减少了最初版本的一些功能,精简后的8 0 5 1 器件一般具有2 0 或者2 4 个引脚,除了芯片尺寸变小外,一般都不支持外部存储器。 市场上流行的产品有a t 8 9 c 1 0 5 1 、8 7 l p c 7 6 4 等。 解决方案: 是否在系统中使用精简8 0 5 17 大多数精简8 0 5 1 提供i 2 m i p s 的c p u 性能。 精简8 0 5 1 的一个主要特性是它们不支持标准的外部数据和地址总线。 不同的精简8 0 5 1 器件额片内硬件模块区别很大。流行的a t m e l 系列几乎 没有额片内硬件模块,而p h i l i p s 公司的器件却具有很多功能,包括数 模转换和脉冲调制器模块。 精简8 0 5 1 具有很少的引脚数量,当扩展外部元件时,可以考虑使用标准 8 0 5 1 来替换,也可以使用其他端口扩展等方式。 精简8 0 5 1 具有非常宽的工作电压范围( 一般在3 7 v ) ,非常适于创建 成本低、由电池供电的系统。 硬件资源: 精简8 0 5 1 提供以下硬件资源。 c p u 性能:i 3 m i p s 。 可用的内部存储器。一般最多4 k b 程序存储器和2 5 6 b 数据存储器。不支持 外部存储器。 通常具有一个全双: 2 r s 一2 3 2 串行端口。 2 3 个硬件定时器。 正常运行电流消耗1 0 m a ,空闲模式下约5 m a ,省电模式下约1 0 u a 。 天津大学硕士学位论文第三章嵌入式系统的硬件模式 可靠性和安全性: 没有数据可以证明精简8 0 5 1 比其他微控制器可靠性更高。 可移植性: 不同精简8 0 5 1 的引脚不兼容,在功能上差异较大,因此程序的可移植性比标 准8 0 5 1 要差。 优缺点: 基于8 0 5 1 核心体系结构,这样就具有许多标准8 0 5 1 的优点。 外形尺寸较小。 价格便宜。 片内r a m 和r o m 有限,不支持外部存储器。 不同系列产品特性差异大,所以基于精简8 0 5 1 的设计不便于移植。 相关的模式和替代解决方案: 精简8 0 5 1 的主要替代方案是标准8 0 5 1 ,或者其他性能相似的器件,如 m ic r o c h i p 系列的p i c 器件等。 例子: 使用精简8 0 5 1 的例子很多,这里略去此部分。 进阶阅读: 选择的精简8 0 5 1 系列器件的数据手册。 与精简8 0 5 1 器件相反,扩展8 0 5 l 器件在兼容标准8 0 5 l 的基础上,增加了 许多新功能,因此产品使用在相对高性能的应用领域。与许多1 6 位微控制器相 比,扩展8 0 5 l 通常比较便宜,然而,与精简8 0 5 l 和标准8 0 5 1 方案相比则必然 要贵一些。为了开发需要特殊硬件或大量存储器的系统,可以选择1 6 位或3 2 位 微控制器,然而这样的选择需要进一步的开发投资。使用扩展8 0 5 1 器件可以保 护原有对8 0 5 1 系列的投资,同时节省对开发人员的培训。扩展8 0 5 l 器件系列很 多,扩展的功能各有不同。 3 2 振荡器 数字计算机系统都是由振荡时钟电路驱动的。如果振荡器失灵,系统将完全 无法运行;如果振荡器运行不规律,系统的所有有关时间的计算都会有误差。因 此选择一个合适的振荡器电路是硬件设计的重要部分。大多数基于微控制器的系 统都有两种主要的振荡器选择,即晶体振荡器和陶瓷谐振器。晶体振荡器比陶瓷 谐振器的精度要高,一般用于时间要求相对精确的系统,其价格要比陶瓷谐振器 天津大学硕士学位论文第三章嵌入式系统的硬件模式 贵,物理抗干扰能力相对较弱些。在m a j o y 项目中,我们采用了晶体振荡器。 晶体振荡器模式 适用场合: 基于8 0 5 1 等系列微控制器的嵌入式系统。 需要为该系统设计相应的硬件。 问题: 什么时候以及如何使用石英晶体为微控制器建立一个振荡器。 背景知识: 石英是一种普通的矿物,是大多数沙粒的主要成分。它有一个有用的压电特 性,这指的是如果在一块石英上加压,它将产生一定频率的电流。利用这种特性 作为实用振荡器的基础,通过使用电场,可在晶体内部产生机械振荡,随后变为 晶体表面可测量的电压波动。人们可以通过把石英切割为一定的大小与形状来精 确控制这种波动的频率。为了建立一个完整的振荡器,需要更多的组件。如图 3 1 所示展示了一种称为皮尔斯振荡器通用振荡电路。 图3 1 皮尔斯振荡器通用振荡电路 皮尔斯振荡器的变型在8 0 5 1 系列里通用。建立这样一个振荡器的大多数组件 已经包含在微控制器内部,有时这些组件一起被称为振荡反相器。使用这种器件 一般只需提供晶体和两个小电容来实现完整的振荡器。注意,在一些情况下,使 用一个完整的、独立的外部晶体振荡器模块来驱动微控制器效果会更好。 振荡器频率和机器周期之间的联系 为微控制器选择合适的振荡器时,振荡器频率的选择是人们真正关心的,即 机器周期,因其决定着指令的执行速度。 最初8 0 5 1 系列微控制器的机器周期和振荡器周期之间有不同的关系,起初, 一个机器周期使用了1 2 个振荡器周期,后来更新的8 0 5 1 器件每个机器周期只需要 天津大学硕士学位论文第三章嵌入式系统的硬件模式 一个振荡器周期。因此,运行在同样的时钟频率下,后来更新的8 0 5 1 系列微控制 器执行指令更快。 为什么应该使时钟频率尽可能地低 一般情况下,系统的运行速度直接由振荡器频率决定,如果振荡器频率加倍, 系统将以两倍的速度运行。因此许多开发人员选择的振荡器频率通常接近微控制 器支持频率的最大值,以期获得最高性能。而这是不正确的,原因如下: 许多系统不需要提供那么高的性能; 振荡器频率的提高一般会使电源电流加大,因此使用尽可能低的频率可以降 低功耗。这在便携式设备中非常有用; 如果微控制器以较低的速度运行,存取低速外设的编程和硬件设计将极大地 简化,而外部器件地成本也将降低; 电路产生的电磁干扰( e m i ) 会随着时钟频率的增加而增加。 结论是,设计嵌入式系统时,在满足系统所需性能要求的前提下,应使用尽 可能低的振荡器频率。 解决方案: 稳定性问题:为系统选择振荡器的一个主要因素是振荡器的稳定性。振荡器 的稳定性是用诸如“2 0 p p m ”这样的数值来表示的,即百万分之二十,即 一个基于2 0 p p m 晶体的时钟在一年中误差大约1 0 分钟。 成本问题:晶体的价格大约是陶瓷谐振器的两倍,并与晶体的稳定性有关。 如何将晶体和微控制器连接:晶体振荡器的基本连接如图3 2 所示 图3 2 晶体振荡器的连接 电容值将随着微控制器和晶体频率而变化,在没有特定信息的情况下,3 0 p f 的电容值在大多数情况下将能正常工作。 硬件资源: 大多数情况下,晶体振荡器的使用和系统中的c p u 或内存需求没有直接的关 系。然而,如果希望进行温度测量来增加振荡器的稳定性,将占用c p u 和存储器 开销。 天津大学硕士学位论文第三章嵌入式系统的硬件模式 可靠性和安全性: 系统脉搏:振荡器形成了数字计算机中的“脉搏 。如果这些脉搏停止,系 统就会停止。如果这些脉搏有变化,定时、延迟、形成的波形等也会有变化。 因此嵌入式系统的正常运行依赖于能否提供一个不易受干扰而又有规律的 时钟输入。 抗震特性:石英在一些物理性质上和玻璃相似,尤其是易碎性。如果要求振 荡器在具有很大振动的环境下工作,就需要将系统封装起来,避免振动影响 系统的运行。 振荡器的起振时间:如果电路中的振荡器起振有延迟,那么复位周期可能会 在振荡开始之前结束。一旦发生这种情况,芯片将不会复位。晶体振荡器的 起振时间取决于它是否被正确地安装并配有合适的电容。典型的起振时间是 o 1 l o m s ( m a r i u t t i1 9 9 9 ) 。 使用外部晶体振荡器模块:如果系统必须非常可靠地运行,那么这将是一种 比较好地解决方案。如图3 3 所示是连接振荡器模块的示意图 图3 - - 3 连接振荡器模块 当使用较高频率的时钟频率( 1 2 瑚z ) 时,振荡模块将提高系统的可靠性。 然而,振荡器模块也存在如下缺点。 振荡器模块的价格大约是晶体振荡器的两倍,是陶瓷谐振器的四倍。 振荡器模块对电流的要求一般与一个8 0 5 1 微控制器相当,即1 5 一- - 3 5 m a 。在靠 电池供电的系统中,这意味着非常大的功耗。 一些不常用频率的振荡器模块不容易找到,比如l1 0 5 9 m h z ,这种频率对基 于8 0 5 1 涉及串行接口的设计非常有用。 提高晶体振荡器的稳定性:为了提高由晶体控制时间的精度,可以把该设备 放到固定温度的环境中。然而对大多数系统来说这是不实际的,所以通常采用其 他方法来实现。 使用“温度补偿晶体振荡器”( t c o x ) ,它提供了晶体振荡器和补偿温度变 天津大学硕士学位论文 第三章嵌入式系统的硬件模式 化的电路,这样的器件提供高达0 1 p p m ( 或更高) 的稳定性。除了那些要 求苛刻的系统,这种级别的准确度适用于几乎所有系统。但是温度补偿晶体 振荡器的价格相对嵌入式设备太高,难以应用到大多数嵌入式项目中。 实用的备选方案是确定所选晶体的温度一频率特性并将这个信息包含在系统 中。以此为代价,能够跟踪温度并按要求调整时间。这是稳定的调度器基础。 对于类似手机等联网的嵌入式设备,可以通过服务器定期调整联网设备的时 间。 可移植性: 可以应用在基于各种微控制器和微处理器的系统上,注意使用的电容容量取 决于晶体频率和所使用的微控制器的要求。 优缺点: 晶体振荡器性能稳定。 基于晶体振荡器的设计为开发人员所熟悉。 由于需要的其他元件通常仅仅是两个小电容,所以总体的价格比较适中。 晶体振荡器对振动敏感。 稳定性随使用时间下降。 相关的模式和替代解决方案: l 、使用外部陶瓷谐振器,具体参见陶瓷谐振器。 2 、使用片内振荡器,目前诸如p h i l i p s 的8 7 l p c 7 6 4 这种2 0 引脚的器件包含一个 片内复位电路和一个片内阻容振荡器。因此能够在没有任何外部元件的情况下使 用。虽然应用简单,但是受温度的影响稳定性很差。 例子: l 、将晶体振荡器连接至l j a t m e l 的8 9 c 2 0 5 1 ,如图3 4 所示: = 图3 4 晶体振荡器与a t m e l8 2 、将晶体连接到双处理器电路板,这在多处理器设计中是很有用的,它可以使 两个微控制器始终同步,如图3 5 所示。如果两个芯片要求不同的电容值,那么 可选择一个中间值。 接连的 q:眈 天津大学硕士学位论文第三章嵌入式系统的硬件模式 图3 - - 5 晶体与双处理器的连接 进阶阅读: 参考所用微控制器的数据手册,选择保证晶体振荡器电路稳定工作的电容值。 3 3 电源管理芯片 m a j o y 项目中使用的嵌入式设备是移动设备,使用的电源只能是电池,电池 提供的电压是固定的,但是红外模块和蓝牙模块使用的电压分别为5 v 和3 3 v , 所以需要在电源模块中提供两种电压的模块设计。而为了使电路性能稳定,往往 还需要稳定电源。嵌入式系统采用电池供电,如何使稳压电源部分性能满足电路 的要求、耗电省( 能延长电池的寿命) 、安全性好、占空间小、重量轻是设计嵌 入式系统中的一个重要任务。通常来讲,根据不同的工作原理,可将电源分成三 类:线性稳压电源、开关稳压电源及电荷泵电源。它们各自都有一定的特点及适 用范围,嵌入式系统中常用的是d c d c 变换器即开关稳压电源。 d c d c 变换器i c 可以组成升压式( v o u t v m ) 和降压式( v o u t v m ) 。大多 数嵌入式设备工作电流在3 0 0 m a 以下,所以很少用到降压式d c d c 变换器。降 压式主要用于工作电流大于1 a 以上的场合,如笔记本式计算机等。为了说明实 际如何应用这两种方式,下面给出同时输出5 v 和3 3 v 的电源管理芯片使用模 式。 电源管理模式 适用场合: 需要提供稳定高效电源输出的便携式电子产品,提供5 v 和3 3 v 输出电压的电 源管 理模块。 问题: 天津大学硕士学位论文第三章嵌入式系统的硬件模式 电源模块提供的电流和电压变化范围对常用的嵌入式产品是否能适用。 背景知识: 便携式电源i c 种类繁多,它们的共同特点有: l 、工作电压低。一般便携式的工作电压为3 o 3 6 v 。有些工作电压更低, 如2 0 、2 5 、2 7 v 等;也有一些工作电压为5 v ,还有少数1 2 v 或2 8 v 的特殊用 途的电压源。 2 、工作电流不大。便携式电子产品范围极宽,但大多数便携式电子产品的工 作电流小于3 0 0 m a ,所以3 0 3 0 0 m a 电源i c 在品种及数量上占较大的比例。 3 、封装尺寸小。近年来发展的便携式产品都采用贴片式器件,电源i c 也不 例外,主要有s o 封装、s o t - 2 3 封装,um a x 封装及封装尺寸最小的s c 一7 0 ,以 及最新的s m d 封装等,使得电源芯片占用空间呈现越来越小的趋势。 4 、完善的保护措施。新型电源i c 有完善的保护措施,这包括:输出过流限 制、过热保护、短路保护及电池极性接反保护,使电源工作安全可靠,不易损坏。 5 、耗电小及关闭电源功能。新型电源i c 的静态电流都较小,一般为几十ua 到几百ua 。个别微功耗的线性稳压器的静态电流仅1 1ua 。另外,不少电源i c 有关闭电源控制端功能( 用电平来控制) ,在关闭电源状态时i c 自身耗电在 1ua 左右。由于它可使一部分电路不工作,因此可大大节省电能。例如,在无 线通信设备上,处于发送状态时可关闭接收电路;在未接收到信号时可关闭显示 电路等。 解决方案: 选用m a x l 7 0 3 和l m l1 17 芯片。 1 、可以免费获取产品样片和详细的芯片资料。 2 、有许多已经应用的方案可以借鉴。 3 、属于大公司的产品,产品质量有保障。 4 、芯片提供的电源电压和电流适用范围较宽,并且m a x l 7 0 3 是高效率、 低功耗、升压式d c d c 变换器i c ,l m i1 17 是降压式d c d c 变换器i c ,相 对m a x l 7 0 3 效率较低,但是使用简单,引脚只有3 个,可以简化设计。 硬件资源: 电源模块的功能单一,仅需要为系统提供稳定的电源,与嵌入式系统要提供 的功能没有直接的联系。 可靠性和安全性: 电源芯片的相关资料有详细的试验数据,根据这些数据很容易看出产品的特 性,一般来讲,大公司的芯片质量相对有保障。 可移植性: 天津大学硕士学位论文第三章嵌入式系统的硬件模式 在嵌入式设备中,经常需要提供5 v 和3 3 v 的电源,可以应用到其他类似的项 目中。 优缺点: m a x l 7 0 3 的性能比较高,但是芯片的外围元器件较多。 l m i i l 7 性能相对不高,芯片的外围电路少,引脚只有3 个,使用简便。 两款芯片的价格便宜,从市场上容易买到。 相关的模式和替代解决方案: 电源芯片的产品型号很多,很难找到一种最优的方案,所以从设计角度应选 择比较容易从市场买到,质量也有保证的产品,如果批量生产则要考虑价格因素。 例子: l 、m a x l 7 0 3 的外围电路使用方式,如图3 - - 6 所示: 图3 61 幅a x l 7 0 3 的外围电路 2 、用l m i l l 7 输出3 3 v 电源,如图3 7 所示: 进阶阅读: 2 i 图3 7l m i l l 7 的外围电路 天津大学硕士学位论文第三章嵌入式系统的硬件模式 参考芯片资料,选择适合芯片的外围电路元器件。 3 4 串口拓展 m a j o y 项目中单片机需要通过串口收发红外模块和蓝牙模块的数据,红外接 收装置的红外接收触点有多个,不同的串口代表玩家被击中的不同部位。但是单 片机的串口资源很少,不能满
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025至2030中国砂纸切割机行业项目调研及市场前景预测评估报告
- 2025至2030中国男式香水行业调研分析及行业项目调研及市场前景预测评估报告
- 广东省珠海市酒店消防安全测试题十八(含答案)
- 广东省东莞市生活广场消防安全测试题十七(含答案)
- 掘进专业试题库及答案
- 软件合作开发合同范本
- 银行从业资格考试11及答案解析
- 护理学技师考试题库及答案解析
- 40岁证券从业资格考试及答案解析
- 食品安全操作规范测试题及答案解析
- GB/T 21063.4-2007政务信息资源目录体系第4部分:政务信息资源分类
- 机修车间岗位廉洁风险点及防范措施表
- 全新版尹定邦设计学概论1课件
- 牙及牙槽外科
- 文物建筑保护修缮专项方案
- 万用表 钳形表 摇表的使用课件
- 63T折弯机使用说明书
- 170位真实有效投资人邮箱
- 工程力学ppt课件(完整版)
- 《区域经济学》讲义(1)课件
- 船模制作教程(课堂PPT)课件(PPT 85页)
评论
0/150
提交评论