分享好友 最新资讯首页 最新资讯分类 切换频道
高性能以太网芯片W5500 数据手册 V1.0(一)
2024-11-07 21:17

2.2.3     数据段

高性能以太网芯片W5500 数据手册 V1.0(一)

在 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 保持低电平且数据段持续传输,即可实现连续数据写入。

字节数据写访问示例

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

A’时,SPI 数据帧的写操作如下所示:

Offset Address = 0×0018

BSB[4:0]       = ‘00000’ RWB = ‘1’ OM[1:0]               = ‘00’

1st Data         = 0xAA

在传输 SPI 数据帧之前,外设主机须拉低 SCSn,然后主机在时钟(SCLK)跳变时同步 传输 1 位数据。在 SPI 数据帧传输完毕后,外设主机拉高 SCSn。(参考图 9)

图 9 VDM 模式下,SIMR 寄存器写操作

字节写访问示例

当主机在 VDM 模式下,向通用寄存器区域中的 Socket 中断屏蔽寄存器写入 5 字节数 据时(0×11, 0×22, 0×33, 0×44, 0×55),SPI 数据帧的写操作如下所示:

N 字节的写访问如图 10 所示。

5 字节的数据被连续地写入 Socket 1 的写缓存地址:0×0040 – 0×0044。 在 SPI 数据帧传输时,外设主机拉低 SCSn(高电平到低电平)。

在 SPI 数据帧传输完毕时,外设主机拉高 SCSn(低电平到高电平)。

                          图 10 在 VDM 模式下,向 Socket1 的发送缓存区 0×0040 中写入 5 字节数据

2.3.2     读访问——VDM 模式

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

 图 11 显示的是当外设主机访问 W5500 做读访问时,SPI 的数据帧格式。

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

与此同时,在 SPI 数据帧传输之前,外设主机拉低 SCSn(高电平到低电平)。 然后主机通过 MOSI 将地址及控制段的所有位传输给 W5500.所有为将在 SCLK 的下降 沿同步。

之后在同步采样时钟(SCLK)的上升沿,主机通过 MISO 接收到所有数据位。 在接收完所有数据后,主机拉高 SCSn(低电平到高电平)。

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

字节数据读访问示例

在     VDM     模式下,当主机读取      Socket     7     寄存器区的     Socket      状态寄存器(S7_SR),SPI 数据帧的数据读取如下所示。我们让 S7_SR 设置为 Socket 建立模式下(0×17)。

在 SPI 数据帧传输之前,外设主机拉低 SCSn(高电平到低电平)。然后外设主机通过 M OSI 传输地址段和控制段给 W5500.

然后主机通过 MISO 接收到接收完的数据。

在完成数据段的接收后,主机拉高 SCSn(低电平到高电平)。(参考图 12)

图 12 在 VDM 模式下读 S7_SR

字节读访问示例

在 VDM 模式下,当从Socket3  的地址为  0×0100  的读取缓存中读取  5  字节的数据(0xAA,  0xBB,  0xCC,  0xDD,0xEE)。这 5 个字节数据的读访问 SPI 数据帧如下所示。

N 字节读访问如图 13 所示。

从 Socket 3 的接收缓存(地址 0×0100 – 0×0104),连续地读取这 5 字节的数据(0xAA,

0xBB, 0xCC, 0xDD, 0xEE)。

在 SPI 传输数据帧之前,外设主机将 SCSn 拉低。(高电平到低电平) 在 SPI 数据段结束时,外设主机将 SCSn 拉高。(低电平到高电平)

                     图 13 在 VDM 模式下,读取 Socket 3 接收缓存 0×0100 中的 5 字节数据

感谢阅读!

明天继续为您讲解~

更多信息与我们交流:

WIZnet邮箱:wiznetbj@wiznet.co.kr

WIZnet主页:http://www.wiznet.co.kr

WIZnet微博:http://e.weibo.com/wiznet2012

最新文章
阿里伴侣配合阿里巴巴打造全方位线上推广
在当今竞争激烈的电商时代,企业的线上推广至关重要。阿里巴巴作为全球知名的电商平台,为众多企业提供了广阔的发展空间。而阿里
Python大数据分析&人工智能教程 - Scrapy工作原理详解与实操案例
Scrapy是一个开源的、用Python编写的高性能网络爬虫框架,用于抓取网站数据和提取结构性数据。它是基于Twisted异步网络框架构建
AI智能写作助手:一站式解决内容创作、文章润色与高效写作的全面工具
在信息爆炸的时代内容创作已经成为企业、媒体和个人展现自我、传递价值的不可或缺手。面对海量的信息与日益增强的内容品质需求高
你的站点抗压么?推荐一款超方便的开源压测工具
这里是 HelloGitHub 推出的《讲解开源项目》系列,本期介绍一款标星 17.7k 纯 Go 语言实现的 HTTP(S) 压测工具——vegetaVegeta
【系统架构设计】计算机网络
OSI/RM 结构模型 1977年,国际标准化组织为适应网络标准化发展的需求,制定了开放系统互联参考模型(Open System Interconnectio
全世界规模最大战争排名,第一名居然是清朝时期!
自打人类走上进化这条路,就想着法儿想要证明【一伙人就该被另一伙人支配】。古罗马角斗士时代一方有多大势力,就看他有多少人的
python tk随机内容生成器
MyRandom ran=new MyRandom();System.out.println(ran.nextString(1));System.out.println(ran.nextString(50, OnlyNum));System
ai自动写文章在线 在线写文章自动生成器
身为文案工作者,我深感写作之重要且充满挑战。如今,随着人工智能(AI)写作平台的出现,我的写作历程出现了巨大变革。在此,很
AI写系统性综述ChatGPT还远远不够未来百年能否实现
在科学研究的浩瀚海洋中,科研人员时常面临一个棘手的问题:如何有效整合和理解海量的科学文献。尽管网络的普及极大地丰富了文献
全球AI半导体技术排名:韩国强势第三,未来发展值得关注
近年来,人工智能(AI)技术的迅猛发展促进了相关硬件的创新,尤其是AI半导体的需求日益上升。根据最新的研究报告和韩国媒体的报