最新消息: USBMI致力于为网友们分享Windows、安卓、IOS等主流手机系统相关的资讯以及评测、同时提供相关教程、应用、软件下载等服务。

W5300使用总结

IT圈 admin 25浏览 0评论

2024年4月16日发(作者:蒉新雪)

一、软件设置相关

1、软件可以通过置位MR寄存器第7位来复位W5300,清零即清楚复位.

2、W5300总线可以设置为两种模式8位和16位,在W5300复位期间,这个值由管

脚信号BIT16EN 决定,1为16位模式,0为8位模式,复位后,这个值不改变.

3、W5300 寄存器访问可以设置为直接访问模式和间接访问模式,直接访问直接地址

寻址,间接访问通过IDM_AR寄存器访问.

间接访问:写寄存器可以通过IDM_AR寄存器写入w5300其他寄存器偏移地址,

IDM_DR寄存器写数据来设置,读通过IDM_AR寄存器写入w5300其他寄存器偏移地址,

DM_DR寄存器查看寄存器数据。

4、软件可以通过设置MR寄存器第8位选择大端和小端模式,W5300一般采用大端

模式, 如果要使用小端模式需要将此位置1。

5、Sn_MR[3:0]设置P[3:0]选择SOCKET的通信协议(TCP、UDP、IPRAW,MACRAW

等) 或PPPoE SOCKET与PPPoE服务器之间的操作。

二、 w5300信号线模式配置

1、通过TEST_MODE[3:0]选择PHY 模式。

2、OP_MODE[2:0]设置内部PHY层工作模式

3、FDX:全双工,HDX:半双工 ,硬件复位后该设置值被锁定

4、BIT16EN 16、8数据位选择 高电平16模式,低电平8模式.

三、 软件配置流程:

主要以TCP/IP模式协议为例

W5300的初始化分三个步骤:主机接口设置,网络信息设置和内部TX/RX存储器的分

配。

第1步:设置主机接口

1. 设置数据总线宽度,主机接口模式和时序(参考MR寄存器)

2。 设置主机中断(参考IMR)

第2步:设置网络信息

1. 设置数据通信的基本网络信息(参考:SHAR、GAS、SBUR和SIPR)

2. 设置重复发送的时间间隔和重复发送的次数,用于数据包发送失败时的重复发送(参

考RTR和RCR)本机硬件地址通过SHAR设置,这是一个以太网设备的唯一的硬件地址(以太

网的MAC地址),应用于以太网的MAC层。

第3步:分配SOCKETn的内部TX/RX存储器空间

1. 定义内部TX/RX存储器大小(参考MYTPER)

2. 定义SOCKETn的TX/RX存储器大小(参考TMR和RMSR)

W5300内部包含16个8K字节的存储单元.这些存储单元依次映射在128K字节的存储

器空间。128K存储器分为发送存储器(TX)和接收存储器(RX)。内部TX和RX存储器 以

8K字节为单 元分布在128K字节空间。内部TX/RX存储器可以在0~64K字节空间以1K字

节为单元从新分配给每个SOCKET。

数据通信

TCP

TCP是一种连接通信的协议,在TCP模式,首先要根据IP地址和端口号与对端建立

SOCKET连接。通过连接的SOCKET发送和接收数据.建立SOCKET的连接有“TCP服务器”

和“TCP客户端"之分。区分它们的方法是谁首先发送连接请求(SYS数据包).“TCP服务器

"等待对端的连接请求,当收到连接请求时建立SOCKET连接(被动打开)。“TCP客户端”

主动发出连接请求,与对端建立连接(主动打开)。

TCP服务器

TCP客户端

具体代码请参考源代码文件。

四、 应用中需要注意的是:

1、根据Sn_MR(P3:P0)的设置,在数据包的前面追加有PACKET—INFO,

PACKET-INFO包含接收数据包的信息,如数据包的大小。主机必须首先处理

PACKET—INFO,然后再处理数据。如果收到的数据长度字节数为奇数,那么将添加一个

哑字节.主机必须首先读取这个哑字节并丢弃它。从PACKET-INFO的字节长度信息可以判

断数据包的最后一个字节是否为哑字节。在TCP和MACRAW模式。

PACKET-INFO信息固定为2字节。

2、如果接收到对端的数据字节数为偶数,Sn_MR(ALIGN)置‘1'.当Sn_MR(ALIGN)=1

时,W5300不需要增加TCP模式的PACKET-INFO,而只将数据保存在SOCKETn的内部RX存

储器。这样将减少主机对SOCKET_INFO的额外处理,提高系统性能.

(Sn_MR=0x0101可能会被Sn_MR=0x0001取代)。

2024年4月16日发(作者:蒉新雪)

一、软件设置相关

1、软件可以通过置位MR寄存器第7位来复位W5300,清零即清楚复位.

2、W5300总线可以设置为两种模式8位和16位,在W5300复位期间,这个值由管

脚信号BIT16EN 决定,1为16位模式,0为8位模式,复位后,这个值不改变.

3、W5300 寄存器访问可以设置为直接访问模式和间接访问模式,直接访问直接地址

寻址,间接访问通过IDM_AR寄存器访问.

间接访问:写寄存器可以通过IDM_AR寄存器写入w5300其他寄存器偏移地址,

IDM_DR寄存器写数据来设置,读通过IDM_AR寄存器写入w5300其他寄存器偏移地址,

DM_DR寄存器查看寄存器数据。

4、软件可以通过设置MR寄存器第8位选择大端和小端模式,W5300一般采用大端

模式, 如果要使用小端模式需要将此位置1。

5、Sn_MR[3:0]设置P[3:0]选择SOCKET的通信协议(TCP、UDP、IPRAW,MACRAW

等) 或PPPoE SOCKET与PPPoE服务器之间的操作。

二、 w5300信号线模式配置

1、通过TEST_MODE[3:0]选择PHY 模式。

2、OP_MODE[2:0]设置内部PHY层工作模式

3、FDX:全双工,HDX:半双工 ,硬件复位后该设置值被锁定

4、BIT16EN 16、8数据位选择 高电平16模式,低电平8模式.

三、 软件配置流程:

主要以TCP/IP模式协议为例

W5300的初始化分三个步骤:主机接口设置,网络信息设置和内部TX/RX存储器的分

配。

第1步:设置主机接口

1. 设置数据总线宽度,主机接口模式和时序(参考MR寄存器)

2。 设置主机中断(参考IMR)

第2步:设置网络信息

1. 设置数据通信的基本网络信息(参考:SHAR、GAS、SBUR和SIPR)

2. 设置重复发送的时间间隔和重复发送的次数,用于数据包发送失败时的重复发送(参

考RTR和RCR)本机硬件地址通过SHAR设置,这是一个以太网设备的唯一的硬件地址(以太

网的MAC地址),应用于以太网的MAC层。

第3步:分配SOCKETn的内部TX/RX存储器空间

1. 定义内部TX/RX存储器大小(参考MYTPER)

2. 定义SOCKETn的TX/RX存储器大小(参考TMR和RMSR)

W5300内部包含16个8K字节的存储单元.这些存储单元依次映射在128K字节的存储

器空间。128K存储器分为发送存储器(TX)和接收存储器(RX)。内部TX和RX存储器 以

8K字节为单 元分布在128K字节空间。内部TX/RX存储器可以在0~64K字节空间以1K字

节为单元从新分配给每个SOCKET。

数据通信

TCP

TCP是一种连接通信的协议,在TCP模式,首先要根据IP地址和端口号与对端建立

SOCKET连接。通过连接的SOCKET发送和接收数据.建立SOCKET的连接有“TCP服务器”

和“TCP客户端"之分。区分它们的方法是谁首先发送连接请求(SYS数据包).“TCP服务器

"等待对端的连接请求,当收到连接请求时建立SOCKET连接(被动打开)。“TCP客户端”

主动发出连接请求,与对端建立连接(主动打开)。

TCP服务器

TCP客户端

具体代码请参考源代码文件。

四、 应用中需要注意的是:

1、根据Sn_MR(P3:P0)的设置,在数据包的前面追加有PACKET—INFO,

PACKET-INFO包含接收数据包的信息,如数据包的大小。主机必须首先处理

PACKET—INFO,然后再处理数据。如果收到的数据长度字节数为奇数,那么将添加一个

哑字节.主机必须首先读取这个哑字节并丢弃它。从PACKET-INFO的字节长度信息可以判

断数据包的最后一个字节是否为哑字节。在TCP和MACRAW模式。

PACKET-INFO信息固定为2字节。

2、如果接收到对端的数据字节数为偶数,Sn_MR(ALIGN)置‘1'.当Sn_MR(ALIGN)=1

时,W5300不需要增加TCP模式的PACKET-INFO,而只将数据保存在SOCKETn的内部RX存

储器。这样将减少主机对SOCKET_INFO的额外处理,提高系统性能.

(Sn_MR=0x0101可能会被Sn_MR=0x0001取代)。

发布评论

评论列表 (0)

  1. 暂无评论