收藏 分销(赏)

AVR单片机TCPIP协议的设计和实现.doc

上传人:人****来 文档编号:2970583 上传时间:2024-06-12 格式:DOC 页数:15 大小:298.54KB
下载 相关 举报
AVR单片机TCPIP协议的设计和实现.doc_第1页
第1页 / 共15页
AVR单片机TCPIP协议的设计和实现.doc_第2页
第2页 / 共15页
AVR单片机TCPIP协议的设计和实现.doc_第3页
第3页 / 共15页
AVR单片机TCPIP协议的设计和实现.doc_第4页
第4页 / 共15页
AVR单片机TCPIP协议的设计和实现.doc_第5页
第5页 / 共15页
点击查看更多>>
资源描述

1、AVR单片机TCP/IP合同设计与实现荣盘,赵海,王嘉良,刘丹,蔡鹏华东北大学信息科学与工程学院,沈阳,中华人民共和国。电子邮件:收到6月3日;修订后6月30日;接受7月6日日。摘要:随着嵌入式技术迅速发展,物联网研究和实行将是一种新技术革命,但物联网之间实现通信基本领情是个问题。随着嵌入式控制技术成熟,网络也逐渐与之结合,进一步到工业、楼宇、家居智能化等领域,实现远程数据采集、远程控制等功能。网络化已经成为新一代嵌入式系统发展一种重要趋势。出于这个因素,实现单片机之间通信功能尤为重要。此文基于嵌入式单片机特点,分析了老式PC TCP / IP合同,和恰当定制TCP / IP合同簇基本上体现嵌

2、入式单片机特点。最后,咱们意识到减少TCP / IP合同簇适合嵌入式单片机,特别是在AVR单片机平台上应用。核心词:物联网,Webit,互联网嵌入式系统,TCP/ IP合同,以太网1. 简介物联网意思是指通过信息一种网络设备如FRID等设备,红外传感器,全球定位系统、激光扫描仪等,在安排合同,加入任何和互联网之间沟通信息,实现智能辨认、跟踪监视和管理。互联网概念建议出当前1999年时候。意思是“在因特网传达东西”。这意味着两个方面:第一种是,互联网核心和基本领情依然在互联网,这基于扩展和延伸互联网;第二个是其客户延伸和扩展到任何东西,形成交流和沟通1 - 3。随着计算机和网络迅速发展技术,互联

3、网已经成为一种重要手段来传播信息,越来越多嵌入式设备是有必要实现互联网网络工作4 - 5。相对于电脑,计算和存储相比嵌入式系统资源相对有限;因而要实现所有TCP / IP合同簇嵌入式单片机是非常不现实。因此,为了节约系统资源和保证可靠性系统状况下提高嵌入式系统性能,这就有必要简化模块化TCP / IP合同。2.采用设备和测试平台服务器是一种整体解决方案使设备智能化和网络化。这是新网络设备系统与互联网元素和构造,其基本思想是一种独立、低成本3 W服务器嵌入式设备,使设备有独立情报网络。辽宁省重点实验室推出服务器嵌入式互联网产品决定嵌入式技术。Webit 1.0在成功通过技术鉴定和商标注册,Web

4、it 2.0(互联网原则电气设备访问服务器)通过了5月由辽宁科学技术委员会鉴定科技成果会议。考虑到webit AVR 8位单片机,它存储单元是非常有限,因而设计一种TCP / IP合同适合产品集群是非常重要。Webit 2.0性能如下:依照外部PC系统构造;使用Atmel AVR RISC解决器;顾客定义网页;顾客定义CGI程序用来控制;14位I / O接口(TTL);TTL水平UART支持115200个基点;10 M以太网接口(注册插孔- 45);系统编程(ISP);以太网控制器芯片RTL8019AS概述Webit:高度集成以太网控制器RTL8019AS,它可以简朴符合即插即用NE兼容适配器

5、,减少两倍功率特性。通过三级控制特点,RTL8019AS网络装备是在已知绿色电脑中最抱负最佳网络设备。双重功能可以模仿发送和接受传播之间双绞线以太网互换机和所有1/2。这不但可以从10 Mbps到20 Mbps使带宽更强大,也避免muliaccess以太网阅读合同通道战斗角色。微软即插即用功能可以减轻顾客较低收入和集中在资源适配器,等输入和输出、IRQ、内存地址,等等。然而,在特殊应用没有即插即用功能兼容性,RTL8019AS支持跨接和JUMPERLESS选项。为了提供完整即插即用解决方案,RTL8019AS集成10 baset收发器,自动检测功能AUI和BNC之间接口。此外,8 IRQ总线和

6、16个基本地址总线为大型资源提供舒服环境状况。数据收发其实就是对RTL8019AS内部寄存器进行操作过程,因此一方面得对RTL8019AS进行初始化,重要是设立所需寄存器状态,建立网络接口收发条件,并对RTL8019AS缓冲区RAM进行划分,建立接受缓冲环。数据收发就是对前面所简介寄存器读写过程,固然其中还涉及到对 RTL8019AS数据缓冲环操作。网络接口通过两个DMA操作来完毕数据接受和发送。本地DMA完毕RTL8019AS和它内部FIFO之间数据传送。远程DMA完毕RTL8019AS和CPU之间数据传送。所有这些功能由驱动程序实现,下面将以太网驱动程序进行简介: 3.4.1 RTL801

7、9AS初始化 RTL8019AS初始化,其实就是对RTL8019AS内部与NE兼容寄存器初始化。程序一方面设立了ARM芯片LPC2292I/O口属性。然后对RTL8019AS网络芯片进行复位,涉及硬件复位和软件复位。再进入芯片停止状态,对内部寄存器进行设立,涉及MAC地址写入和内部SRAM分派。最后,使芯片进入运营状态结束初始化。 3.4.2 数据接受过程 RTL8019AS完毕初始化后,就处在接受状态,一旦有数据分组到达,就自动执行本地DMA,将RTL8019AS FIFO中数据送入接受缓冲环,然后向LPC2292申请“数据分组到达”中断祈求。同步 RTL8019AS内部寄存器会发生相应变化

8、,如ISR、CURR。CPU响应中断祈求(读ISR,以判断中断类型)后,从接受缓冲环中取出数据分组至LPC2292存储器中,然后对接受缓冲环CURR、BNRY指针内容进行修改,以便RTL8019AS能从网络上对的接受后续分组。启动远程DMA后,LPC2292不断读写RTL8019AS数据端口(BASE_ADDR+10H),就能成功执行远程DMA操作,完毕CPU与RTL8019AS缓冲RAM之间数据互换。 接受函数总是把所有数据报都读出来后才退出,而接受缓冲区没有批示哪些报未被解决。因而,如果接受到数据报(指放在网络接口芯片内部缓存)来不及解决,那么也许会发生丢包现象,因此对解决速度慢机器需要设

9、立更多接受缓冲区。几乎接受函数所有代码都属于临界区代码。函数一开始就进入临界区。如果网络接口芯片是处在复位状态,则对网络芯片进行初始化然后退出。RTL8019AS支持16 k,32 k和64 k字节内存布朗和闪存接口。它提供了页面模型函数,它可以只支持4米字节布朗16 k字节内存系统空间。布朗无用命令是用来释放布朗内存空间。RTL8019AS单片机设计16 k字节存储器,这样不但提供了更多和谐功能,并且还节约了SRAM存储资源。3.Webit简化TCP / IP设计合同栈AVR单片机,由于相对有限资源,完整TCP / IP合同簇功能是不能实现。因此依照特点AVR单片机,咱们原始TCP / IP

10、合同集群获得减少了TCP / IP合同簇。 与此同步,基于TCP / IP合同栈体系构造,咱们适应网络设计办法片模型。TCP / IP合同架构集群简化后包括了ARP、IP、ICMP TCP,UDP合同解决模型,等等(6 - 8)。每一层TCP / IP合同栈体系构造是作为一种设计独立功能模块,解决她们数据。不同模块可以通过函数将被调用基准面上或下解决模块9。图1显示了简化TCP / IP合同体系构造。图1中,当AVR单片机接受到数据网络,数据包解决模块将在一定条件下选取ARP基地模块链路层或IP合同模块网络层过程。图1所示。简化TCP / IP合同体系构造UDP和TCP合同模块传播层,它将移送

11、解决数据包IP合同解决模块,并使封装为IP地址,第一(如地址、类型合同,等等)。通过相应函数调用。然后将数据报传播涉及IP第一和TCP层越低通过函数调用,直到顺利发送数据。物理链路层:包括网络芯片硬件和基于硬件上芯片级驱动。随着网络物理介质不同和使用网络芯片不同,需要选取不同通信方式和修改相应驱动程序,但只要对外提供接口不变,网络层程序是不用修改。例如以太网(Ethernet)和通过Modem上网方式不同,驱动不同,但不影响网络层。 网络层:接受物理链路层过滤后数据,并对通过辨认不同分组信息后传给传播层中不同合同。知名IP(网际合同)是网络层合同,它支持将各种网络技术互联为一种逻辑网络。IP提

12、供不可靠、无连接、尽最大努力交付分组传播机制,为两个物理设备之间信息传递提供最佳传播服务。所有具备网络层因特网设备都会运营IP合同。 传播层:传播层两个重要合同TCP(传播控制合同)和UDP(顾客数据报),都是端到端合同,依照应用程序需要服务不同可以选取其中一种合同。发送时,TCP和UDP都将报文头和数据打包放在IP数据段中发送出去。接受IP分组后,剥离IP首部,得出是TCP还是UTP合同,再依照其首部中端口不同,交给应用层程序解决。 应用层:这一层功能最背面向顾客,因而非常丰富,并且千差万别。每一种应用层合同都是为理解决某一类应用问题而规定,是通信双方都需要遵循该合同才干正常通讯。例如,te

13、lnet提供远程登陆服务;FTP提供应用级文献传播服务;SMTP提供简朴电子邮件发送服务;http提供网页浏览服务;尚有域名服务系统DNS、简朴网络管理合同SNMP等等。TCP / IP合同解决如图2所示。图2.TCP / IP合同解决4.简化设计和实现嵌入式TCP合同一方面,在Webit,咱们格式和大小MAC和转换功能,系统地址配备,大小缓冲器已经被定义。咱们让MAC地址格式化、IP成为固定价值系统。系统组态用于设立特定值转换功能,港口和MAC地址。在此系统中,为有限数据需要单片机解决,因此咱们不会设立缓冲区比正常。.DSEG.ORG 0x60LocalMAC: .6字节LocalIP: .

14、4字节LocalPort: .2字节RemoteMAC:.6字节RemoteIP: .4字节RemotePort:.2字节Plugdelaytime:.32字节TCPCB: .30 * 2字节RevBuffer:.260字节4.1 ARP合同实现由于嵌入式单片机普通是在服务被动状态。因此当咱们设计和实现了ARP合同,咱们不实现地址映射功能表,没有实现功能查询任何客户机IP映射到MAC地址,只需要实现当其她客户端查询本地Mac地址。数据包并获得反馈关系之间IP和MAC地址,并发送。当嵌入式单片机接受到ARP数据包从以太网,咱们依照操作类型编码数据包决定类型ARP包,如果ARP祈求数据包,比较目I

15、P地址字段ARPP包本地设立IP地址。如果是相等,本地MAC地址包装回应道ARP应答包,如果没有,不做解决,丢弃它。ARP数据包解决流程如图所示3。图3.ARP合同解决4.2 IP合同实现IP合同是TCP / IP合同核心集群。所有ICMP、UDP和TCP数据传播IP数据报图3。ARP合同解决格式。在IP合同解决模块实现IP合同模块,咱们一方面收到IP日期从以太网数据包和决定目IP地址字段值在数据报主管等于本地IP地址,如果没有,丢弃,如果一致,检查等领域版本号和校验和IP数据报等。检查后,确认包是对的,和然后决定选取ICMP合同,UDP合同或TCP服从上层解决,依照类型IP数据。此外,IP合

16、同另一种功能咱们设计和实现是使模块从上层到IP数据消息封装交付,然后向IP封装数据链路层数据帧封装和发送。解决IP合同流程如图4所示。图4.IP合同解决4.3 ICMP合同实现ICMP合同是一种信息传递控制合同。咱们考虑嵌入式单片机作为普通服务器回应客户,作为一种被动设备,它不需要积极发回消息。因此咱们只实现单片机之间接受和解决回声祈求等设备在ICMP合同模块,并发送回声回答。ICMP合同实现:阅读类型代码ICMP数据第一种字节数据包,检查ICMP数据包类型。如果类型代码是8,数据包类型将被修改为0,每个字段数据包封装回声回答数据包需要发回,最后调用发送IP函数,使ICMP数据包到IP数据报封

17、装发送。如果数据包类型代码不是8,丢弃数据包。ICMP合同解决流程如图5所示。图5.ICMP合同解决4.4 UDP合同实现UDP合同提供可靠连接应用程序之间通信,它传播数据IP层和发送,但不能保证到达目地。当UDP合同模块接受数据包,第一次定位端口UDP包,保存远程和目端口UDP数据包,然后比较包目港本地港口规定,如果不是平等,丢弃它;如果相等,调用相应函数。最后,源端口,目端口,数据长度,校验和字段标题UDP数据包,发送添加数据,使封装和发送通过IP层。UDP解决流程合同如图6所示。图6.UDP合同解决4.5 TCP合同实现由于单片机资源有限,和解决TCP包更好,因而,尽管实现TCP合同模块

18、,咱们减少了常用TCP / IP合同,并没有实现滑动窗口合同,流控制和拥塞控制机制。与此同步,咱们设立了两个TCP连接TCP控制块合同模块,并采用响应模式单一窗口。当接受TCP数据包,第一次定位标志TCP数据包,如果TCP包是必须建立一种新连接,检查与否依然存在系统中TCP连接控制块。如果存在,这个备用控制块将被用作控制块对于这个连接,并建立连接。相反,如果没有多余TCP连接控制块,什么都不做。当标记TCP数据包是另一种领域类型,搜索与否存在TCP连接控制块相应于TCP数据包。如果存在,法官依照SYN标志字段值,鳍,ACK等等,然后选取相应函数来解决包。如果不存在TCP连接控制块相应于TCP数

19、据包,不做任何事。建筑和关闭连接TCP合同通过“三握手”和“特定波四倍”。设立TCP数据包标记字段不同控制位详细办法。TCP合同解决流程如图7所示。图7.TCP合同解决5.测试为了测试与否TCP / IP合同实现达到预期目的,咱们进行了一系列测试。Ping命令是最惯用网络。这个命令发送网络消息并通过ICMP祈求响应合同。因而,通过咱们可以拟定当前Ping命令网络连接对的,并测试与否可用网络连接条件。因此,为测试ARP、IP、ICMP合同,咱们可以完毕测试通过Ping命令。测试过程是:一方面,Webit和电脑连接,通过Webit网络配备功能,做配备适当IP地址(在本测试集WebitIP192.1

20、68.180.94)。最后,输入“萍192.168.180.94”在个人电脑上。图8显示运营测试网络连接、网络设备可用。它状态:1)ARP模块是正常,可以恰当实现地址映射;2)IP合同模块正常工作,可以对的分析,这是一种ICMP消息;3)ICMP合同模块正常工作和可以对的返回响应消息。ICMP数据包反映条件是手上1中列出。测试重要是通过向单片机发送ping包日期来验证日期发送成功率。表测试日期显示,祈求数据包发送到单片机是较小,因此祈求有效地解决服务器。对于TCP合同测试,咱们可以选取写一种简朴telnet服务器程序基于TCP / IP合同。顾客可以访问个人电脑,依照系统提示,顾客可以输入某些

21、简朴命令来获得有关信息。测试办法是:输入“远程登录192.168.180.94”电脑。成果是:系统显示成功建立连接,有关提示。依照提示输入东西,然后获得恰当信息。最后,测试表白,TCP合同TCP / IP合同模块集群是对的,和网络层合同是对的。此外,咱们也多次测试TCP建立时间。图8.ARP、ICMP合同测试成果和IP合同表1. ICMP数据包响应表2。TCP建立时间如表2中列出测试成果,平均水平建立TCP时间大概是2.314毫秒,这意味着依照外部祈求服务器可以迅速反映。在测试过程中,服务器接受单片机连接祈求,可靠性好。意思是,这意味着实行后减少了TCP / IP合同AVR单片机,它可以满足规

22、定个人计算机设备被连接到互联网。对于UDP合同测试,咱们编写一种程序依照实现UDP合同,创立了两个UDP套接字,一种是实现发送功能UDP数据,另一种是用于实现函数接受UDP数据,为了测试对的性UDP合同。测试过程是:1)初始化设备;2) 创立一种UDP套接字通过Webit UDP 创造插件(S1和S2);3)S1发送UDP数据S2功能WebitUdpSendTo,S2 S1通过接受数据形式WebitUdp接受函数,输出串口接受数据;4)关闭两个创立套接字(S1和S2)WebitUdp破坏插口命令。最后,测试成果表白,S2接受数据形成S1成功;这意味着UDP合同TCP / IP合同簇是对的。6.

23、结论阐述了实现原理、办法和技术上TCP / IP合同WEBIT平台。在TCP / IP合同实现,咱们网络层编程思想和减少TCP / IP系统构造,适应单片机特点10。同步,该报还在嵌入式单片机和一定摸索和尝试网络应用程序最后,这个合同可行性确认在仿真实验系统中,因此它重要参照价值和全为嵌入式网络系统设计和开发。引用1 G. Y. Xu,Y. C. Shi and W. K. Xie,“Pervasive Computing,” Computer Journal,Vol. 26,No. 9,pp. 1042-1052.2 D. A. Gregory and E. D. Mynatt,“Chart

24、ing Past,Presentand Future Research on Ubiquitous Computing,” ACMTransaction on Computer-Human Interaction,Vol. 7,No.l,pp. 29-58.3 H. Zhao and Y. Chen,“Pervasive Computing,” Northeastern University Press,Shenyang,.4 H. Zhao,“Embedded Internet,” Tsinghua UniversityPress,Beijing,.5 T. KindBerg and A.

25、Fox,“System Software for Ubiquitous Computing,” IEEE Pervasive Computing,Vol. 1,No.1,pp. 70-81.6 V. Jonathan and P. Joseph,“Profiling and ReducingProcessing Overheads in TCP/IP,” IEEE/ACM Transactions on Networking (TON),Vol. 4,No. 6,1996,pp.817-828.7 H. Jang,S.-H. Chung and D.-H. Yoo,“Design and Im

26、plementation of a Protocol Offload Engine for TCP/IP and Remote Direct Memory Access Based on Hardware/Software Coprocessing,” Microprocessors & Microsystems,Vol. 33,No. 5-6,pp. 333-342.8 J. F. D. Rezende,M. M. D. A. E. Lima,N. L. S. D. Fonseca,“Mobility over Transport Control Protocol/InternetProto

27、col (TCP/IP),” In:M. Llyas Ed.,The Handbook of Ad Hoc Wireless Networks,CRC Press,Boca Raton,,pp. 329-343.9 A. Dunkels,“Full TCP/IP for 8-bit Architectures,” Proceedings of the 1st International Conference on MobileSystems,Applications and Services,San Francisco,May,pp. 85-98.10 S. Ichiro,“Location-Aware Communication in SmartSpaces,” Proceedings of International Conference on Multimedia and Ubiquitous Engineering (MUE ),Seoul,26-28 April ,pp. 1027-1034.

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 通信科技 > 网络/通信

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服