微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > MCU和DSP > W5100数据手册 Version 1.2.4 版本之:.功能描述

W5100数据手册 Version 1.2.4 版本之:.功能描述

时间:09-18 来源:3721RD 点击:

5. 功能描述

通过设置寄存器和存储器,W5100就可以进行 Internet连接。这一章叙述操作过程。

5.1 初始化

n 基本设置

对于5100的操作需要设置以下寄存器的参数:

1. 模式寄存器(MR)

2. 中断屏蔽寄存器(IMR)

3. 重发时间寄存器(RTR)

4. 重发计数寄存器(RCR)

更多关于以上寄存器的详细信息请参阅"寄存器描述"一节。

n 设置网络信息

下面的寄存器是关于网络的基本配置,需要根据网络环境来进行设置。

1. 网关地址寄存器(GAR)

2. 本机物理地址寄存器(SHAR)

3. 子网掩码寄存器(SUBR)

4. 本机IP地址寄存器(SIPR)

本机物理地址寄存器(SHAR)的地址是MAC层的硬件地址,这是生产商指定使用的地址。MAC地址可由IEEE指定。 更多信息请参阅IEEE的网站。

n 设置端口存储器信息

这一步设置端口TX/RX 存储信息,每个端口的基地址和屏蔽地址在这里确定并保存。

5.2 数据通信

通过 TCP、UDP、IP_RAW和 MAC_RAW模式进行数据通信。在端口 n的模式寄存器(Sn_MR) 的协议类型选择通信模式(W5100总共支持 4个端口)。

5.2.1 TCP

TCP是以连接为基础的通信方式,它必须首先建立连接,然后利用连接的 IP地址和端口号进行数据传输。TCP有两种连接方式:一种是服务器模式(被动开启),即等待接收连接请求以建立连接;另一种是客户端模式(主动开启),即发送连接请求到服务器。

5.2.1.1 服务器模式

n 端口初始化

初始化一个端口需要设置运行模式和端口号,并在端口命令寄存器打开(OPEN)端口。端口初始化涉及到以下寄存器:

端口 n 模式寄存器 (Sn_MR)

本机端口n的端口号 (Sn_PORT)

端口 n 命令寄存器 (Sn_CR)

n 监听

在命令寄存器中设置LISTEN 命令。涉及到的寄存器如下。 端口 n 命令寄存器 (Sn_CR)

n 建立连接

当接收到远程对端发来的连接请求(SOCK_SYNRECV状态),W5100将回复 ACK数据包,并将状态改变成 SOCK_ESTABLISHED。该状态可以用以下方法检测到。

当连接建立完成后,便可执行数据的传送和接收。

n 连接成功:接收数据

通过以下方法可以检测到是否收到从远程对端发来的数据。

n 连接成功:读取数据过程

以下是读取数据的过程:

n 连接成功:发送数据/发送过程

数据发送程序如下:

n 连接成功:接受完成

等待接收远程对端发来的终止连接请求。可以通过以下方法检测远程对端发送的终止连接请求。

n 连接成功:断开连接/断开连接过程

检查是否有终止连接的请求。终止连接的处理过程如下:

n 连接成功:关闭端口

没有连接状态。检查过程如下,

n 连接成功:超时

在数据接收或连接终止过程中,因远程对端的故障而终止连接,数据传输不能正常进行。这种情况下,等待一段时间后,将产生超时错误。

n 端口关闭

数据交换完成后,端口需要终止连接;或产生超时错误时,端口必须关闭;或因非正常操作而使端口强迫终止连接。在这几种情况下都必须执行端口关闭,操作如下:

5.2.1.2 客户端模式

整个处理过程如下:

n 端口初始化

可参阅"5.2.1.1 服务器模式"(与服务器程序相同)。

n 连接

发送连接请求给远端主机(服务器),过程如下

n 建立连接

可按照下面方法检测端口是否连接成功。

n 超时

当远程对端没有响应而产生超时并使端口关闭,检测如下。

n 建立连接

请参照5.2.1.1服务器一节(与服务器处理过程相同)

5.2.2 UDP

UDP是一种不可靠的、无连接的数据传输方式。它不需要建立连接就可以进行数据传输,因此UDP的信息可能丢失、覆盖或反转。由于数据包传输的速度可能比较快,接收方可能无法及时处理数据包,因此,用户在应用层必须确保数据传输的可靠性。UDP的传输过程如下:

n 端口初始化

UDP的端口初始化过程如下:

n 接收到数据

可通过下面方法检测是否收到远端数据

n 接收处理

下面是对接收到的数据的处理过程。在UDP传输时,在接收的数据前面有一个8字节 的头。其结构如下:

n 发送数据/发送处理

数据发送处理如下:

n 完成发送

在发送(SEND)命令后,可以通过下面的方法检测数据是否全部发送完成:

n 超时

当远端不存在或数据传输不正常时将产生超时错误。可以通过下面方法检测:

n 完成/端口关闭

当发送操作全部完成后,关闭端口

5.2.3 IP RAW

W5100不支持传输层的某些协议,如ICMP或IGMP,可使用IP RAW模式来实现。处理过程如

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top