(机械电子工程专业论文)嵌入式系统接入internet的研究.pdf_第1页
(机械电子工程专业论文)嵌入式系统接入internet的研究.pdf_第2页
(机械电子工程专业论文)嵌入式系统接入internet的研究.pdf_第3页
(机械电子工程专业论文)嵌入式系统接入internet的研究.pdf_第4页
(机械电子工程专业论文)嵌入式系统接入internet的研究.pdf_第5页
已阅读5页,还剩49页未读 继续免费阅读

(机械电子工程专业论文)嵌入式系统接入internet的研究.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

长春理工大学硕士学位论文原创性声明 本人郑重声明:所呈交的硕士学位论文嵌入式系统接入i n t e m e t 的研究是本人 在指导教师的指导下,独立进行研究工作所取得的成果。除文中已经注明引用的内容 外,本论文不包含任何其它个人或集体已经发表或撰写过的作品成果。对本文的研究 做出重要贡献的个人和集体均已在文中以明确方式标明。本人完全意识到本声明的 法律结果由本人承担。 作者笠名:链2 年土月堕日 长春理工大学学位论文版权使用授权书 本学位论文作者及指导教师完全了解长春理工大学硕士、博士学位论文版权使 用规定”,同意长春理工大学保留并向中国科学信息研究所、中国优秀博硕士学位论文 全文数据库和c n k i 系列数据库及其它国家有关部门或机构送交学位论文的复印件和 电子版t 允许论文被查阅和借阅。本人授权长春理工大学可以将本学位论文的全部或 部分内容编入有关数据库进行检索t 也可采用影印、缩印或扫描等复制手段保存和汇 作者虢? 毯鳗上年月堕日 雌g 磊泓年j 一盥 摘要 目前嵌入式设各已经广泛的应用到了人们的生活和工业生产中,将嵌入式设备 接入i n t e m e t ,实现信息资源的共享,具有重要的现实意义和经济价值。嵌入式接入 h l t e m e t 的关键问题是其实现成本问题和安全问题。 嵌入式设备中,大量存在的是8 位单片机,因此本文针对8 位单片机提出了一种 具体接入i n t e m e t 的方寨:单片机+ 改进的u i p 协议+ 网络接口芯片。并从硬件和软件两 方面进行了分析。 硬件方面,首先选取了一款8 0 5 1 单片机s t c l 2 c 5 a 和网络接口芯片r t l s 0 1 9 a s 咀及其它的外围器件然后设计了系统电路,将单片机连入了以太网。软件方面首先 对现存t a p 协议进行了分析,针对它的不足,做了改进然后将改进后的u l p 协议植入 了单片机,并设计了r t l 8 0 1 9 a s 的驱动程序最后对单片机在i n t e m e t 上传输数据时 的安全性进行了研究,设计了一套在8 位单片机上应用的安全协议。 为了验证方案的可行性,对系统进行了测试,结果表明,该设计不仅能够很好的 进行数据传输,还实现了对数据的加密,保证丁其传输的安全性。 关键词:单片机i n t e r n e tr t l 8 0 1 9 a s u i p 协议 加密算法 a b s t r a c t c u r v e n t l y e m b e d d e dd e v i c e sh a v eb e e nw i d e l ya p p l i e dt op e o p l e + sl i f e a n di n d u s t r i a l p r o d u c t i o n i th a si m p o r t a n tr e a l i t ys i g n i f i c a n c ea n de c o n o m i cv a l u et oa c c e s st h ee m b e d d e d d e v i c e sml m e m e ts h a r i n gi n f o r m a t i o nt e 、l r c 1 kk e yp r o b l e mo f t ke m b e d d e ds y s t e m a c c e s s e dt oi n t e m e ti sa c h i e v i n gc o s ta n ds e c u r i t y i nm ee m b e d d e dd e v i c e s m o s to f t h e m :l l - e8 - b i ts i n g l e c h i p s oas p e c i f i cf o r m u l af o r s i n g l e - c h i pa c c e s st oi n t e m e ti sp r o p o s e d :s i n g l e c h i p + i m p r o v e du l pp r o t o c o l + n e t w o r k i n t e r f a c ec h i pa n da n a l y z e df r o mh a r d w a r ea n ds o f t w a r ea s p e c t s i nt h eh a r d w a r ea s p e c t f i r s t l ys e l e c t e da8 0 5 i s i n g l e - c h i ps t c l 2 c 5 a an d w o r k i n t e r f a c ec h i pr t l 8 0 1 9 a sa n do t h e rp e r i p h e m ld e v i c e s t h e nd e s i g n e dt h es y s l e mc i r c u i t a c c e s s e d t h es i n g l e - c h i p t o t h e e t h e r n e ti n t h e 矗w 甜ea s p e c t f i r s t l y 皿a i v z e d t h ee x i s t i n g u l pp r o t o c o l p o i n t e do u lh i sd e f i c i e n c i e sa n di m p m v e dt h e ni m p l a n t e dt h ei m p r o v e du i p p r o t o c o li n t ot h es i n g l e c h i p d e s i g n e dr t l 8 0 1 9 a sd r i v e rp r o g r a m a tl a s tr e s e a r c h e dt h e d a t a ”a n s m l s s o ns e c u r i b o i lt h ei n l e m e la n dd e s i g n e da ne n c u 9 t i o na l g o r i t h mf o r8 - b i t s i n g l e c h i p i no r d e rt o 、t d 如t h ef o r m u l af e a s i b i l i t y t h es v s t e mi st e s t e dt h er e s u l t ss h o wt h a tt h e d e s i g nn o to n l yt r a n s p o r t sd a t aw e l l b u ia l s om a k eae n c r y p t i o no i lt h ed a t at oe n s u r et h e t r a n s m i s s i o ns e e u r i l t k n + o r d s :s i n g l e c h i p i n t e r n e tr t l 9 0 1 9 a su l pp r o t o c o l e n c d p t i o na l g o r i t h m 目录 摘要 a b s t r a c t 目录 第一章绪论 1 1 课题来源和背景意义 1 2 国内外发展现状 13 主要研究内容 第二章系统总体方案设计 21 系统设计原理 22 系统的硬件实现 23 本章小结 第三章u i p 协议的实现和改进 3lt c p i p 协议简介 32i i p 协议 33 t i p 掷议的改进 34 r t l 8 0 1 9 a s 的驱动程序设计 35 本章小结 第四章嵌入式i n t e k n e t 安全性设计 4l 密码学基本概念及主要算法 42 系统安全协议的设计 43 加密算法的选择 44 本章小结 第五章系统应用测试 5l p j 临命令的测试 52 单片机和主机的通信测试 j 3 加密算注的测试, 54 本章小结 结论 一 致谢 参考文献 ,0:。他他圯伸虬聆嬲龃们蛆艘北蛎盯螭伸 第一章绪论 1 1 课题来源和背景意义 传统的互联嗣应用以p c 机为中心,但是近年来随着计算机和通信技术的快速发 展,电子产品的发展越来越趋向微型化和智能化如何将以嵌入式为核心的小型嵌入 式设备接入i n t e r a c t 成为了当今电子界的热门技术。本课题正是在这样的背景下提出 来的,同时结合实际项目藜华公司的避雷针远程监控系统。 过去要在远程控制中心控制嵌入式系统和显示采集的数据,需要通过铺设专用通 信线,自己写通信协议,自己设计相关的软件和硬件,系统设计成本高,开发周期长。 并且随着工业和办公自动化程度的越来越高,分布式控制系统的网络变得越来越臃肿, 现场总线越来越受地域、负载容量、铺设成本的限制。另外,目前工业中上存在着多 种现场总线,例如c a n b u s 、l o n w o r k s 、p r o f i b u s 、f f ,这使得控制系统对现场总线的 接口协议多种多样,难以统一。圜此,现场采用将嵌入式设备接入i n t e m e t ,用基于以 太网的分布式控制系统代替基于现场总线的分布式控制系统,直接通过i n t e r a e l 笈布 数据采集命令,传递数据信息,不仅统一了标准还可以把控制网和信息网结合为一 个整体,为工厂或企业提供一个统一的网络平台相关管理人员、技术入员都可以实 时参考或处理发布在i n t e m e t 上的工业测控数据。从维护、管理、成本三方面考虑, 采用具有接入l m e m e t 功能的嵌入式设备是一个明智的选择。 另一方面,嵌入式系统已经广泛渗透到人们的生活中口】。在一台p c 机中,嵌入式 处理器无处不在,它的键盘、声卡、调制解调器、c d r o m 、硬盘、软盘驱动嚣以及 监视器中都应用了嵌入式处理器。此外,大量的家用电器例如洗衣机、冰箱、电水 壶、电饭煲、洗碗机、录象机、随身昕、报警系统等部出现了嵌入式处理器的身影。 将这些嵌入式设备接入i n t e m e t 人们旯需登录i n t e r n e t 可以随时随地的安排自己的生 活极大的提高了人们的生活质量p 1 。 综上所述,实现嵌入式设备的网络化,不仅可以提高生产效率,还可以方便人们 的生活,具有广阔的应用前景。 1 2 国内外发展现状 互联网技术的发展使人们实现了异地分享信息的愿望,而如何将广泛应用的嵌入 式设备接入i n t e m e t ,使生活更加方便、快捷则叉成为了人们急需解决的一个难题。现 在很多公司和研究机构正在对嵌入式i n t e m e t 进行着如火如荼的研究并取得了不少 成果。目前嵌入式接入i n t e m e t 主要存在以下几种方式。 1 采用嵌入式同关 这种方式是通过嵌入式网关实现t c p i p 协议,网关在嵌入式i n t e r n e t 中起到了很 重要的作用,它的一边嵌入式,一边是远程主机,自己起到了中间桥梁的作用。如果 嵌入式系统想要上网必须先和网关通信,通过网关接入i n t e r n e t 口】。如此以来,虽然 对嵌入式系统的要求降低了但是嵌入式系统和网关之间的通信会使成本加大。目前一 e m w a r e 公司及国内的武汉力源电子股份有限公司( p s ) 在这方面的技术比较成熟。 e mw a r e 公司开发出了嵌入式微i n t e r n e t 网络技术e m i t ,它是为8 1 6 位m c u 而设计,内部包括e m n e t 和e m g a t e w a y 两部分。e m n e t 协议在m c u 内部地内部运 行,相对t c p 1 p 协议来说,它是一个十分轻型的网络协议,其中在嵌入式部分,仅仅 保留了h t m l 的标记其它的服务部分都交给了客户机,由客户机采实现。通过这种 设计,将嵌入式设备端的内核e r n m i o r o 大大减小了,大小为1 k 。一般来讲,e m g a t e w a y 网关要支持t c p i p 协议并且能够运 t i n t e m e t 服务程序,所以对它的性能要求比较高, 通常采用桌面计算机或者性能比较高的嵌入式处理器m 装有e m n e t 协议的嵌入式设 备,通过微控制器网关e m g a t e w a y 就可以和h t t e r n e l 联接,如圉1l 所示。 - f 、 二;i 一一_ 、_ j 。盎。,。5 8 :! ”尸m 图iie m i t 应用系统简图 e m i t 技术的不足是软硬件设计的工作量较大对设计工程师要求较高它必须 熟知e m n e l 协议和相关的接口。并且,当系统处理e m n e t 协议时需要占用微控制器 的一部分资源空间,对微控制器的要求也较高,同时还需要p c 或者高性能的嵌入式 处理嚣做网关。优点是多个嵌入式应用系统可以连接到网关中的一个i p 地址上。 武汉力源公司( p s ) 推出了一款w e b e h i p 网络接口芯片p s 2 0 0 0 ,原理和e m i t 类 似。p s 2 0 0 0 内部固化了m c u n e t | 协议该协议与e m g a t e w a y 和o s g i 协议是兼容的。 它与嵌入式应用系统是通过s p i 三线串口连接起来的,芯片内部有1 7 条指令用来同 嵌入式应用系统交换数据。p s 2 0 0 0 通过标准的输入,输出口与各种嵌入式系统相连, 并且当嵌入式系统和i n t e r n e t 连接的时候。用不着考虑任何网络协议只需要完成与 p s 2 0 0 0 的通信工作即可,所以说,p s 2 0 0 0 是一款是专用网络接口芯片。嵌入式应用 系统通过p s 2 0 0 0 连接| m e m e t 时,p s 2 0 0 ) 还要与g a l e w a y 连接才能可接入i n t e m e t , 如图l2 所示。p s 2 0 0 0 与g a t e w a y 之间是通过r s 2 3 2 、r s 4 8 5 、m o d e m 等接口电路连 接在一起的具体选用哪种方式由它的控制字决定。 一r s 2 3 2 一一一一一 s p 口r s 4 8 5g r 一 ”。5 = _ ;,p ”“蒜if ) 8 0 “拦n 图i2p s 2 0 0 0 应用系统简圈 采用p s 2 0 0 0 的主要优点是:不用熟悉复杂的网络协议及其接口,应用时只需增加 - - 4 段接口程序即可大大减轻了设计工程师的负担,并且对m c u 芯片的运行速度 和内存空问没有特殊要求。它的缺点是需要p c 上安装专门的协议转换软件代价较 高。并且存在多个分散的单片机系统时,现场的网络布线不方便。 2 高档m c u _ - t c p p ;p 协议 在这种方案中,高档m c u 处理机的作用相当于一个p c 机,它可咀直接运行 t c p f l p 协议。如图1 3 所示。这些高档的m c u 处理机,主要是指采用3 2 位的c o l d f i r e 、 m i p s 、s h 3 、a r m 等,它们对t c p a p 坼议的处理主要有以下两种方式。 一种是m c u 通过嵌入式操作系统来处理t c p i p 协议嵌入式操作系统内核小, 并且高度的模块化,便于扩展,同时具有大量的应用程序接口【口】。主要有以下功能: 文件和目录管理、设备支持、多任务、图形窗口以及用户界面。目前市场上存在多种 嵌入式操作系统,如u c l i n u x 、r t l i n u x 、v x w o r k s 、n u c l e u sp l u s 以投v r t x s a 等。 它们通过自身内核或者是附加的网络组件可以支持t c p i p 协议。 另一种是采用固化了t p n p 协议的硬件芯片,如g e i k o i n s t r u m e n t s 公司的$ 7 6 0 0 a 等- 它支持h t t p 、s m t p 、p o p 3 、m i m e 等多种协议,通过外部硬件电路处理t c p a p 协议t 也可使用u b i c o m 公司的s x 单片机加虚拟外设的方式实现。s x 单片机属于 r j s c 结构,内部嵌有f l a s h 程序储存器可以运行h t t p 、s m t p 、p o p 3 、t c p 、u d p 、 i c m p 、i p 厦p p p 等协议,能在执行数据采集和控制功能的同时把数据打包通过外 接一个以太网控制芯片传送到互联网上。 】自# m c u r 、7 、r + 产2 = “明”2 = 爿远程主机l t c p ,l p、。r l - l 一一 图l3 高档m c u 接入i n m e t 结构筒图 这两种方式中,m c u 相当予一个p c 机,内部嵌入网卡可以直接处理t c p 九p 协议t 其缺点是高档嵌入式价格较贵,对技术人员要求高开发周期较长。 3 低档m c u + 精简的t c p f i p 协议 低档m c u 是指生产中经常用的8 1 6 嵌入式设备,它们的特点是运行连度慢资 源空间有限,如果运行t c p i p 协议则会占用大量资源,或者根本实现不了唧。因此, 低档的嵌入式设备接入l n l e m e l 必须对t c p i p 协议做出裁剪,提供能够满足昂低要求 的t c p w 协议i l 。低挡的m c u 嵌入裁剪后的t c p i p 协议,通过网络接口芯片就可 姓接入i n t e m e t 了,其结构如图l4 所示。 r + 一一 w i m c p 1 l,ll + b 爿接口忙= 孰“”嗍仁刮程主机 精简t c p i p o ”|、一 圉l4 低档m c u 接入i m e 眦t 结构筒囤 目前,市场上存在多种精简的t c p i p 协议,其中8 1 6 位系统中应用最广泛的是 t r i p 铷议。与其它t c p i p 协议相比,u l p 协议r a m 的需求和代码大小要小的多,这 个优点使得它可以方便的应甩到低端嵌入式系统上i 。u l p 实现了t c p 1 p 协议的四个 基本协议:a r p 地址解析协议、i p 协议、i c m p 网络控$ 0 报文协议和t c p 传输控制协 议。精简后的t c p s p 协议在功能上虽然受到了一定的限制但是对于低端m c u 而言, 如果不是传送大量的数据或命令还是完全可咀胜任的,并且这种方式的实现成本低、 性价比好,便于广泛应用,本文设计采用此方案。 嵌入式接八了i n t e m e l ,其安全问题不容忽视,目前国内外很多研宄机构从数据加 密技术、身份认证、数字簦名、舫火墙、安全审计、安全管理、安全内核、安全协议、 拒绝服务、网络安全性分析、网络信息安全监测、信息安全标准化等方面的进行了研 宄但是这些研宄基本上是基于3 2 6 4 位嵌入式系统进行的,对8 1 6 位嵌 式系统的 安全问题研究较少。 1 3 主要研究内容 本文研宽的主要内容是8 位单片机如何接入i n t e m e t ,并且保证其数据在i n t e m e l 上安全的传输,设计过程中,理论和实践相结合,理论方面进行了如以太网控制原理、 u l p 协议的实现及改进、加密算法中对称加密算法和哈希函数算法的设计等。实践部 分主要通过掌握开发工具,设计系统的接口电路,编写网卡驱动程序,u i p 协议实现 及改进的代码以及加密算法的代码。最后在k e i i 里运行调试程序,对系统进行测试。 本论文内容安排如f : 第一章主要阐述了课题的研究意义、国内外发展趋势以及研究内容。 第二章介绍了嵌入式系统接入i n l e m e t 的硬件设计方案,详细讲述各组成部分的 原理和接口电路。 第三章分析了u l p 协议的实现原理以及它的不足之处,对其进行了改进,详细介 绍了网络接口芯片的初始化接收和发送数据包的过程。 第四章研究了嵌入式接入i n t e m e t 的安全性问题,着重分析了加密过程以及加密 时用到的对称加密算法d e s 和哈希函数,设计了一套应用在8 位嵌入式系统的安全协 议。 第五章进行了系统性能测试,测试了系统的加密通信过程。 第二章系统总体方案设计 2 1 系统设计原理 在避雷针远程监控系统中,单片机的主要作用是负责处理前端传感器采集的数据, 并将其通过i n t e m e t 发送到主机,因此本文咀8 位单片机作为嵌入式平台的主处理器 进行研究。8 位单片机连接i n t e r n e t 的关键技术是在其内部实现t c p i p 协议,但是它 的处理遮度比较慢内存有限,要在其内部霉现完整的t c p 1 p 协议几乎不可能,通常 只有,2 位或“位嵌入式系统才能实现【l “。因此设计过程中采用了u l p 铷议。将其移 植到单片机内通过网络接口芯片接入i n t e m e t ,并且针对单片机中的数据在网络传输 中的安全采用对称加密算法和h a s h 函数进行了加密。其中u l p 协议是一种微型 t c p i p 协议在其内部主要实现了a r p 、i p 、 c m p 、t c p 等协议,设计过程中针对 u l p 协议的中u d p 协议的不足做出了改进,实现了u d p 作为服务端的功能。系统 的结构原理图如图2 】所示。 图2 i 系统结构原理图 22 系统的硬件实现 设计中应该尽量减少外围器件,以便简化硬件接1 3 、降低成本、缩短开发周期l ”】。 系统选用了s t c l 2 c 5 a 单片机和r t l 8 0 1 9 a s 网络芯片,此外还有存储器芯片6 2 2 5 6 、 锁存器7 4 h c 5 7 3 和电平转换芯片m a x 2 3 2 ,同络隔离变压器f b 2 0 2 2 以及网络接口 器件r j 4 5 。6 2 2 5 6 有3 2 k 字节的使用空间,用来存储接收到的数据包,以提高单片机 的数据处理速度。网卡芯片r t l 8 0 1 9 a s 主要用来完成对网络数据的发送和接收。网 络隔离变压器f b 2 0 2 2 用来对网络上的脉冲进行转换和滤波。 2 1 1s t c l 2 c $ a 单片机概述 s t c l 2 c 5 a 单片机是宏晶科技生产新一代增强型8 0 5 l 单片机,它的指令代码与传 统8 0 5 1 完全兼容,但是处理速度比它快8 1 2 倍。片上集有1 2 8 0 字节的r a m 4 个8 位i o 端,7 个外部中断源,传统的f 降沿中断或低电平触发中断,并新增支持上升 沿中断的p c a 模块。共有4 个1 6 位定时器:两个与传统8 0 5 1 兼容的定时器计数器 t 0 和t l ,没有t 2 另外两路p c a 模块可在实现2 个1 6 位定时器。工作频率可达 搁 3 5 m h z 。内部集成有8 1 0 专用复位电路2 路p w m ,8 路l o 位高速a d 转换( 2 5 0 k s ) t 可通过i s p 对选择6 时钟1 2 时钟模式的f l a s h 位进行擦除和编程。 2 2 2r t l 8 0 1 9 a s 网络接口芯片概述 r t l s 0 1 9 a s 是由台湾r e 出t e k 公司生产的以太网控制芯片,在工业生产中有着广 泛的应用,它采取以下三种方式与主机连接:跳线模式、p a p 模式和r t 模式i l ”。 l 主要性能 ( 1 ) 符合e t h e r i l n l i 与i e e e 8 0 23 标准。 ( 2 ) 全双工,收发可同时达到1 0 m b p s 。 ( 3 ) 内置1 6 k b 的s r a m 用于收发缓冲,降低对主处理器的速度要求。 ( 4 ) 支持8 川6 位数据总线8 个中断申请线以及1 6 个i o 基地址选择。 ( 5 ) 支持u t p ,a u i b n c 的自动检测支持】0 b a s e t 拓扑结构的自动极性修正。 ( 6 ) 允许4 个诊断l e d 引脚可编程输出。 ( 7 ) 1 0 0 脚的p q f p 封装,缩小p c b 尺寸。 2 内部结构 r t l s o i g a s 内部结构如图2 2 所示。可概括为数据编码解码逻辑、m a c 逻辑、 远本地d m a 接口,程d m a 接口以及其它端口五部分。 s a g 接口 二r 。 匦匦t 1 :黑l 面i 丽而。_ _ l ll 姒c l 压面而石磊i _ 一一下 一l e n a 【# 4 日目 1 1 一 l l l n # 心4 镕口 图2 2r t l 8 0 1 9 内部结构 远程d m a 接口的功能是嵌入式对r t l 9 0 1 9 a s 的r a m 写入或读取数据,当嵌入 式接收或发送数据时只需要操作远程d m a 即可。而本地d m a 接口负责r t l s 0 1 9 a s 与以太网之间接收或发送数据。 3 ,重要寄存器功能的介绍 c r :这个寄存器用来选择寄存器页、韧始化数据传输、远程d m a 操作控制、传 递开始结束命令,各位的定义如表2 1 。 表2 - 1c r 寄存器的各位定义 p s 0 和f s l 位用来选择寄存器页,如表2 - 2 所示 r d 2 、 表2 0p s o 和f s l 对应的寄存器页 r d 2r d l r d 0 功能 t x p 位用来表示数据包发送的状态。发送时t x p 位置1 。发送完后自动清零s t a s t p 位用来启动或停止命令如表2 4 所示。 表2 4 s t a 、s t p 位的功能 s t a s t p 功能 一_ 一 0 i 停止命令 】0 启动命令 c l d a 0 c l d a l :寄存器内部存储了当前d m a o c j 地址。 p s t a r t :初始化时指向接收缓冲区的开始页。 p s t o p :初始化时指向接收缓冲区的停止页。 b n r y :这个寄存器的作用是指向存储缓冲区中用户已经读走的页码 t p s r :当需要传输数据时它指向开始页。 t b c r o i :计算发送信息的字节。 f i f o :通过设置,i o 叩b a c k 后的f i f 0 内容允许主机检查。 r s a r 0 一i ;它们内部存放着远程d m a 的起始地址。 r b c r 0 - 1 :它们内部存放的是远程d m a 数据的字节数。 c u r r :接收数据时t 指向缓冲区中当前数据需要写入的地址。 2 2 3 系统硬件电路设计 整个系统的硬件连接原理图如图23 所示。 闰2 3 系统硬件连接原理图 l s t c l 2 c s a 单片机最小系统电路 单片机最小系统的电路图如图24 所示。 目2 4 早片d 【最小系统电路 其中,单片机晶振选用2 21 18 4 m h z ,复位采用r c 电路拨码开关s i 的作用是 控制s t c 】2 c s a 单片机的在线编程。e a 接v c c 表示从单片机内部程序存储器开始 执行程序。 2 s t c l 2 c 5 a 单片机与r t l $ 0 1 9 a s 的接口电路 系统接口电路如图2 5 所示单片机的p 0 口为系统的数据端口,用来和s d 0 s d 7 引脚交换数据- 它们之间通过锁存器相连。s a 0 s a l 9 是同络接口芯片的地址线,共 2 0 根t 其中s a 0 s a 7 接到单片机的p 2 口将s a 8 、s a 9 接v c c 剩下的接地。把 接口芯片的r t l 9 0 1 9 a s 的l o r b 、i o w b 管脚与单片机的,r d 、,w r 引脚相连。 一 i 圉2 5 单片机与网卡接口图 盯l 8 0 1 9 a s 的r s t d r v 引脚接到单片机的r e s e t 引脚。因为r t l 8 0 1 9 a s 采用 总线方式,即8 位数据线,所以将o i c s l 6 b 管脚接地往r t l 8 0 1 9 a s 中有跳线f j n 阳r 1 、 即插即用【p r i p ) 、r t 免跳线( r tj 哪p e r k s 曲三种模式来配置i 0 端口和中断但考虑到 单片机空间不足,实现即插即用方式存在较大难度,而耵免跳线模式需要外接一个 e 2 p r o m ,所以选择跳线模式,即将j p 端置于高电平。 r t l 8 0 1 9 a s 有a u i 、b n c 和u t p 三种接口,a u i 是1 0 b a s e 5 粗缆网线接口 b n c 是1 0 b a s e 2 细缆网线接口,u t p 是1 0 b a s e t 双绞线网线的接口,现在应用比 较普遍。具体选用哪个接口由r t l 9 0 1 9 a s 的6 4 ,7 4 7 7 三个管脚决定。当6 4 脚输 入高电平时,连接的是a u i ,当输入低电平时,连接的是b n c 或者u t p 。选择b n c 还是u t p 可以通过7 4 ,7 7 ( p l o ,p l i ) 管脚决定。 36 2 2 5 6 和7 4 h c 3 7 3 的接口电路 以太网上传输的数据包最大可以达到】5 0 0 多个字节,单片机内部根部无法存放这 么大的数据包因此在外部连接了一片数据存储芯片6 2 2 5 6 用来存储接收的数据, 它大大减轻了单片机的负担,提高了单片机的处理速度1 ”】。图2 , 6 为外部6 2 2 5 6 和 7 4 h c 3 7 3 的电路连接图。 酗2 6 外部6 2 2 5 6 和7 4 h c 3 7 3 的电路连接图 在图中,外部存储芯片6 2 2 5 6 的9 9 - 0 7 引脚接单片机的p 0 口,a 0 、a 7 引脚接锁 存器7 4 h c 3 7 3 的q 0 - q 7 引脚,a 8 a 1 4 引脚接单片机的p 20 一p 26 引脚,o e 引脚接 单片机的r d 引脚,w e 引脚接单片机的w r 引脚片选端i c s 接单片机的p 27 脚。 锁存器7 4 h c 3 7 3 的d 0 一d 7 管脚也接到单片机的p 0e l ,q o - q 7 引脚是与6 2 2 5 6 的 a 0 a 7 引脚连接的,l e 脚接到单片机的a l e 脚o e 接地。 4m a x 2 3 2 串口电平转换电路 由于计算机串1 7 1r s 2 3 2 的电平与单片机的串1 2 电平不一致,所以在设计电路时, 要进行电平转换a 该电路主要用于单片机程序的下载和调试,转换接口电路如图27 所示。 图27m a x 2 3 2 串口电早转换接口电路图 5 同络隔离变压器f b 2 0 2 2 的接1 3 电路 网络隔离变压器用于信号电平耦合,主要有两种作用,其一是使芯片与外部隔离 释蓬塍1ifll_陡蚱11 一肿肚砧m舢舳们肭斛枷川舭m一雌艋一既一l暑封剥习剥习烈司罩。 陲匪簿一 犟 一。芑:呲阱肼町蓰一一一 ;t 蓍到_1鼍 对网络上的脉冲进行转换和滤波,提高抗干扰能力,其二是增强信号,使其传输距离 更远,接e l 电路如图2 8 所示。 i n f i n f 一事 图2 8 隔离变压器f b 2 0 2 2 接口电路圈 23 本章小结 本章主要讨论了系统硬件平台的整体设计,简单介绍了s t c l 2 c 5 a 单片机和网络 芯片r t l 8 0 1 9 a s 给出了系统硬件框图井重点分析了单片机和r t l 8 0 1 9 a s 的接口 第三童u l p 协议的实现和改进 3l t c p i p 协议简介 u l p 协议是一种微型t c p i p 协议,它对t c p h a 协议做了大量的裁剪,仅保留了 a r p 、i c m p 、u d p ,i p 和t c p 协议的主要部分,其中u d p 协议是可选模块,功能比 较简单。为了更好地研究u l p 协议,我们先来了解一下t c p 胛协议。 t c p i p 由美国国防部在2 0 世纪7 0 年代中期提出它是一组完整的网络协议集 主要用于实现不同的网络结构和不同的操作系统之间的互连i l ”。t c p i p 协议不仪能 够保证数据传输的可靠性,还具有差错控制、流控制、连接控制等功能,它是目前世 界上芨展最成功,应用最广泛的通信协议。 t c p i p 协议由四个基于硬件层次上的概念性层次构成:应用层、传输层、网络层 和数据链路层”。所以t c p i p l 办议模型是分层结构的其中一些常用协议在t c p p 协 议模型中位置如表3 一l 所示。 表3 - i 常用拼改在t c p r l p 分层中的位置 层次协议 应用层 传输层 网络层 链路层 h t l rf t p 、t e l n e t 、s n m p 、d n s 等 t c p 、u d p i p 、i c m p 、i g m p 介质访问控制协议m a c 、以太网接口芯片驱动程序 1 应用层:该层用来为应用程序服务,以保证通信。主要包括s m t p 简单邮件传 送协议、t e l n e t 远程登录、s n m p 简单网络管理协议、f t p 文件传输协议等。 2 运输层;该层负责端到端的通信。本层中存在两个不同的传输协议:t c p 和u d p 。 t c p 是传输控制协议,它的特点是可靠性高,t c p 连接是基于字节流的,而不是消息流 消息的边界在端到端的传输中不能得到保留:对于应用程序发来的数据,t c p o 以立 即发送,也可以缓存一段时问以便一次发送更多的数据口i 。u d p 是一种无连接的用户 数据报协议,提供面向事物的不可靠信息传送服务,即它只负责把作数据报发送出去, 但是并不保证该数据报能够完整的到达另一端。 3 网络层:也叫做互联网层它的作用是在链路层的基础上,进一步管理网络中 的数据通信向运输层提供最基本的端到端的数据传送服务。该层主要包括l p 协议、 i c m p 协议以及i o m p 协议。 4 链路层:也称作网络接口层它的功能是向该层用户提供透明的和可靠的数据 传送基本服务。 32u l p 协议 1 2 3 2 1u l p 协议简介 u i p 协议是一种精简后的t c p i p 协议栈,主要用于8 位和1 6 位的嵌入式系统。 u l p 协议的特点是代码少,只有几千个字节,对内存的要求比较低但是这并不影响 它的正常工作,它只是裁剪了那些在嵌入式中用不到的代码,留下了网络通信所必须 的协议。其设计实现了a r p 、i c m p 、i p 和t c p 协议。u i p 使用c 编程语言,可以根 据需要自行修改,任何人都可以免费使用。数据包的重发和需要重发的数据包的缓 存是其它t c p i p 协议栈的难题,对u i p 协议来说,它允许应目程序参加数据重发它 不会因为数据的缓存和数据包重组而占用过多的存储和c p u 。一般情况下数据是缓 存在r a m 里t 如果数据需要重发,应用程序可以快速重生数据,数据迅速从原先的 位置读回来。 u i p 协议高度模块化,它的上面是应用程序,下面是网络设备驱动程序。对于应 用程序,u l p 坍议提供了u 坤一a p p c a l l ( ) 函数,对于底层的网络设备,提供了u | di n p u t 0 和u i p _ p e i o d j c ( ) 函数川。模块化设计不仅减小了协议代码量,还为外部程序提供了统 一的接口,用户使用过程中只需要编写相应的程序对硬件接口问题则不用过多地考 虑。u l p1 办议的体系结构如图31 所示, 月* 8 4 一i u l i a p 虻a i “) ! _ u p m n p u j 7 一t 弋:= ! m j ,二, 8 i :4 t 目目* 目 图3iu i p 协议的体系结构 3 2 2 u l p 协议中各协议的实现 u l f 协议是一个精简的t c p i p _ | 办议,它是对整个t c p i p 协议做了相应的简化, 以便能在嵌入式系统中实现t c p i p1 舟议。u i p 协议主要实现了t c p i p 协议族的四个 基本协议:a r p 协议、 c m p 协议、i p 协议以厦t c p 协议。以下具体介绍各层协议在 u l p 协议栈里的具体实现。 1 地址解析协议a r p 的实现 传输数据通信的时候,嵌入式识别的不是i p 地址,而是把i f 地址转换为相应的 物理地址m a c 来实现的。在这个过程中,a r p 协议起到的作用是将i p 地址转变为与 它对应的物理地址m a c 。a r p 协议可分为a k p 请求和a i l p 响应:当系统只有对方 】3 的i p 地址,而没有物理地址时,就会主动向对方发出请求获得对方m a c 地址t 这个 过程称为a r p 请求 当前对方收到a r p 请求后,首先比较请求中的i p 与本地的i p 地址是否一致,一致的话就对方提供自己的m a c 地址,这个过程称为a r p 响应。 在u i p 协议中,对a r p 协议进行了简化,它的主要功能是一个口地址到m a c 地址的 动态映射。在a r p 里,有一个a r p 表,表中存储t i p 地址对应的物理地址。当系统需要 发送一个i p 包时,先在a r p 表中查询对方i p 对应的物理地址,假如找不到这个物理地址, 系统就会给对方发送一个a r p 请求。当对方主机收到请求后,比较【p 是否相同,确定 无误后,发出一个a r p 回应,将本地的物理地址发送给出去。当u i p 收到a r p 回应后, 将地址存到a r p 表里进行更新。更新间隔大约为十秒,以前的没有用的物理地址直 接丢弃。一般情况f a r p 表中m a c 地址的生存时间是2 0 分钟。 “1a r j a 请求的实现 系统对外进行通信时,首先会根据己知对方的【p 地址在a r p 表中查询对方i p 地址 对应的物理地址,如果查询到就不用发送a r p 请求了,如果没有查询到,那么系统 就需要向对方发送一个a r p 请求对方收到这个请求后会把m a c 地址发送过来。a r p 请求的具体过程如图32 所示, l b 自h ! _ 一 镕 m 目; 土墅一 | ; # m c m 址 目君诉u i 日 国3 2a r p 请求包的实现 r 2 ) a r p 响应的实现 系统在收到一个a r p 请求信包后,首先比较包中的i p 地址是否和自己的i p 地址一 致,如果一致t 就回复一个响应信包,把自己的物理地址发给对方,如粜不一致,则 不用回应,具体的过程如图33 所示。 1 i 一 自g 自r * 口* d u 女目t = 一 l 目l 囝33a r p 喧答包的实现 2 i p 协议的实现 i p 协议是一种不可靠的无连接的数据报协议,它是整个协议族核心。i p 协议的功能 是为通信双方提供最好的传输服务,但是有个缺点它不能够保证所传输的数据完整 的传送到了对方,即它的不可靠性。在传送过程中i p 协议不提供差错检验,如果出 现差错它采用的办法是直接把数据包丢弃,接着给信息源端发送一个i c m p 消息报, 通知对方传送错误。 在u l p 协议中,对i p 协进行了裁剪没有实现碎片和重组,裁剪后主要留下了两个 功能:一个是检验数据包的i p 头查看是否要接收或发送的数据包。二是t c p 和i c m p 协议之间多路复用。本着节约空间得原则裁剪后i p 层的代码只有9 条语句。同完整 t c m p 协议一样,发送数据包时,需要给数据包加上i p 报头,接收数据包时,要去掉 数据包报头。 3i c m p 协议的实现 i c m p 协议和i p 协议一样也位于i p 层i c m p 协议实现两种功能:报告出错信息及 传送控制消息。控制消息是指主机是否能够通信、网络是否连通、路由是否正常等消 息。在u l p 协议里,i c m p 信协议被大大简化了它只实现了i c m p 回响信息。i c m p 回响 信息的功能一是用于交换是i p 地址里的i p 头,一是调整校验和,改变i c m p 的类型宇段, 从“e c h o ”变到“e c h or e p l y ”。u l pc p ,i c m p 团响信息主要用于p i n g 程序,:通过p i n g 命令可以检查嵌入式设备和主机之间是否连通。首先,嵌入式向主机发送一个f i n g 请求 如果主机在线它会作出回应t 即p i n g 应答。嵌入式设备收到应答后,表明此时两者问 已经连通了t 可咀进行通信,p m g 请求程序流程图和p j n g 应答程序流程图分别如图34 、 3 5 所示。 圈34 p i n g 请求程序流程图 目35p i n g 1 6 4t c p 协议的实现 t c p 协议是面向连接的可靠的通信协议它在传输数据时是端对端的。t c p 协议 为了保证它的可靠性,采用了很多措施,首先给每个数据包一个序号,同时序号也保 证了传送到接收方的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论