基于internet的远程监控系统设计本科毕设论文.doc

上传人:可****阿 文档编号:93369667 上传时间:2023-07-03 格式:DOC 页数:55 大小:1.67MB
返回 下载 相关 举报
基于internet的远程监控系统设计本科毕设论文.doc_第1页
第1页 / 共55页
基于internet的远程监控系统设计本科毕设论文.doc_第2页
第2页 / 共55页
点击查看更多>>
资源描述

《基于internet的远程监控系统设计本科毕设论文.doc》由会员分享,可在线阅读,更多相关《基于internet的远程监控系统设计本科毕设论文.doc(55页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、本 科 生 毕 业 论 文 题 目: 基于Internet的远程监控系统设计 院 系: 信息科学与技术学院电子系 二 九 年 五 月50摘 要科技的发展必然使人类的生活越来越自动化,足不出户却可以决胜于千里之外,这就需要借助于两样东西,一是现场监控系统,二是INTERNET。本文介绍了一种简单的典型的基于INTERNET的远程监控系统,但它包括了基本的远程监控系统基本思想与一般架构。此远程监控系统的核心是经典的51系列单片机,它作为系统的大脑,是系统的神经中枢,另一个必不可缺的就是W5100芯片,此芯片内部集成了TCP/IP协议栈、以太网介质访问层(MAC)和物理层(PHY),扮演着通讯员的角

2、色,负责系统与外界的沟通,在现场与控制台之间搭建了一个方便快捷的桥梁。其它的还包括温度检测芯片以及若干个LED灯管。整个系统选材较少,因此具有功耗低、价格低廉、稳定性强、开发简单、体积小的优点,低廉的配置也有使此方案对于大部分人来说实现起来也是一件容易的事。此外,本系统实现了可以在终端通过IE浏览器访问系统、监控系统的模式,使远程监控更方便更人性化。关键字:远程监控;W5100;TCP/IP协议;嵌入式服务器AbstractAs the developing scientific technology, persons life become easier and more automatic

3、, people can finish something even they are miles away from the scene. All of this is by the help of two things, one is scene control system, and the other one is internet. There is something about the simple remote control system based on internet in this study, and the basic configuration and clas

4、sic way to carry out of a remote control system will be included. The major thing or the key of this system is a classic 51 micro control unit. It is the brain of this system. Another most important thing of this system is W5100 Internet chip, which brings TCP/IP protocol, MAC, PHY together. The W51

5、00 chip helps the system to communicate with internet. What else, the system includes a chip to detect the scene temperature. So in a word, this system is an ideal solution of Intelligent Household system that easy to develop, stability, low cost, with little size and low power dissipation, what els

6、e, this system can be displayed and controlled by IE browser, it makes the remote controlling more convenience.Keywords: remote system; W5100; TCP/IP protocol; embed server 目 录第一章 绪论11.1 嵌入式系统概述11.2 嵌入式INTERNET31.3 远程监控系统发展现状与趋势41.4 论文研究意义5第二章监控系统硬件实现72.1 51单片机管理模块82.2 网络芯片W510092.2.1 W5100 特点92.2.2

7、 W5100 引脚102.2.3 W5100 存储器映像132.2.4 W5100寄存器142.2.5 W5100与MCU的连接方式15第三章 远程监控系统程序设计与实现193.1 W5100 程序部分193.1.1 W5100 的初始化193.1.2 W5100 实现TCP通信203.1.3W5100实现UDP数据通信253.2主体程序26第四章 系统仿真285.1 EVB-W5100/MCS51与PC的连接295.2 演示软件测试305.3 演示总结31第五章 结论33参考文献34致谢35附录36附录1 W5100初始化程序36附录2 W5100服务器模式程序41第一章 绪论1.1 嵌入式

8、系统概述对于大多数人来说,谈起现代化电子产品的时候都会第一时间想到计算机,或者更确切地说是想到PC,因为对他们来说PC机已经是和他们形影不离了。但是他们都忽略了比PC更广泛应用的一种现代化电子产品,那就是嵌入式系统。各种微处理器应用的数量远远地超过了PC上应用的X86处理器,而微处理器绝大部分是用在嵌入式系统中的,因此可以说嵌入式系统已经成为了人们生活中不可或缺的一分子了。在现代社会生活中,我们不仅仅需要那种放在桌上处理文档、进行工作管理的计算“机器”,我们还可能拥有大小不一、形状各异的嵌入式电子产品,小到手机、MP3、PDA等微型数字产品,大到网络家电、车载电子设备等。目前,各种各样的新型嵌

9、入式系统设备在应用数量上已经远远超过了通用计算机。在工业和服务领域,使用嵌入式技术的数字机床、工业机器人、服务机器人等正在逐渐改变着传统的工业生产和服务方式。嵌入式系统可以这样定义:嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。一般来说,嵌入式系统由处理器、存储器、输入/输出设备和软件(包括操作系统和应用程序)4部分组成,如图1-1所示。应用程序软件结构 操作系统处理器 OUTPUT 硬件结构 INPUT 存储器图 1-1:嵌入式系统的组成嵌入式系统与PC比较如下表1-1与表1-2 :表1-1:嵌入式系统与PC

10、硬件上的比较设备说明嵌入式系统PCCPU嵌入式系统(ARM,68K等)CPU(INTEL的Pentium, AMD的Athion等)内存SDRAM芯片SDRAM或DDR内存条内存设备Flash硬盘输入设备按键、触摸屏鼠标、键盘、麦克风输出设备LCD显示器声音设备音频芯片声卡接口MAX232等芯片主板集成其它设备USB芯片、网卡芯片主板集成或外接卡表1-2:嵌入式系统与PC软件发及开发平台上的比较嵌入式系统PC引导代码Boot loader引导,针对不同电路进行移植主板的BIOS引导,无须改动操作系统LINUX,WINCE,UCOS等,需要移植WINDOWS,LINUX等,不需要移植驱动程序每个

11、设备驱动都必须针对电路板进行重新开发或移植,一般不能直接下载使用操作系统含有大多数驱动程序,或从网上直接下载使用协议栈需要移植操作系统由第三方供应商提供开发环境借助服务器或PC进行交差编译在本机就可以开发调试仿真器需要不需要从上面两个表格可以很容易看出嵌入式操作系统与PC之间存在着很大的差异,两者的最大区别在于嵌入式系统性具有“软硬件可裁剪性”的灵活性,可以根据各种具体的现场实现千差万别的特定功能。嵌入式系统同PC系统相比有以下特点:1. 功耗低、体积小、专用性强。嵌入式本身就是为特定的用户或特定的功能量身定做的,所以它能把PC中许多由板卡完成的任务集成在芯片内部,从而有利于嵌入式系统设计趋于

12、小型化。2. 为了提高执行速度和系统可靠性,嵌入式系统的软件一般都固化在存储器芯片中,而不是存储于磁盘等载体中。3. 可靠性高。嵌入式系统对软件代码的要求很高,应尽最大可能避免“死机”的发生,因为“死机”很可能导致系统的崩溃或造成严重后果。4. 嵌入式系统的开发需要专门的开发工具和开发环境1。1.2 嵌入式INTERNET介绍了嵌入式系统与PC既有共性也有个性,具体的应用可以根据实际工作而选择使用嵌入式系统还是普通的PC机。或者还有一种方法就是把两者结合起来,各取所长,从而合成一个更完美的系统,那就是基于Internet的嵌入式系统,而如今世界上无所不在的Internet则是把二者结合起来的重

13、要桥梁。下面将要介绍的是Internet在嵌入式系统中的应用。网络在人们生活中的作用是不容置疑的。随着网络的发展,网络已经深入到人类生活的各个方面,网络就像覆盖在地球表面的电子皮肤,它大大的改变了我们的工作方式和生活方式。21世纪是一个网络化的世界,这不仅是指通过计算机网络形成了全球化的Internet,而且还包括我们身边的楼宇自动化系统、家庭电器产品、智能仪表及工业过程控制等通信网络。若能将Internet网络技术延伸到电子设备或控制网络并使之互连,将Internet的应用范围扩大到任何需要网络的地方,使之增加许多新的、有价值的、超越局域网的服务功能,必然会让我们的世界变得更加自动化和智能化

14、。家庭电器产品和工业设备绝大部分都采用单片机或微控制器MCU来进行数据处理,使用嵌入式系统来实现控制功能。智能楼宇、工业过程等在这些芯片的基础上,使用特定的协议如Lon Works、CAN等组成独立的、自成一体的控制网络。如果能将嵌入式系统连接到Internet上,则可以方便、价格低廉地将信息传送到几乎世界上的任何一个角落,进而进行远程监控。嵌入式Internet就是在这种背景下产生的,它依托于工业以太网技术而构建,是Internet技术、Web技术和嵌入式技术的有机融合。嵌入式Internet技术是指电子设备通过嵌入式模块接入Internet,以Internet为介质实现信息交互的技术。嵌入

15、式Internet不仅是一种设备接入技术,而且是一种异构网络互连技术。通过Web技术和嵌入式技术可将设备接入到Internet以实现远程的监控、诊断、测试、管理及维护等功能2。当前,为了满足世界上越来越多的Internet用户,Internet的IP协议正处于在IPv4协议到IPv6协议的过渡时期。随着嵌入式Internet的发展,越来越多的嵌入式设备都将需要接入Internet进行信息交互。因此,现有的IP地址资源将受到严重挑战,IP地址资源的短缺将成为嵌入式Internet发展的瓶颈。IPv6主要用于解决IPv4地址资源短缺的问题,IPv4的地址域长度是32位,而IPv6的地址长度为128

16、位,因此,IPv6能够提供足够多的IP地址,当然可以为每个嵌入式系统设备提供接入Internet的IP地址。随着IPv6协议的逐渐应用,IP地址资源的缺乏将得到彻底的改善,嵌入式Internet也将得到更进一步的发展3。不久的将来,各种嵌入式系统与PC机的关系也会因为有Internet这座桥梁而越来越密不可分,彼此取长补短,从而构成一个更全面的嵌入式系统。1.3 远程监控系统发展现状与趋势远程监控系统的发展很大程度上依赖于网络的发展。目前,接入Internet的方式有很多,有以太网、ISDN、ADSL、电话接入等方式。其中以太网协议已经非常广泛地应用于各种计算机网络,包括办公室局域网、工业控制

17、网络、因特网、智能家居等场合。以太网作为一种廉价、高效的Internet接入方式已经得到广泛的应用,并且还在不断地发展。所以通过以太网接入方式实现嵌入式Internet具有现实意义。嵌入式系统通过以太网接入Internet主要有如下三种解决方案:1. 32/64位高端嵌入式系统+RTOS(实时操作系统)的实现方式。该方案采用高端的32/64位微控制器上运行实时多任务操作系统,以实时操作系统作为软件平台,在实时多任务操作系统上直接实现TCP/IP协议,从而实现嵌入式Internet。目前常见的此类实时操作系统有NUCLEUS、LINUX等等,由于系统自带TCP/IP协议,因此实现起来比较容易。2

18、. PC网关+专用网的实现方式。采用专用的网络把若干个嵌入式仪器连接在一起,然后再把该网络与PC机连接起来,将PC作为网关,由PC机把网络上的信息转化为TCP/IP协议数据包,发送到Internet上实现信息的共享11。3. 8位单片机+网络接口控制器直接接入Internet的实现方式。由网络控制器实现网络接口,由主控制器执行存储在系统ROM中的协议代码来提供所需的通信协议。该方案最突出的特点就是成本较低廉,但是软件设计复杂,需要对TCP/IP协议有深入的了解和研究。基于Web方式是实现远程监控的一个趋势。随着信息技术和网络技术的发展,Internet在过去得到了飞速地发展,并围绕着Inter

19、net出现了许多新的技术和新的应用。WWW系统就是在这种形势下,作为网络化信息服务的基础迅速地发展起来的。WWW是一个基于Internet的全球连接的、分布的、动态的、多平台的交互式超媒体信息系统。它利用多种协议传输,能检索分布在世界各地WWW服务器的信息资源。在基于Web的远程监控系统中,客户端使用通用的Web浏览器,通过Internet对生产现场进行监控。这种方案具有显着的优点:1) Internet技术发展至今,在开放性、通用性、易用性和安全性方面都具备了成熟可靠的技术。2) 不需要开发专门的客户端软件,将应用程序集中在服务器上,大大减少了客户端开发的工作量,而且易于扩充和修改。3) 系

20、统具有统一的用户界面,用户不再需要为不同的控制系统安装不同的客户软件,也不再需要针对不同的客户软件进行不同的培训,任何得到授权的用户都可以使用Web浏览器来对现场进行实时监控。4) 控制网络和数据网络的信息得以集成,有利于信息管理4。1.4 论文研究意义目前主流的嵌入式远程监控系统一般都需要专门的嵌入式处理器与嵌入式实时操作系统的支持下完成的,要求的处理器也较高端如常见的ARM微处理器以及LINUX实时操作系统。而本文实现的嵌入式远程监控系统则不需要另外的操作系统的支持,而且使用普通的51单片机芯片作为处理器中央处理器,硬件上就节约了很大的成本。由于W5100内部集成了全硬件的、且经过多年市场

21、验证的TCP/IP协议栈、以太网传输层(MAC)和物理层(PHY)。硬件TCP/IP协议栈支持TCP,UDP,IPV4,ICMP,ARP,IGMP和PPPOE,这些协议已经在市场上好多领域经过了多年的验证。因此它可以不需要考虑以太网的控制而只需要进行简单的端口(SOCKET)编程就可以实现接入网络的功能,实现没有操作系统的INTERNET连接5。第二章 监控系统硬件实现本文设计的远程监控系统分为系统管理模块MCU,系统通信模块W5100,系统现场监控模块即数据采集模块及显示模块,先由现场数据采集模块(温度检测)接收现场信息然后发送到MCU,再通过W5100芯片传送到INTERNET上去。客户端

22、就可以用IE浏览器访问到这些数据。本系统的硬件架构如下图2-1所示:远程控制端 因特网浏览器RJ45W5100MCU温度传感器图 2-1:系统架构图其中,RJ45接口是带有网络变压器的物理层接口。在W5100中,通过将SEN引脚经10K电阻上拉到高电平以使能其处于SPI从模式。CS为片选,MISO和MOSI为两条数据传输线,用于数据的传输与接收。W5100的SPI工作时钟由处于主模式AT89S52提供。此外,为了方便AT89S52判断W5100的工作状态,必须将W5100的中断引脚INT与AT89S52的外部中断线相连接。W5100的第5、6、8和9引脚是PHY信号线,用于与RJ45接口相连接

23、。除电源相关引脚外,W5100的其它引脚可以选择置空,总的说来,系统连接简单,极大减小了电路板的复杂度与连接出错率6。 系统中没有外加的TCP/IP协议程序,TCP/IP协议栈由W5100来支持,它集TCP/IP协议栈、以太网MAC和PHY为一体,其内部16KB的发送/接收缓冲区可快速进行数据交换,最大通信速率达到25Mbps;内嵌10BaseT/100BaseTX以太网物理层,支持自动应答;提供多种总线接口方式,可以很方便地与各种MCU连接,简化了硬件电路设计,使嵌入式系统在没有操作系统的支持下,真正实现单芯片接入因特网的理想。为减少PCB板面积和布线复杂性,考虑到系统的数据传输率要求不高,

24、选择SPI接口作为AT89S52和W5100的连接方式。AT89S52、W5100和RJ45接口构成一个典型的嵌入式Web服务器,实现简单,成本低廉7。下面从各个部分介绍本系统的具体情况。2.1 51单片机管理模块本文使用的是AT89S52芯片。AT89S52是美国ATMEL公司生产的低电压,高性能CMOS 8位单片机。片内含4K BYTES的可反复擦写的只读程序存储器(PEROM)和128 bytes 的随机存取器(RAM),器件采用ATMEL 公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央器(CPU)和Flash 存储单元,功能强大AT89S52 单片

25、机可为你提供许多高性价比的应用场合,可灵活运用于各种控制领域。它的主要性能特点包括:1) 与MCS51单口指令系统完全兼容。2) 4K字节可重擦写Flash 闪存储器。3) 1000次擦写周期。4) 全静态操作:0 24 MHz。5) 三级加密程序存储器。6) 128*8 字节内部RAM。7) 4 个8位可编程I/O端口。8) 2个16 位定时/计时器。9) 6个中断源。10) 可编程串行UART通道。11) 低功耗空闲掉电模式12。2.2 网络芯片W5100图2-2 :W5100实物W5100内部集成以太网物理层RTL8201CP核、全硬件且经过多年市场验证的TCP/IP协议栈、以太网介质访

26、问层(MAC)和物理层(PHY)为一体。W5100的硬件TCP/IP协议栈支持TCP、UDP、CMP、IGMP、IPv4、ARP、PPPOE、Ethernet等网络协议;支持4个独立的Socket通信,内部还集成有16K字节的发送/接收缓冲区可快速进行数据交换,最大通信速率达到25Mbps;提供多种总线(两种并行总线和SPI总线)接口方式,使用W5100不需要考虑以太网的控制,只需进行简单的端口(Socket)编程就可以很方便地与各种单片机连接。2.2.1 W5100 特点1) 支持硬件化TCP/IP协议:TCP、UDP、ICMP、 IGMP、PPPOE、以太网。2) 内嵌10BaseT/10

27、0BaseTX以太网物理层。3) 支持自动通信握手(全双工和半双工)。4) 支持自动MDI/MDIX,自动校正信号极性。5) 支持ADSL连接(支持PPPOE协议中的PAP/CHAP认证模式)。6) 支持4个独立端口同时运行。7) 不支持IP的分片处理。8) 内部16KB存储器用于数据发送/接受缓存。9) 0.18um CMOS工艺。10)3V工作电压,I/O口可承受5V电压。11)80脚LQFP小型封装。12)环保无铅封装。13)支持SPI模式0、3接口。14)多功能LED信号输出(TX、RX、全双工/半双工、地址冲突、连接、速度等)。2.2.2 W5100 引脚图2-3 W5100引脚1)

28、 MCU接口信号列表:表2-1:MCU接口信号2) 以太网接口信号:表2-2:以太网接口信号表2-3:其它接口信号3) 其它接口信号:表2-4:电源接口信号4) 电源接口信号:5) 时钟接口信号:表2-5:时钟接口信号6) LED信号:表2-6:LED信号2.2.3 W5100 存储器映像W5100内含公共寄存器,端口寄存器,发送存储器以及接收存储器,如下图所示:图2-4:W5100存储器映像2.2.4 W5100寄存器1) 公共寄存器:l 公共寄存器保存的是各个端口(Socket)都通用的参数如:网关,本机IP和本机物理地址等。l MR(模式寄存器):该寄存器用于软件复位、Ping关闭模式、

29、PPPOE模式以及间接总线接口。l GWR(网关IP地址寄存器):该寄存器设置默认网关。l SUBR(子网掩码寄存器): 该寄存器用来设置子网掩码(Subnet mask)值。l SHAR(本机物理地址寄存器):该寄存器用来设置物理地址。l SIPR(本机IP地址寄存器):该寄存器用来设置本机IP地址。l IR(中断寄存器):CPU通过访问该寄存器获得产生中断的来源。任何中断都可以被中断屏蔽寄存器(IMR)中的位屏蔽。当任何一个未屏蔽中断位为“1”,INT的信号保持低电平。只有当所有未屏蔽的中断位为0时,INT才恢复高电平。可产生中断的原因包括:IP地址冲突(CONFLICT),目标IP地址不

30、可达(UNREACH),PPPOE连接关闭,端口03中其中一个中断(Sn _INT)。l IMR(中断屏蔽寄存器):对应IR中断的屏蔽,当对应位为“0”则中断不能产生。l RTR(重发时间寄存器):该寄存器用来设置溢出的时间值。每单位100微秒。l RCR(重发计数寄存器):该寄存器的数值设定可重发的次数。若重发次数超过设定值则产生超时。l RMSR(接收存储器空间大小寄存器):该寄存器配置4个Socket端口的接收缓存大小,默认值为0x55,即每个端口2K缓存。l TMSR(发送存储空间大小寄存器):该寄存器配置4个Socket端口的发送缓存大小,默认值为0x55,即每个端口2K缓存。l P

31、ATR(PPPOE模式下的认证类型): 在与PPPOE服务器连接时,改寄存器指示已经被通过的安全认证方法。W5100支持PAP和CHAP。l PTIMER(PPP LCP请求计时寄存器): 该寄存器表示发出LCP Echo所需要的时间间隔。每单位约25ms。l PMAGIC(PPP LCP模数寄存器):该寄存器用于LCP握手时采用的模数选项。l UIPR(不可到达的IP地址寄存器):不可到达的IP地址寄存器。l UPORT(不可到达的端口号寄存器):不可到达的端口号寄存器11。2.2.5 W5100与MCU的连接方式W5100与MCU的连接方式主要有直接总线连接、间接总线连接、SPI总线连接这

32、三种连接方法,不同的连接方法适应于不同的场合,应该按需选择最恰当的连接方式。1) 直接总线连接:直接总线连接方式是最直观的一种连接方式,它采用15位地址线,8位数据线,另加/CS,/RD,/WR及/INT等信号线。如图2-5所示:图2-5:W5100与MCU直接总线接口方式2) 间接总线连接:采用2位地址线,8位数据线,另加/CS,/RD,/WR及/INT等信号线。214这十三根没用到的地址线通过电阻接地。如图2-6所示:图2-6:W5100与MCU间接总线接口方式间接总线接口相关的寄存器说明如表2-7所示:表2-7:间接总线接口相关寄存器数值符号说明0x00MR它选择间接总线接口,以及地址自

33、动增加。0x010x02IDM_AR0IDM_AR1间接总线模式下的地址寄存器,只在大端模式(Big-endian)下使用。0X010X02IDM_AR0:MSBIDM_AR1:LSB例:读取端口0的命令寄存器SO_CR(0X0401),则0x01(IDM_AR0)0x02(IDM_AR1)0X040X010x03IDM_DR间接总线接口模式下的数据寄存器读/写内部寄存器或存储器的过程:l 将要读写的地址写入到IDM_AR0和IDM_AR1寄存器l 再从IDM_DR寄存器读写数据如果要对某个地址的顺序读写 ,则可以将模式寄存器MR的AI置“1”,然后执行一次上述第1项 后,再读IDM_DR,I

34、DM_AR的值将自动加1。这样,只需要连续对IDM_DR读写 ,数据就可以连续地读出或写入。MCU与W5100以间接总线方式接口时应注意:l W5100的SEN引脚必须通过一个10K的电阻接地,选择W5100的总线接口方式。l W5100的SCLK、SCS、MOSI和MISO四根信号线可以悬空,只使用D0D7,A0/A1及CS,WR,RD,A2A14短路连接后通过一个10K的电阻接地。l W5100的INT引脚是中断输出,MCU需要根据该信号来判断W5100的工作状态。l LINKLED是W5100输出的以太网物理层的信号,MCU需要根据该信号判断以太网的联接是否正常。该信号一般需要上拉输入到

35、MCU。W5100的SPDLED,FDXLED,COLLED可以根据需要选择是否需要输入到MCU8。3) SPI总线接口方式:串行接口模式只需要4个引脚进行数据通信。这4个引脚的定义分别为:SCLK,/SS,MOSI,MISO。利用W5100的SPI_EN引脚选择SPI操作。如图2-7所示:图2-7:W5100与MCU的SPI连接方式MCU与W5100以SPI方式连接时应注意:l W5100的SEN引脚必须通过一个10K的电阻接到高电平,选择W5100的SPI接口方式。l W5100的D0D7,A0A14及CS,WR,RD可以悬空,只使用SCLK,SCS,MOSI和MISO四根信号线。l W5

36、100的INT引脚是中断输出,MCU需要根据该信号来判断W5100的工作状态。l LINKLED是W5100输出的以太网物理层的信号,MCU需要根据该信号判断以太网的联接是否正常。该信号一般需要上拉输入到MCU。l W5100的SPDLED,FDXLED,COLLED可以根据需要选择是否需要输入到MCU2。第三章 远程监控系统程序设计与实现本章主要介绍系统的软件部分的实现方法,包括W5100的编程实验TCP传输与MCU的编程实现数据处理,下面先分开来介绍各个程序的实现方法。3.1 W5100 程序部分通过设置寄存器与存储器,就可以把W5100与INTERNET连接起来进行数据通信,下面将一步步

37、地介绍设置寄存器与存储器的方法。3.1.1 W5100 的初始化利用W5100进行数据通信前必须先要对它进行初始化,。其初始化包括以下部分:l 模式寄存器(MR)。l 中断屏蔽寄存器(IMR)。l 重发时间寄存器(RTR)。l 重发计数寄存器(RCR)。l 网关地址寄存器(GAR)。l 本机物理地址寄存器(SHAR)。l 子网掩码寄存器(SUBR)。l 本机IP地址寄存器(SIPR)。l 端口发送/接收存储器分配信息(RMSR/TMSR)10。初始化程序流程如图3-1所示:基本设置重发计数寄存器(RCR)中断屏蔽寄存器(IMR)模式寄存器(MR)重发时间寄存器(RTR) 本机物理地址寄存器(S

38、HAR)网关地址寄存器(GAR)子网掩码寄存器(SUBR)本机IP地址寄存器(SIPR)设置网络信息设置端口存储器信息图3-1:W5100 初始化流程图W5100初始化与W5100的Socket初始化两个C语言程序见目录,此程序在单片机的C语言编译器上都可以编译通过。3.1.2 W5100 实现TCP通信TCP是一种面向连接(连接导向)的、可靠的、基于字节流的运输层(Transport layer)通信协议,由IETF的RFC 793说明(specified)。在简化的计算机网络OSI模型中,它完成第四层传输层所指定的功能。TCP是因特网中的传输层协议,使用三次握手协议建立连接。当主动方发出S

39、YN连接请求后,等待对方回答SYN,ACK。这种建立连接的方法可以防止产生错误的连接,TCP使用的流量控制协议是可变大小的滑动窗口协议。第一次握手:建立连接时,客户端发送SYN包(SEQ=x)到服务器,并进入SYN_SEND状态,等待服务器确认。第二次握手:服务器收到SYN包,必须确认客户的SYN(ACK=x+1),同时自己也送一个SYN包(SEQ=y),即SYN+ACK包,此时服务器进入SYN_RECV状态。第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ACK=y+1),此包发送完毕,客户端和服务器时入Established状态,完成三次握手10。TCP是以连接为

40、基础的通信方式,它必须首先建立连接,然后利用连接的IP地址和端口号进行数据传输。TCP有两种连接方式:一种是服务器模式(被动开启),即等待接收连接请求以建立连接;另一种是客户端模式(主动开启),即发送连接请求到服务器,图3-2是W5100 实现TCP通信的示意图:图3-2 :W5100 实现TCP通信一、 服务器模式(SERVER MODE):采用此模式时,首先要进行端口初始化,初始化一个端口需要设置运行模式和端口号,并在端口命令寄存器打开端口。端口初始化涉及到以下寄存器:l 端口n模式寄存器Sn_MRl 本机端口n的端口号Sn_PORTl 端口n命令寄存器Sn_CR工作在服务器模式下的端口要

41、侦听是否有连接请求,若有则建立连接准备收发数据。收发完数据后还要断开连接。过程流程如图3-3所示: 侦听打开端口建立连接成功?断开连接程序接收程序发送数据程序超时?关闭端口?超时?要断开连接?收到完成信号?发送数?收到数?关闭端口NNNYYYYNNNNNYYY图3-3 TCP数据服务器模式传输示意图 工作在服务器模式的程序实现方法如附录2所示。二、客户端模式(client)客户端模式下的端口要主动发起连接请求,若成功建立连接则准备收发数据。收发完数据后还要断开连接。过程流程如图3-4所示:建立连接开端口建立成功?接收程序关闭连接程序发送程序超时?超时?要关闭端口?超时?最后的ACK?发送数据?

42、收到数据?关闭端口YNNNNNYYYYYYYNNN图 3-4:TCP数据传输示意图(客户端模式)要断开链接?NNTCP工作在客户端时需要首先进行端口初始化。初始化一个端口需要设置运行模式和端口号,并在端口命令寄存器打开端口,以下寄存器端口需初始化:端口n模式寄存器(Sn_MR),本机端口n的端口号(Sn_PORT),端口n命令寄存器(Sn_CR)。将端口n初始化为TCP模式的具体程序可以参考上面服务器模式中的初始化程序11。3.1.3 W5100实现UDP数据通信UDP(User Datagram Protocol),即用户数据报协议,是OSI参考模型中一种无连接的传输层协议,提供面向事务的简

43、单不可靠信息传送服务。是一个简单的面向数据报的传输层协议。UDP是一种不可靠的、无连接的数据传输方式。它不需要建立 就可以进行数据传输,因此UDP的数据可能丢失,覆盖或翻转。由于数据包传输的速度可能较快,接收方可能无法及时处理数据包,因此,用户在应用层必须确保数据传输的可靠性。UDP传输数据过程流程如图3-5所示:开端口接收程序发送程序超时?要关闭端口?最后的ACK?发送数据?收到数据?关闭端口YNNYYYYNN图 3-5:UDP数据传输流程图3.2 主体程序下面介绍主体程序的设计方法。主体程序中首先初始化AT89S52和W5100,配置W5100的工作模式,启动温度传感器,配置W5100工作

44、于TCP服务器模式,主程序的流程图如图3-6所示:开始NYNYSocket 端口接收数据处理W5100产生的外部中断初始化STC89C51初始化W5100W5100触及AT89S52的外部中断处理收到的数据库图3-6:主体程序流程图为了能够得到实时的数据,因此接下来的程序操作是一个无限循环体,程序开始不断检查外部中断状态标志和Socket接收数据状态标志是否改变,同时开始处理A/D转换的数据,以保证服务器在产生网页时能得到当前的各种最新数据8。一旦W5100的Socket端口有中断事件产生时,W5100将通过其中断引脚INT触发AT89S52的外部中断,使AT89S52进入外部中断处理函数改变外部中断状态标志,程序接着进入处理W5100中断事件函数,在此函数中,AT89S52通过访问W5100的中断寄存器(IR)和端口0中断寄存器(S0_IR)判断出W5100的端口0产生何种中断事件,若Socket接收到数据,则改变外部中断状态标志。程序检测到外部中断状态标志发生改变,立即进入处理接收数据函数6。第四章 系统仿真由于硬件上的制约,因此只能用由AT89S52与W5100组成的EVB-W5100/MCS51板来演示整个系统的可行性与实际应用情况。图5-1为EVB-W5

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁