已阅读5页,还剩54页未读, 继续免费阅读
(物理电子学专业论文)嵌入式系统软件网络升级技术研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
华中科技大学硕士学位论文 摘要 随着信息技术、计算机网络技术的迅猛发展和广泛普及,人们对i n t e r n e t 的需求 也越来越大,i n t e r n e t 所带来的好处也越来越得到体现,使许多的信息家电、智能仪 表等设备接入到互联网成为可能,从而实现网络化、智能化的集中管理,带给人们更 精彩、更方便的生活方式。 目前,嵌入式系统应用越来越广泛,若将以太网接口嵌入各种被控对象设备中, 如标准控制器、仪器仪表、家电等,可以实现各类数据通过网络传输,进行广域网范 围的实时传输、处理、升级、监控。过去的产品要进行应用软件的更新升级,必须更 换相应的程序存储器芯片,会带来很多麻烦和不可靠因素,造成资源浪费、设备更换 地点限制等缺点。 基于以太网的远程软件升级实验系统采用了c y g n a l 公司的单片机c 8 0 5 1 f 0 2 0 、 r e a l t e k 公司的r t l 8 0 1 9 以太网芯片、t c p i p 协议,本系统解决产品的互联网接入问 题,控制传输各类数据,实现数据共享,通过以太网下载版本最新、功能更强的用户 程序,达到远程软件的自动更新升级目的;通过人机接口实现各种数据输入、输出、 运行状态的显示,同时可以进行字符及汉字等信息的显示。其特点是体积小、功耗低、 功能强、操作简单,克服了传统的升级带来的不便,节省了成本,提高了效率,满足 了用户更高的需求。该方法可以提高系统供应商的产品竞争力和服务效率,从而为今 后开发相对完善的产品积累经验,具有较好的经济效益和社会效益。 关键词:以太网嵌入式系统协议软件升级 华中科技大学硕士学位论文 a b s t r a c t a l o n gw i t ht h et e c l l l l i c a lf a s td e v c l o p m e n t 趾de x t e n s i v eu i l i v e r s a l i t i e so fi n f b 咖a t i o n a n dn e t w o r k s ,t h ep e o p l e sn e e dt ot h ei n t e m e ti sa l s om o r ea 1 1 dm o r eb i g ,t h ea d v a n t a g et l l 砒 i m e m e tb r i n ga l s og e t sm a t e r i a l i z em o r ea n dm o r en ow ,m a k ee q u i p m e m s ,s u c ha sm a l l y i n f b 啪a t i o na p p l i a n c e sa n dt h ei n t e l l i g e n c ea p p e a r a l l c e e t c c o n n e c tg oi n t ot h ei n t e m c tt o m a k ep o s s i b l e ,t h u sc a r r yo u tt h en e t w o r kt ot i l m ,t l l ec e n t r a l i 翡dm a n a 琴e m e n tt l l a t m t e l l i g e n c et u m ,m n gt h ep e o p l et h em o r ef a s c i i l a t i n ga n dm o r ec o n v e n i e n tl i f es t y l e c u i t e n t l y t i ee m b e d d e ds y s t e m 印p l ym o r ea l l dm o r ee x t e n s i v e ,i fc o n 舡d l t h ee 血e rn c t c o n n e c t st oi m b e dv a r i o u sd r i v ei nt h eo b j e c te q u i p n l e n t s ,s u c ha sm es 州a r dc o n t r o l l e r , i n s e n t 印p e a r a n c e ,a p p l i a n c ee t c ,c 柚c a r r yo u te a c hk i n do fd a t at od e l i v e rt l l :r o u 曲a n e t w o r k ,廿1 es o i i dh o u rt h a tc a r r yo nt h ew i d ea r e an e t w o r ks c o p ed e l i v e r h a n d l e ,u p 目鼍d e , s u p e n ,i s e sa n dc o n t m l t h ep a s tp r o d u c tw 肌t st oc a r r yo nt h er e n e w a lu p g r a d eo ft l l e 印p l i e ds o r w a r c ,m u s tr e p l a c et h es a v i n gm a c l l i r l cc h j po fh o m o l o g o u sp r o c e d u r c ,w i l lb r i n g al o to ft r o u b l e s o m ea n dn o td 印c n d a b l ef a c t o r s ,r c s u l t i n gi nt l l ew a s t eo fr e s o u r c e s , e q u i p m e n t sr e p l a c et h er e s 仃i c to f t h el o c a t i o ne t c w e a k n e s s 1 1 1 a ts y s t e ma d o p t e dn l er t l 8 0 1 9e m e m e tc h i p ,c o m p a n yo fr e a l t e k ,t h es i n g l e c h i p c o m p u t e rc 8 0 5 1 f 0 2 0 ,t h ec o m p a n yo fc y g n a l ,a 1 1 dt c p i pp m t o c 0 1 ,a c c o r d i n gt ot l l e r e m o t es o f t w a r eu p g r a d eo ft h ee t l l e m e t ,t h i ss y s t e mr e s 0 1 v e sm ei m e m e to fm ep r o d u c tt o c o i l i l e c ti n t ot h ep r o b l e m ,t h ec o n t r o ld e l i v e r se a c hk i n do fd a 止a ,c a 盯y i r 培o u t 也ed a _ c as h a r e , p a s s i n gt h ee t h e m e td o w n l o a de d i t i o nl a t e s t ,s t r o n g e rc u s t o m e rp r o c e d u r eo f 铀c t i o n ,a t t a i n t h ea u t o m a t i cr e n e w a lu p 铲a d ep u r p o s eo ft h er e m o t es o f w a r e ;c o n r 坨c tt h em a n i f e s t a t j o n t 1 1 a tv a r i o u sd a t ao fg o s s i pi n p u t ,o u t p m ,c i r c u l a t e st t l ea p p e a r a n c en o w 也m u g hp e r s o n s m a c h i n e ,c a l lc 踟了o nt h em a l l i f c s 乜t i o no fi n f o r m a t i o n ,s u c ha sc h a r a c t c rl i s ta n dc h i n e s e c h a r a c t e r se t c a tm es a m et i m e t h ec h 啪c t e r i s t i c si sap h y s i c a lv o l 砌es m a l l ,t h ec o n s 啪e l o w ,t h ef u l l c t i o ni ss t m n g ,t h eo p e r a t i o ni si nb r i e 血eo v e r c o m i n gm ei n c o n v e n i e n c et 1 1 a t t r a d i t i o n a lu p g r a d eb r i n g ,t l l es a v i n gm ec o s t ,t 1 1 er a i s i n gt h ee 伍c i e n c y ,s a t i s 母i 1 1 9t h eh i g h e r n e e do fc u s t o m e lt h a tm e t h o dc a nr a i s et h ep r o d u c tc o m p e t i t i o na b i l i t ya n d 也es e r v i c e e m c i e n c i e so ft 1 1 es y s t e ms u p p l i e r ,n l u sd e v e l o p i n gt h eo p p o s i t ea i l dp e r f e c tp r o d u c t b a c k i o g e x p e r i e n c e f o rm ea f t e r t i m e , h a v i n gt h eg o o de c o n o m i cp e r f b 珊a 1 1 c ea n ds o c i a l p e r f b m l a n c e so f c o m p a r e s k e y w o r d s :e m e m e te m b e d d e ds y s t e mp r o t o c 0 1s o f t w a r eu p g r a d e d i i 独创性声明 本人声明所呈交的学位论文是我个人在导师指导下进行的研究工作及取得的研究 成果。尽我所知,除文中已经标明引用的内容外,本论文不包含任何其他个人或集体 已经发表或撰写过的研究成果。对本文的研究做出贡献的个人和集体,均已在文中以 明确方式标明。本人完全意识到本声明的法律结果由本人承担。 学位论文作者签名:弄葡若 日期:扣j 年占月1日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,即:学校有权保 留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本 人授权华中科技大学可以将本学位论文的全部或部分内容编入有关数据库进行检索, 可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 保密口, 在年解密后适用本授权书。 本论文属于 不保密团。 ( 请在以上方框内打“”) 学位论文作者签名:身而孝 日期:弘;年j 月j 日 指导教师签名: 日期:年月日 华中科技大学硕士学位论文 1 绪论 2 l 世纪是一个充满挑战性的时代,科学技术日新月异,特别是计算机网络已经成 为人们广泛使用的工具。随着网络及通信技术的飞速发展,i n t e m e t 的越来越普及到人 们的日常生活中,人们对h l t e m e t 的需求也越来越大,h l t e m e t 所带来的好处也越来越 得到体现,使许多的信息家电、智能仪表等非p c 设备接入到互联网成为可能,从而实 现网络化、智能化的集中管理,带给人们更精彩、更方便的生活方式。 产品的设计包括硬件设计和软件设计,每种产品的设计部不可能做到尽善尽美。 j 尤其是软件部分,由于其灵活性较大,也往往是最容易出错的地方。在一种新产品刚 推上市场的过程中,往往会发现系统中存在某种可修复的“b u g ”,一种情况是通过 软件的修改就可达到目的,另一种情况是虽然产品的软、硬件都没有问题,但随着形 势的发展,用户提出了更高的要求,这种情况能够通过修改软件就能达到。 由于目前非p c 智能设备不能满足现在的科学技术发展的需求,而且受工作地点的 限制,无远程升级功能,不能很好的对其升级。如果要使设备得到升级换代,根据以 往的做法,一种方式是将整个仪器换掉,另一种方式就是派专业人员到现场对仪表“开 膛破肚”进行升级,这两种方式都要投入大量的人力物力,以及可能造成设备损坏, 资源浪费大,效率低,给应用方带来使用上的不便。 因此,提出“基于以太网的嵌入式系统远程软件升级技术的研究”,实现电子产品 网络化、智能化,以达到远程软件升级的目的。 1 1 课题意义 目前产品的更新换代越来越频繁,一个产品刚刚上市或上市不久,另一个新产品 就接踵而来,产品更新往往导致一些产品的价值快速衰退。因此,产品由于更新加速 而导致产品生命周期缩短。传统的家用电器、仪器仪表、工控单元等,一旦做好到用 户处,由于操作系统、软硬件不兼容等原因,要进行应用软件的更新升级,非常困难, 必须更换相应的电路板,这样造成资源浪费、造成很多麻烦和不可靠因素。 随着互联网的普及,嵌入式系统也已越来越重视网络特性。以太网是当今最受欢 迎的局域网之一,现已成为社会重要的基础信息设施,是信息流通的重要渠道。如果 华中科技大学硕士学位论文 充分利用现有的网络资源,再结合m c u 在应用可编程特性,可以通过i n t e m e t 、程控 电话网等连接服务器和远程产品进行自动升级,即将嵌入式的设备连接到i n t e m e t 上, 就可以实现嵌入式系统远程升级【1 】。 软件升级是一种可以使用户在不增加太多资金投入便可使产品获得更强更完善功 能的手段。本文研制开发基于以太网的嵌入式远程软件升级系统,采用网络技术和单 片机技术相结合,用软件实现t c p i p 协议,这样可较好地解决产品的互联网接入问题, 通过以太网下载版本最新、功能更强的用户程序,实现系统的更新、升级,克服传统 的软件升级带来的不便,不但节省用户的成本,提高效率,满足了用户更高的需求, 且可以提高系统供应商的产品竞争力和服务效率,从而为今后开发相对完善的网络化、 智能化电子产品提供了一个良好的技术平台,具有较好的实用价值。 1 2 国内外产品升级技术的现状 互联网已经进入一个崭新的时代,它成为我们日常生活的一部分。无论是在家中 在办公室或者其他地方,都能通过p c 机方便地连接到网络上。众所周知,p c 机系统 软件和应用软件的升级己从原来的传统邮寄升级包到使用e m a i l 邮寄升级包,再过渡 到基于i n t e m e t 网络的自动升级。国产杀毒软件瑞星、江民杀毒王等升级,用户只需在 软件中点击升级按钮或在程序中设置自动升级,软件升级就会自动完成。大名鼎鼎的 p c 机操作系统w i n d o w s 的自动更新体现了使用网络自动升级的优势。 目前电子产品升级技术正兴起于电子电路研制、生产、功能不全、设备更新能力 差、故障诊断等方面。它的出现大大提高了电子产品的质量可靠性,缩短了电子设备 的维护时间,大幅度降低了电子设备的更新、检修费用。大多数嵌入式系统为了实现 多个m c u 之间的信息交流,利用r s 2 3 2 、r s 4 8 5 等总线将m c u 组网,但这种网络 的有效途径比较有限,有关的通信协议也比较少,并且一般是孤立于h l t e n l e t 以外的。 i n t e m e t 现已成为社会重要的基础信息设施之一,是信息流通的重要渠道,如果嵌 入式系统能够连接到i n t e m e t 上面,则可以方便、低廉地将信息传送到几乎世界上的任 何一个地方。将嵌入式系统与i n t e m e t 结合起来的想法其实很早以前就有了,主要的困 难在于,i n t e m e t 上面的各种通信协议对于计算机存储器、运算速度等的要求比较高, 华中科技大学硕士学位论文 而嵌入式系统中除部分3 2 位处理器以外,大量存在的是8 位和1 6 位m c u ,支持t c p i p 等i n t e m e t 协议将占用大量系统资源。 单片机、d s p 或a i 己m 已经在家庭和工业的各个领域得到了应用,通称嵌入式系 统。单片机技术的发展对智能仪器的发展起着重要的怍用,同样,智能仪器的发展也 对单片机的发展提出了更高的要求,片内带快闪存储器f l a s h m e m o r y 的单片机, 便得到了业界的热烈响应和广泛的市场认可。快闪存储器比普通的e p r o m 存储器的 改进之处是不仅可以读,而且可以用软件快速地擦除和写入,取消了专用编程设备, 器件本身也不必从系统电路板上取下。如果产品发往外地,或是远涉重洋出口海外, 就需要生成一个庞大的全球性售后服务网络对产品跟踪或更新。 软件升级形式有:第一种是通过更换产品的存储器芯片进行升级;第二种是开发 方将升级包发给用户,通过p c 机及串口做媒介下载升级包,对产品进行升级;第三种 是产品直接上嗣,按键确认升级;第四种是产品具有远程诊断和维护,跟踪产品的状 况。第三种是目前流行的一种方式,第四种是软件升级的一种趋势。据了解,国内外 正在研究电视、冰箱等都具有远程升级、远程监控和管理功能,还有汽车、仪表、工 控单元等也朝网络自动升级方向发展,并且国外有部分公司正在研制具有网络接口的 微处理器。可见,随着因特网应用的f j 益普及,信息共享的程度不断提高。对于以单 片机应用系统为中心的小型嵌入式设备,怎样利用方便的因特网资源将嵌入式设备的 信息共享到因特网上,成为当今电子世界中的热门话题。传统的因特网应用以p c 为中 心,当代的因特网应用将转向以嵌入式设备为中心。据网络专家的预测,将来在因特 网上传输的信息中,将有7 0 的信息来自于小型嵌入式系统1 2 】。 利用单片机实现嵌入式因特网方案的技术难点在于:如何利用单片机自身有限的 资源对信息进行t c m p 协议处理,使之变成可在因特网上传输的i p 数据包。 1 3 本课题的主要研究内容 利用8 位单片机c 8 0 5 1 f 0 2 0 和i s a 网卡芯片t l 8 0 1 9 a s 构成远程升级系统,通过 编写运行在该m c u 上的一套精简的t c p i p 协议栈,通过网络高可靠的连接服务器和 远程升级系统,使产品达到软件远程自动升级的目的。本文的主要内容包括: ( 1 ) 确定总体方案; 3 华中科技大学硕士学位论文 ( 2 ) 系统硬件及软件结构的设计; ( 3 ) 设计硬件电路图; ( 4 ) 系统调试与测试。 1 4 本文内容编排 本文对该远程升级系统的设计进行了系统的论述。 第一章首先介绍了远程升级的意义,概述了国内外升级技术的现状和发展趋势, 阐述了本课题的任务。第二章主要对远程软件升级系统的总体方案进行了介绍,细述 了基于以太网的嵌入式系统的硬件结构和软件结构,阐述了通信协议的选择。第三章 介绍了协议的选择,论述了t c p i p 协议栈的几种典型协议。第四章主要介绍了元器件 的选型,详细论述了远程软件升级系统的工作原理,阐述了资源分配及抗干扰的设计。 第五章介绍了系统的调试,并论述了调试结果。最后对系统方案进行了总结,并提出 了一些建议。 华中科技大学硕士学位论文 2 总体方案设计 确定系统的总体方案,是系统设计中十分重要的一步。合理的总体设计来自于对 系统要求的全面分析和对实现方法的正确选择。 2 1 系统总体结构 基于以太网的嵌入式系统远程软件升级系统的结构如图2 1 所示,系统是由服务 器、i m e m e i 、用户产品组成。服务器是普通计算机,安装w i n d o w s2 0 0 0 x p 及以上版 本的操作系统平台的p c 机。用户产品即远程升级系统。 系统的升级过程是由用户产品发出升级指示,经过i n t e m e t 到服务器,服务器接受 指示后确认,然后开始传送数据,数据经i m e r n e t 到用户产品,用户产品自动的检索软 件的版本,并和本产品的软件版本对比,如果低于i n t c m e t 网上的版本,用户产品自动 下载软件,更新本产品的数据,从而实现产品升级的目的【3 1 。 服务器i n 钯m e t用户产品 图2 1 系统结构 为了研究基于以太网的嵌入式系统远程软件升级技术,在实际工作中我们采用 i u 4 5 连接服务器和嵌入式远程升级系统( 用户产品) 进行研究和调试。嵌入式系统的 硬件部分就是本课题主要研究内容。 经对课题任务分析,基于以太网的嵌入式远程升级系统可由下面三种方案来实现: ( 1 ) 以太网网络协议处理器( w 3 1 0 0 厄5 1 2 2 等) + 以太网控制器+ m c u ,如图2 2 所 不。 这是一种较简单的方式,不需要软件实现复杂的t c p ,i p 协议栈,不需设计最低层 的驱动程序;但是该方案采用的芯片较多,成本较高,线路复杂,抗干能力差。 圈吨,罾匿 圈 图2 - 2 嵌入式远程升级系统 华中科技大学硕士学位论文 ( 2 ) 以太网控制器+ m c u ( 软件实现t c p i p 协议) ,如图2 3 所示。 该方案的硬软件复杂,需要软件实现复杂的t c p i p 协议栈、最低层的驱动程序, 但该方案最廉价,并可以通过优化软件提高传输速度,适合于技术研究开发。 圈回匝至堕卜悃 图2 3 嵌入式远程升级系统 ( 3 ) 集m c u 、以太网控制器、网络协议处理器等的单芯片方案,如图2 4 所示。 该方案是最简单的一种,硬件电路、软件结构简单,不需要软件实现复杂的t c p i p 协议栈、最低层的驱动程序,但价格昂贵。 区亟) 怔圈h 回 图2 4 嵌入式远程升级系统 通过以上分析说明。本系统采用第( 2 ) 种方案,虽然在电路设计和软件编程上比 起第( 1 ) 种、第( 3 ) 种方案要复杂一些,但对于本课题的研究,是很有意义的。该 方案具有如下优点:不依赖p c 机或高档单片机,真正实现8 位单片机系统直接接人因 特网,整个系统完全自给自足;使用外围器件少,系统成本低。 2 2 硬件结构 基于以太网的嵌入式远程升级系统硬件结构如图2 6 所示。远程升级系统的主要 主控部分单片机、网络接口、人机接口、存储接口等功能模块组成【4 1 。 图2 - 5 远程升级系统框图 6 华中科技大学硕士学位论文 该系统是用于软件的远程升级,传输数据的准确性、可靠性,系统的稳定性是此 嵌入式系统所要考虑的主要性能指标,同时,此嵌入式系统能准确、快速的连接到服 务器p c 机上,进行数据下载,是其系统的直接体现,因此,本系统根据以上要求应该 具备以下几个特点: ( 1 ) 体积小,功耗低; ( 2 ) 操作简单,易于二次开发; ( 3 ) 具有高可靠性和稳定性; ( 4 ) 准确的进行远程升级。 2 2 1微处理器m c u 随着微电子技术的发展,单片机的不断扩展满足嵌入式应用系统的各种外围电路 与接口电路要求,突显其对智能化控制能力。基于以太网的嵌入式远程升级系统采用 单片机为主控制器。 m c u 是整个系统的核心,控制和协调其它四个部分的工作,实现网络连接、数据 通信,完成数据链路层、网络层的协议转换,进行参数修改、数据交换等任务。从以 太网接收来i p 包,进行拆包,写入数据;或者将远程系统的数据帧,重新打成i p 包, 向以太网发送,完成数据的通信,达到对远程系统的升级目的。 2 2 - 2 存储器接口 由于单片机的存储器容量有限,对于本远程升级系统的要求实时传送信息、更新 产品数据时,需要扩展外部数据存储器和程序存储器。存储器接口结构如图2 6 所示。 图2 - 6 存储器接口结构 2 2 3 人机接口 通过人机接口实现各种参数输入、输出、运行状态的显示。键盘采用4 4 的按键, 通过键盘实现选择、升级、确认、复位等功能。显示采用1 2 8 6 4 点阵液晶显示屏, 进行字符及汉字等信息的显示,如i p 地址、设备已升级、正在升级中、请等待、恭喜 7 华中科技大学硕士学位论文 成功升级等一些提示语。其特点是直观显示升级过程、数字接口、体积小、重量轻、 功率消耗小。人机接口结构如图2 7 所示。 2 2 4 网络接口 图2 7 人机接口结构 设备接入到互联网,从而实现远程升级,必须设置网络接口。网络接口部分包括 网络控制器、隔离变压器和r j 4 5 组成。网络接口结构如图2 6 所示【5 1 。 图2 8 网络接口结构 2 2 5 预留接口 通过预留的i o 插座及r s 2 3 2 ,方便今后开发相对完善的应用产品,如进行二次开 发。 2 3 软件结构 图2 9 预留接口结构 基于以太网的嵌入式远程升级系统的程序设计主要包括系统程序设计和通信程序 设计。系统程序设计指网络驱动程序、通信程序、数据处理程序、显示程序、键处理 程序和菜单处理程序等各种子程序,系统程序协调各部分的工作,完成我们所需的各 种功能;根据各部分功能要求,系统程序使用模块化设计,大大简化了设计和调试工 作,节省了资源,缩短了设计周期。通信程序设计,采用软件设计方法实现t c p i p 协 议f 6 1 。 华中科技大学硕士学位论文 为了编写和调试的方便,节省资源。程序设计时,使用模块化设计。这样,在设 计中,就可以根据各部分具体要求分别设计程序,大大简化了程序的设计和调试工作, 节省设计周期。 为满足系统的要求,编写软件系统必须具有以下的特性:易读性、易维护性、实 时性、可测试性、准确性、可靠性。 ( 1 ) 主程序结构 主程序完成对网络驱动程序、数据处理程序、显示程序、菜单功能处理程序等各 子程序的协调工作。本系统的主程序分为初始化部分和循环处理部分,流程图如图2 ,1 0 所示 7 1 。 图2 1 0 主程序流程图 程序初始化部分完成对网络控制器、存储器、显示、键盘和通信等进行初始化。 循环处理部分主要完成系统显示程序、开关状态的查询,查询是否有功能菜单键 按下,如果有,执行菜单处理程序,进行参数修改和升级,并把相应的参数和升级提 示语送到显示缓冲区,进行显示,再执行用户程序。键盘响应采用中断的方式;以太 网数据接收的数据缓冲任务作为另一中断的中断服务程序,如果没有中断产生,则循 环执行主程序。 9 华中科技大学硕士学位论文 佗) 网络接口程序 在工作过程中要实现数据包的接收发送,必须正确地对相关寄存器单元进行设置, 才能正常的数据通信,实现i n t e m e t 网络的联网。本系统就是通过单片机来控制网络的 相关寄存器单元,来实现网络联接,达到联网升级的目的。控制程序可以分为以下4 个部分:网络的复位及初始化、数据包接收、数据包发送和数据处理。 ( 3 1 显示程序 本系统中,由于系统的需要,要求显示程序能够完成单字符显示,也能完成多字 符显示。为了准确的显示所需内容,每次显示时,程序都得检查液晶模块的状态,看 液晶是否在上次显示完毕没有。在显示时,首先要将显示状态字写液晶,再把显示的 x 、y 坐标分别写入液晶中,再后按区码和位码分别写入液晶中完成一次显示。显示程 序流程图如下图2 一1 1 。 图2 1 1 显示程序流程 ( 4 ) 键盘程序结构 本系统中,键盘程序采用的是中断扫描方式嗍。中断采用的是外部中断6 ( 中断向 1 0 华中科技大学硕士学位论文 量为:o x 0 0 9 3 ) ,中断标志为i e 6 ( p r t l i f 6 ) 、中断允许位为e x 6 ( e i e 2 4 ) 、中断级 控制位为p x 6 ( e i p 2 4 ) ,键盘处理流程如图2 1 2 。 图2 1 2 键盘处理流程序 ( 5 ) 功能菜单程序 功能菜单程序设计是这个系统中一个很重要的部分,它决定了系统参数的设定与 修改,是这个系统的操作性能最直接的体现。程序流程图如下所示: f 显示菜单l i 项目信息 l , l 根据用户选择 l 执行相应功能 图2 1 3 菜单处理流程图 华中科技大学硕士学位论文 当有功能菜单键被按下时,程序进入到主菜单中,根据所需,进行各种作用的设 置,确定后,根据用户选择的结果,执行相应的功能程序。 2 4 工具软件选择 单片机的c 语言编译器 9 l :k i l lc x 5 1v 7 1 c y g n a l 的i d e 开发器:s i l i c o nl a b o r a t o r i e si m e g r a t e dd e v e l o p m e me n v i r o n m e m ( i d e ) v 2 2 c y 印a l 的i 0 口配置软件:c o d ec o n f i g i l 枷o n 印刷电路板制作软件:p r o t e l9 9 s e 串口调式软件:串口调试助手v 2 1 1 2 华中科技大学硕士学位论文 3 协议选择 t c p i p 协议栈一金已经成为开放系统互联的标准,与其它任何协议相比,t c p i p 协议能够提供更好的交互操作性能,可以在大多数系统中使用,并且它可兼容多种网 络技术,因此t c p ,i p 协议非常流行并且已经得到了广泛使用【9 1 。 3 1 网络连接方案比较 利用8 位m c u 通过精简的t c p ,i p 协议栈来连接以太网i ,现在已有的方案如表 3 1 所示。 表3 1常见的m c u 连接网络的方案比较 采用的 内存代码所实现的 方案物理层特点,评价 处理器需求尺寸协议栈 s l i p p p p 不能连接以太网 a n 2 1 2 0h c 9 0 8 g p 3 23 8 4 b v l e 6 k bs e r i a l u d p 【p t c p 以p 协议栈用a s m 编 8 0 5 2 1 p h a r d c z 8 0 5 13 2 k b v t e1 5 k be t h e m e t写且以l i b 形式发 u d p 布,不利于移植 t c i pl e a n p i c5 0 0 b v t e1 0 k b p p p t c p i p s e r i a l 只有s l i p 、代码过 s e r v e r,u d p 于简化 t c p ,u d p 代码过于简化 m s p 4 3 0m s p 4 3 01 k b v t e5 k be m e m e t ,i p t c p ,u d p 参考t i n y t c p 设计 a d u 0 8 1 2a d u 0 8 1 2 l k b y t e 5 k be t h e m e t ,i p s c e n i xs c e n i xm c ut c p ,l pe 也e m e t使用高速单片机 r a b b i tr a b b j tm c ut c p i pe t h e m e t使用高速单片机 可见,目前尚无运行在c y g n a l8 - b i tm c u 上的具备以太网连接功能、支持t c p i p 协议的解决方案。因此,在本项目中,希望能够在c y g n a l 典型的8 位单片机上做到以 太网协议栈的支持。 3 2t c p i p 协议选择 t c p i p 最先是在u n i x 系统里实现的,后来的l i n u x 、d o s 、w 烈d o w s 也实现 了t c p i p ,随后t c p i p 协议也被移植到其它嵌入式的处理器上, 由于指令以及资源上的原因,在u n i x 上实现的t c p i p 协议的原代码并不能够直 接移植到8 位的单片机上。单片机的程序空间是极为有限的,直接寻址的空间仅6 4 k 字节,可用的内存r a m 也是非常小的,最多只能扩6 4 k 的r a m 。单片机的运算速度 华中科技大学硕士学位论文 也极为有限,一般只有2 m i p s ,而电脑上的处理能力在1 0 0 m i p s 以上。 因此,嵌入式系统尤其是8 位单片机上的t c p i p 协议栈需要简化专门设计【l o l 。可 以用来参考的协议栈包括如表3 2 所示。 表3 2 常见嵌入式t c m p 协议棱比较 方案内存需求代码尺寸特点评价 协议栈用a s m 编写且以l m 形式发 8 0 5 2 1 p h a r d c z 3 2 k1 5 k b 布,不利于移植 t c p i pl e a ns e r v e ro np i c5 0 0 b5 k b 只有s l i p 的支持,不能连接以太网 t c p i ps t a c ko nm s p 4 3 01 k b5 k b 代码过于简单,不利于扩展 l w i p1 0 k b4 0 k b 资源需求稍多 t i n v t c p5 0 0 b6 k b 比较可行的方案 u i p0 6 5 0 0 b5 k b 比较可行的方案 u c i d l o - 3 需要和u c ,o s 这一实时内核配合 e t h e r n u t 需要和n u to s 这一实时内核配合 有使用说明,源代码,可在5 1 系列单 z i i p 0 2 1 l k1 5 k 片机上使用 综合上表,在本方案中,选择z 1 i p 0 2 、u i p0 + 6 作为参考设计。 3 3 网络协议简介 i n t e r n e t 网络是一个网中网,它包括了不同类型网络,连接的结点计算机的类型 也各不一样,并且计算机上所运行的操作系统也千差万别,为使网络中的所有结点都 能成功的通信,那么必须要使用一种相同的“语言”,这就是网络协议。在i n t e r n e t 上广泛采用的协议是t c p i p 协议。t c p i p 是t r a n s m i s s i o nc o n t r o l p r o t o c 0 1 i n t e r n e tp r o t o c 0 1 的简写,中文译名为传输控制协议互联控制网络协议。 是用于国际互联网的一套协议,它让使用不同的操作系统的各种不同型号的计算机之 间以及不同网络之间进行相互通信,从而可以相互连接并组成最大范围的广域网 ( w a n ) ,因此该协议是“因特网”( i n t e r n e t ) 的基础“。 二黼_ i f _ 懑“_ _ _ = _ _ i 艨臌羼 i ;二二。 曩誊瓣i 嘲l 羼 # “k 女w * 删 誊:竺塑鍪鎏誉隰躺 鬟黼蹙番旒l 臻 图3 】网络协议层图 华中科技大学硕士学位论文 通常,t c p i p 协议是个四层协议系统,如图3 1 所示。由下至上依次包括数据 链路层、网络层( 含i p 、i c m p 、i g m p 、a r p 、r a r p 、r i p 、o s p f 等协议) 、传输层( 含 t c p 、u d p 协议) 和应用层( 含t e l n e t 、f t p 、s m t p 、p o p 3 、h ”p 等协议) ,每一层负责 不同的功能“。 网络应用层要有一个定义清晰的会话过程,如通常所说的h 婶、f t p 、t e l n e t 等。在 本系统中,嵌入式系统接收来自h l t e m e 拜口数据终端的数据,直接送到对像系统或放到 s r a m 中暂存,没有太大的数据要处理,而应用层只对大的数据报作打包拆报处理, 所以,本文没有用到网络应用层。 传输层让网络程序通过明确定义的通道及某些特性获取数据,如定义网络连接的 端口号等,实现该层协议的传输控制协议t c p 和用户数据协议u d p 。在本系统中使用 u d p 数据报协议。 网络层让信息可以发送到相邻的t c p i p 网络上的任一主机上,i p 协议就是该层中 传送数据的机制。同时建立网络间的互连,应提供a r p 地址解析协议,实现从i p 地址 到数据链路物理地址的映像。 图3 2 网络层次关系图 卤 华中科技大学硕士学位论文 链路层由控制同一物理网络上的不同机器间数据传送的底层协议组成,实现这一 层协议并属于t c p i p 协议组。在本系统中这部分功能由单片机控制网卡芯片 r t l 8 0 1 9 a s 实现。 但由于完整的t c p i p 等i n t e m e t 协议将占用大量系统资源,因此在8 位单片机上实现 上将带来了困难,为了在8 位单片机上实现t c m p 协议,放弃完整的t c p 栈,仅使用u d p 协议等必要的协议栈,这样可以在软件上加以简化,节约硬件成本。 为了在单片机实现t c p i p 协议栈,使硬件连接到互联网络,需要用软件实现a i 冲 协议、i p 协议、i c m p 协议和u d p 协议,而用硬件实现m a c 层和物理层接口,各部分的 结构关系,如图3 2 所示。 ( 1 ) t c p 传输控制协议 t c p 协议是一种提供面向连接的可靠的字节流传送服务协议,不需要关心这些字 节是怎么样进行传输的。但t c p 数据的传输是通过i p 协议进行的,i p 协议的传输单位是 i p 数据包。因为用户提供的字节流数据可能很大,而一个i p 数据包所能容纳的字节有限 的,因此,t c p 协议必须将字节流数据进行分割并组织成i p 数据包,在目标主机的t c p 协议将这些分割的数据再组织成数据流1 2 j 。t c p 协议数据包有自己的头部和数据区, 是一个t c p 数据包的段,t c p 数据段的格式如表3 3 所示。 表3 3t c p 数据段的格式表 034 91 01 5 1 63 1 t c p 源端口号t c p 目标端口号 序歹号 确认号 首部长f保留标志窗口大小 校验和紧急指针 选项+ 填充 数据区 头部长字段的值是3 2 位计的t c p 段头部的长度。因为t c p 头部有个选项字段是可选 的,所以需要这个字段来区分t c p 头部和数据区。 源端口和目标端口用于指定发送方和接收方的t c p 端口号。t c p 的端口号必须指 定。这是因为一个t c p 连接由发送方和接收方的i p 地址和t c p 的端口号组成,如果少其 中一个,就不能够确定处理数据的应用程序了。 华中科技大学硕士学位论文 ( 2 ) 虹心地址解析协议 a r p 协议用于i p 地址到对应的硬件之间提供动态映射。 对于以太网而言,每个网络接口均有一个4 8 b i t 的硬件地址,这就是通常所说的 m a c 地址,在硬件层次上进行的数据帖交换必须有正确的m a c 地址。但t c p 艘协议对 网络接口也有自己的地址,即3 2 b i t 的i p 地址。程序只知道目的端的i p 地址并不能发送 一帖数据至目的主机,还需要知道目的端的硬件地址才行。a r p 协议的功能就是在i p 地址和m a c 地址之间提供动态映射,即将逻辑i n t e m e t 地址翻译为对应的物理硬件地 址。a r p 协议的请求和应答长度为2 8 个字节,而以太网封装中,数据部分的长度至少 应为4 6 个字节,因此还需要在帖末尾添加1 8 个字节的填充符,这样加上以太网部分的 封装后,一个完整a r p 协议报文的结构如表3 4 所示。 表3 4a r p 协议报文格式表 0 781 51 63 1 硬件类型 协议类型 硬件地址长度 协议地址k 度 操作代码 发送方硬件地址( 以太网为6 字节) 发送方协议地址( i p 地址为4 字节) 目标方硬件地址( 以太网为6 字节) 目标方协议地址( i p 地址为4 字节) a ,协议的操作过程是这样的。当传送过来的数据包要传向个l a n 的主机时, 该包在到达网关后,网关回要求a r p 程序找到物理主机或与i p 地址相对应的m a c 地址。 a r p 程序接到请求后,自动在存中寻找,如果找到该地址,则向网关提供该地址,以 便让此包转换成相应的长度和格式传送至主机。如果未找到该地址,a f u p 程序就会在 网上以广播的形式发送a r p 地址请求。网络中其他机器就到该请求,会检查本机地址 与a r p 请求中i p 地址是否相同,如果相同,则发送a 砌,应答,报告本机m a c 地址。a r p 程序在接受到a r p 应答后,更新自己的缓存,并将数据包发送到相应的m a c 地址。 ( 3 ) i p 网际协议 i p 协议时t c p i p 协议中最为核心的协议,所以的t c p 、u d p 、i c m p 、i g m p 数据都 以i p 数据报格式传送。i p 协议为数据提供不可靠的无连接传输。它不保证i p 数据报能成 功的到达目的地,也不提供错误处理,任何要求的可靠性都必须由上层协议提供。由 华中科技大学硕士学位论文 于在程序中用到的i c m p 协议和u d p 协议都是封装在i p 协议数据报中的,因此首先应了 解i p 协议数据报的格式。 i p 的数据报的i p 首部固定长为2 0 字节,除非含有选项字段,其格式如表3 - 5 所示。 表3 5i p 数据格式表 o3478 1 51 61 81 93 1 版本号头长度服务类型t o s总长度 标识标志l片偏移 生存时间1 v r l上层协议标识头部校验和 源i p 地址 目的i p 地址 选项 数据 在本系统中,i c m p 协议和u d p 协议均要求使用i p 封装,i c m p 报文和u d p 报文的内 容位于i p 数据报的数据部分中。 ( 4 ) i c m p ( i m e m e t 控制报文协议) 由于i p 协议仅提供不可靠的传输,而不会提供端到端的或节点到节点的确认,对 数据也没有差错控制。通常i p 协议只提供报头的校验码,而不提供
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论