微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > MCU和DSP > W5500 数据手册 Version 1.0 之:主机接口

W5500 数据手册 Version 1.0 之:主机接口

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

2 主机接口

W5500提供了SPI(串行外部接口)作为外设主机接口,共有SCSn, SCLK, MOSI, MISO 4路信号,且作为SPI从机工作。

W5500与MCU的连接方式如图4和图5所示。根据其工作模式(可变数据长度模式/固定数据长度模式)将分别在第2.3章节和2.4 章节做解释说明。

如图4所示,可以与其他SPI设备共用SPI接口

在可变数据长度模式中(如图4所示),W5500可以与其他SPI设备共用SPI接口。但是一旦将SPI接口指定给W5500之后,则不能再与其他SPI设备共用,如图5所示。

在可变数据长度模式(如图4所示),W5500可以与其他SPI设备共用SPI接口。然而,在固定数据长度模式(如图5所示),SPI将指定给W5500,不能与其他SPI设备共享。

图 4 可变数据长度模式(SCSn受主机控制)

图 5 固定数据长度模式(SCSn保持接地)

SPI协议定义了四种工作模式(模式0,1,2,3)。每种模式的区别是根据SCLK的极性及相位不同定义的。SPI的模式0和模式3唯一不同的就是在非活动状态下,SCLK信号的极性。

SPI的模式0和3,数据都是在SCLK的上升沿锁存,在下降沿输出。

W5500支持SPI模式0及模式3.MOSI和MISO信号无论是接收或发送,均遵从从最高标志位(MSB)到最低标志位(LSB)的传输序列。

图 6 SPI 模式0&3

2.1 SPI工作模式

W5500与外设主机的通讯受SPI数据帧控制(参考第2.2章节 SPI数据帧) 。W5500的帧分为3段:地址段,控制段,数据段。

地址段为W5500寄存器或TX/RX内存指定了16位的偏移地址。

控制段指定了地址段设定的偏移区域的归属,读/写访问模式以及SPI工作模式(可变长度模式/固定长度模式)。

数据段可以设定为任意长度(N-字节,1≤N)或者是固定的长度:1字节,2字节或4字节;

如果SPI工作模式设置为可变数据长度模式(VDM),SPI的SCSn信号需要由外部主机通过SPI帧控制。

在可变数据长度模式下,SCSn控制SPI帧的开始和停止:

SCSn信号拉低(高电平到低电平),即代表W5500的SPI帧开始(地址段);

SCSn信号拉高(低电平到高电平),即代表W5500的SPI帧结束(数据段的随机N字节数据结尾);

2.2 SPI 数据帧

W5500的SPI数据帧包括了16位地址段的偏移地址,8位控制段和N字节数据段。如图7所示。

8位控制段可以通过修改区域选择位 (BSB[4:0]),读/写访问模式位(RWB)以及SPI工作模式位(OM[1:0])来重新定义。

区域选择位选择了归属于偏移地址的区域。

图 7 SPI数据帧格式

W5500 支持数据的连续读/写。其流程为数据从(2/4/N 字节连续数据的)偏移地址的基址开始传输,偏移地址会(自增寻址)加1传输接下来的数据。

2.2.1 地址段

地址段为W5500的寄存器或TX/RX缓存区指定了16位的偏移地址。

这16位偏移地址的值来自于从最高标志位到最低标志位的顺序传输。

SPI数据帧的数据段(2/4/N字节)通过偏移地址自增(每传输1字节偏移地址加1)支持连续数据读/写。

2.2.2 控制段

控制段指定了地址段设定的偏移区域的归属,读/写访问模式以及SPI工作模式。

表格 3 SPI数据帧控制段对应位的说明

2.2.3 数据段

在SPI工作模式位OM[1:0]设定了控制端之后,数据段被设定为2种长度类型:1种为可变的N字节长度(可变数据长度模式),另以一种为确定的1/2/4字节长度(固定数据长度模式)。

此时,1字节数据从最大标志位到最小标志位,通过MOSI或者MISO信号传输。

2.3 可变数据长度模式

在VDM模式下,SPI数据帧的长度被外设主机控制的SCSn所定义。这就意味着数据段长度根据SCSn的控制,可以是一个随机值(从1字节到N字节任何长度均可)。

在VDM模式下,M[1:0]位必须为‘00’。

2.3.1 写访问--VDM模式

图 8 在VDM模式下读SPI数据帧

图8显示的是在外部主机控制W5500读操作时的SPI数据帧。

在VDM模式下,SPI数据帧的控制段:读写控制位(RWB)为‘1’,工作模式位为’00’。

此时外设主机在传输SPI数据帧之前,须拉低SCSn信号引脚。

然后主机通过MOSI将SPI数据帧的所有位传输给W5500 ,并在SCLK的下降沿同步。

在完成SPI数据帧的传输后,主机拉高SCSn信号(低电平到高电平)。

当SCSn保持低电平且数据段持续传输,即可实现连续数据写入。

1字节数据写访问示例

当主机在VDM模式下,向通用寄存器区域中的Socket中断屏蔽寄存器写入数据&l

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

网站地图

Top