【电路笔记 通信】以太网芯片W5300、W5500相关资料 选型指导、数据手册、硬件资料、交互控制代码资料

数据手册

硬件资料

在这里插入图片描述

5500控制代码

DHCP

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

TCPSERVER

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

TCPClient

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

UDP

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

DNS

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

SMTP

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

HTTPSERVER

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

HTTPClient

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

NETBIOS

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

NTP

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

PING

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

FPGA交互控制

在这里插入图片描述

直接模式

在这里插入图片描述

间接模式

在这里插入图片描述

Timing

READ

在这里插入图片描述

WRITE

在这里插入图片描述

WRITE的时序参数
参数描述最小值 (Min)最大值 (Max)
tADDRs地址建立时间,在/CS和/WR变低电平前,地址必须保持稳定的时间。-7 ns
tADDRh地址保持时间,在/CS或/RD变高电平后,地址信号应持续有效的时间。--
tCS/CS低电平持续时间,即/CS信号需要维持低电平的最短时间。50 ns-
tCSn下一次断言/CS的时间,即从当前/CS变高到下一次可以再次变低的最小间隔时间。28 ns-
tWR/WR低电平持续时间,即写信号需要维持低电平的最短时间。50 ns-
tDATAs数据建立时间,在/WRITE信号变低之前,数据必须保持稳定的时间。7 ns-
tDATAh数据保持时间,在/WRITE信号变高之后,数据应持续有效的时间。7 ns-
  • 可设定的tDATAs 是主机写数据的建立时间(范围在7个PLL_CLK周期内)。这意味着当/WRITE信号变低后,数据必须在这段时间内保持稳定,以便W5300能够正确地读取这些数据。根据W5300的高性能互联网连接解决方案设置,tDATAs的时间取决于模式寄存器(MR)中WDF2-WDF0位的设定值。
    在这里插入图片描述
  • W5300以太网控制器通信,清除相应的中断标志与写入数值代码示例:
// 假设已经定义了以下信号:
// input wire [7:0] Current_State;
// output reg CS, WR, RD;
// output reg [9:0] ADDR;
// output reg [15:0] DATA_Out;
// output reg [7:0] Next_State;

always @(posedge clk or negedge rst_n) begin
    if (!rst_n) begin
        // 复位时初始化所有输出信号
        CS <= 1'b1;
        WR <= 1'b1;
        RD <= 1'b1;
        ADDR <= 10'h0;
        DATA_Out <= 16'h0;
        Next_State <= 8'd0;  // 从状态0开始
    end else begin
        case (Current_State)
            8'd0: begin  
                CS <= 1'b0;          // 激活片选
                WR <= 1'b0;          // 写操作准备
                RD <= 1'b1;          // 确保读使能高电平
                ADDR <= 10'h206;     // 设置地址为 SOCKET0 中断寄存器 (S0_IR)
                DATA_Out <= 16'h0;   // 数据总线清零
                Next_State <= 8'd1;  // 转移到下一个状态
            end 

            8'd1: begin
                CS <= 1'b1;          // 取消片选
                WR <= 1'b1;          // 取消写操作
                RD <= 1'b1;          // 确保读使能高电平
                ADDR <= 10'h0;       // 地址总线清零
                DATA_Out <= 16'h0;   // 清除 S0_IR 寄存器中的中断标志
                Next_State <= 8'd2;  // 转移到下一个状态,即写入清除命令
            end

            8'd2: begin
                CS <= 1'b0;          // 激活片选
                WR <= 1'b0;          // 准备写操作
                RD <= 1'b1;          // 确保读使能高电平
                ADDR <= 10'h206;     // 设置地址为 SOCKET0 中断寄存器 (S0_IR)
                DATA_Out <= 16'hFFFF;// 写入值
                Next_State <= 8'd3;  // 转移到下一个状态
            end

            8'd3: begin
                CS <= 1'b1;          // 取消片选
                WR <= 1'b1;          // 取消写操作
                RD <= 1'b1;          // 确保读使能高电平
                ADDR <= 10'h0;       // 地址总线清零
                DATA_Out <= 16'h0;   // 数据总线清零
                Next_State <= 8'd10; // 转移到最终状态或下一任务
            end

            default: begin
                // 默认情况下保持当前状态或跳转到空闲状态
                Next_State <= 8'd10;
            end
        endcase
    end
end

CG

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值