预览加载中,请您耐心等待几秒...
1/9
2/9
3/9
4/9
5/9
6/9
7/9
8/9
9/9

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

基于ARM的嵌入式TCP/IP协议的实现 该系统可以将数据按网络协议处理,实现数据的以太网传输。其是一套基于嵌入式实时操作系统的嵌入式网络软件开发平台,即在μC/OS—II的平台上,实现ARM微处理器的TCP/IP协议,在此平台之上,可以方便地进行嵌入式应用系统的开发。 0引言 以太网具有通用性强、技术成熟、带宽迅速增加等特性,工业控制领域出现嵌入式技术,尤其是ARM技术的发展和DSP在工业控制领域的广泛应用,利用嵌入式技术实现以太网通信已经不难见到。嵌入式实时操作系统接入网络后将使远程监测、远程控制、远程诊断和远程维护变得越来越容易。从根本上讲,嵌入式设备接入网络,当前基本采用基于TCP/IP的通信协议。该方案以LPC2210为核心元件研究基于ARM的嵌入式TCP/IP协议的实现的硬件电路,同时在μC/OS一Ⅱ平台上编写应用软件程序。下面对系统做详实的阐述,并重点介绍嵌入式实时操作系统μC/OS—II应用于TCP/IP时应进行合理的裁减。 1系统硬件设计 基于ARM的嵌入式TCP/IP网络通信系统主要包括ARM芯片和以太网控制器等芯片组成的以太网接口、驱动软件和嵌入式TCP/IP协议栈。硬件原理图如图1所示。 该方案设计相对简单,硬件电路中采用的LPC2210是Philips公司推出的微处理器,带有16KBRAM,76个通用I/O口,12个独立外部中断引脚,集成有8通道的10位A/D,能够基于芯片设计复杂的系统。虽然LPC2210具有较快的访问速度,但片内没有集成FLASH,所以这里扩展1片16MbFLASHSST39VFl60来保存用户程序。其架构满足μC/OS—II正常运行的基本要求。 RTL8019AS是台湾Realtek半导体公司生产的以太网控制器,其性能包括:支持EthernetII和IEEE802.3标准;支持8/16位数据总线;内置16KWord的SRAM;全双工,收发同时达到10Mb/s;支持BNC,AUI,UTP介质。RTLS019AS可提供100脚的TQFP封装,减少了PCB面积,更适合于嵌入式系统。HR901170A是汉仁电子有限公司生产的RJ45接口连接器(带网络变压器/滤波器),该连接器满足IEEES02.3和IEEE902.3ab标准,能够较好地抑制电磁干扰。通过HR901170A系统就可以连接到以太网上。 2嵌入式协议的选择 TCP/IP协议是一组不同层次上的多个协议的组合,通常被认为是一个包含链路层、网络层、传输层和应用层的4层协议系统,如图2所示。嵌入式系统是为完成某种特定的功能而设计的专用系统。嵌入式系统不要求(也不可能)实现所有的TCP/IP协议,所以嵌入式TCP/IP是对TCP/IP协议族进行选择而形成的协议集合。 首先在链路层上,由于采用以太网的接入方式,系统必须实现IEEE802.3所规定的CDMA/CD(载波监听多路访问及冲突监测)协议,CDMA/CD协议不需用户实现,此协议只要采用通用的NIC(NetworkInterfaceCon—troller,网络接口控制)芯片就可支持。为了保证系统在以太网中的通信,系统还需实现ARP应答协议,该协议用于将IP地址映射成以太网MAC地址。ARP协议包括ARP请求和ARP响应两部分,系统与其他计算机通信,就必须要支持ARP响应。ARP请求在本地建立了一个IP地址到MAC地址的映射,保证了对外通信的有的放矢。RARP(逆地址解析)协议主要用于解决如何从MAC地址得到IP地址,主要用于无盘工作站中。在网络层,由于系统要求能够在Internet中进行通信,因此系统要实现IP协议。在TCP/IP协议族中,网络层协议包括IP协议(网际协议)、ICMP协议(Internet控制报文协议)以及IGMP协议(Internet组管理协议)等。IP协议是TCP/IP族的核心协议,它使异构网络之间的通信成为可能。因此RTU等系统数据跨越不同的网络进行传输就必须要实现IP协议。ICMP中规定了多种协议类型和代码,如果完全地实现也要耗费不少的系统资源,该嵌入式系统中,在ICMP协议中能够测试网络的连通情况即可。 传输层主要是在2台主机之间提供端到端的通信。传输层有2种不相同的传输协议:TCP(传输控制协议)和UDP(用户数据报协议)。TCP是面向连接的,在不可靠的网络服务上提供端到端的可靠字节流。TCP协议设计了严格的3次建立连接握手过程、4次关闭连接握手过程以及捎带确认信息并通过滑动窗口进行流量控制的数据传输过程。UDP协议是不面向连接的,它只是简单地把数据报从一台主机发送到另一台主机,但并不保证该数据报能到达另一端,可靠性必须由应用层来提供。考虑到系统中数据传输质量,这里采用TCP协议。应用层协议主要是指用户进程。其包括:HTTP协议、FTP协议、POP3协议