WIZnet W5100S-EVB-Pico 静态IP配置教程(二)

文章介绍了W5100S硬连线TCP/IP控制器的功能特性,包括其支持的通信接口、内置的MAC和PHY层、4个独立硬件Socket以及WOL功能。接着,详细阐述了静态IP地址的概念、优缺点,并提供了通过VisualStudioCode和WIZnet的ioLibrary_Driver库配置W5100S静态IP的步骤,包括设置SPI接口、MAC、IP、子网掩码和网关,以及烧录和验证测试的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        W5100S是一个硬连线TCP/IP封装以太网控制器W5100S支持间接并行总线和高速SPI接口2种方式与主机进行通信。其内部还集成了以太网数据链路层(MAC)和10Base -T/100Base -T 以太网物理层(PHY),支持自动协商(10/100-Based全双工/半双工)。与传统软件协议栈不同,W5100S内嵌的4个独立硬件Socket可以进行4路独立通信,该4路Socket的通信效率互不影响,可以通过W5100S芯片上的16K字节的收/发缓存灵活定义各个Socket的大小。W5100S还提供WOL(局域网唤醒)和掉电模式

什么是静态IP地址?

        静态IP地址是由ISP永久分配给网络设备的地址,即便是设备重启也不会发生改变。目前静态IP地址拥有两个版本:IPv4和IPv6。静态IP地址通常会分配给服务器托管网站,并提供电子邮件、VPN和FTP服务。在静态IP寻址中,网络中的每台设备都拥有自己的地址(无重复),且必须手动配置静态IP地址。当新设备连接到网络时,必须进行手动配置,输入IP地址、子网掩码、默认网关和DNS服务器等信息。

        Web服务器是使用静态IP地址的典型示例。在计算机中,点击开始-运行或直接使用WIN+R快捷键,打开运行窗口,然后输入“cmd”,点击确定;进入命令窗口,输入“ping www.google.com”,将弹出如下所示的界面,其中“74.125.127.147”是http://www.google.com的当前IP地址。如果该IP地址是静态IP地址,您可以随时在网络浏览器中使用该静态IP地址来连接访问Google。

静态ip优点介绍

1、更好的DNS支持。使用DNS服务器更容易设置和管理静态IP地址。

2、方便的远程访问。静态IP地址使远程访问更加容易。

3、地理定位可靠。使用静态IP地址,服务可以匹配IP地址及其物理位置。

静态ip缺点介绍

1、静态ip安全性不高。使用静态IP地址,第三方很容易知道你和你的计算机所在的位置,这是由于静态ip地址是不变的。

2、静态ip价格高。静态ip相对而言价格更昂贵。

通常,静态IP地址最适合用于自己网站和互联网服务的企业。

硬件准备

  1.  W5100S-EVB-Pico开发板
  2. 网线
  3. Micro USB数据线

    注意:需要把 W5100S-EVB-Pico接入到与自己电脑同一个网段中。

软件环境

  1. Visual Studio Code

W5100S配置静态IP地址示例讲解

接下来,我们基于WIZnet官方的ioLibrary_Driver库编写静态IP地址配置代码。官方库链接地址:Wiznet/ioLibrary_Driver at ce4a7b6d07541bf0ba9f91e369276b38faa619bd (github.com)

步骤1:找到network_install 示例程序打开

我们用Visual Studio Code打开示例的network_install程序

设置spi接口

#define SPI_SCK_PIN 18

#define SPI_MOSI_PIN 19

#define SPI_MISO_PIN 16

#define SPI_MISO_CS 17

#define SPI_MISO_RST 20

设置MAC、IP、子网掩码和网关

 wiz_NetInfo net_info = {

        .mac = {0x00, 0x08, 0xdc, 0x1e, 0xed, 0x2e},

        .ip = {192, 168, 1, 235},

        .sn = {255, 255, 255, 0},

        .gw = {192, 168, 1, 1},

    };

注意:mac地址首位必须为偶数,也就是第1bit必须为0,奇数是为广播mac地址,mac地址第二位数必须是偶数,如果是奇数为组播地址,只能作为目的地址,不能作为源地址。

步骤2:编译烧录

对代码进行编译,生成后缀名是.uf2的文件

将文件从资源库中打开,按住W5100S-EVB-PICO上的boot键后重新上电或者RUN接地,大容量存储器会自动安装,然后将.uf2文件拖拽到大容量存储器完成烧录

 步骤3:验证测试

连接好网线,按下W5100S_EVB_PICO的复位键(RUN接地),程序运行,可在串口工具上查看配置信息。

注意:如果没有输出信息,可以打开串口监视器里面的自动连接按钮,然后按下RUN进行复位即可。

可以打开VS Code的终端进行ping验证

也可以打开电脑上的cmd.exe开始ping 192.168.10.235

        通过这个程序,我们成功地配置了W5100S,使其接入网络。并通过电脑成功地Ping通了W5100S_EVB_PICO,为下一步进行数据通信打下基础。

示例下载链接

例程下载WIZnet-EVB-PICO示例

本期内容就到这里结束了,下期我们介绍一下如何获取动态ip

### W5100S-EVB 技术信息与替代方案 W5100S 是一款由 WIZnet 提供的单芯片以太网控制器,内置硬件 TCP/IP 协议栈,支持高达 4 个独立的 socket 连接。它的 EVB(Evaluation Board)提供了完整的开发平台,方便工程师快速实现网络功能集成[^1]。 #### 替代芯片分析 针对 W5100S 及其开发板的功能需求,市场中有若干种替代方案可供选择: ##### 1. **ENC28J60** - ENC28J60 是 Microchip 推出的一款经济高效的以太网控制器。 - 它通过 SPI 接口与主机微控制器通信,并提供基础的 MAC 和 PHY 功能。 - 不同于 W5100S 的全硬件协议栈,ENC28J60 需要软件来管理大部分 TCP/IP 协议堆栈,因此对 MCU 性能有一定要求[^2]。 ##### 2. **LAN9252** - LAN9252 是 SMSC(现为 Microchip Technology Inc.)推出的支持 USB 和 SPI 接口的以太网控制器。 - 具备强大的硬件加速能力,能够减轻主处理器负担。 - 支持多达 7 个独立的 socket,远超 W5100S 的 4 个 socket 数量限制。 - 更高的吞吐能力和更低的延迟使得它非常适合高负载应用场景[^3]。 ##### 3. **DP83848** - DP83848 是 Texas Instruments 出品的一种独立的以太网 PHY 装置。 - 主要用于补充不具备内部 PHY 的以太网 MAC 控制器。 - 当搭配具有强大计算资源的 SoC 使用时,可以达到极佳的成本效益平衡点[^4]。 --- ### 开发板相关资料 关于 W5100S-EVB 的具体文档和技术细节可以从官方渠道获取,主要包括但不限于以下内容: - **Datasheet**: 描述了模块的工作原理、引脚分配、电气规格等内容。 - **User Manual**: 提供详细的设置指南和典型应用案例说明。 - **Firmware Example Code**: 包含各种主流操作系统下的驱动程序实例代码片段,帮助开发者迅速上手。 下面给出一段简单的 Python 示例代码演示如何利用 Sockets API 同 W5100S 类似设备交互: ```python import socket def create_socket_connection(ip_address='192.168.1.1', port=80): try: sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) server_address = (ip_address, port) print(f'Connecting to {server_address}') sock.connect(server_address) message = 'GET / HTTP/1.1\r\nHost: {}\r\nConnection: close\r\n\r\n'.format(ip_address).encode('utf-8') sock.sendall(message) data_received = '' while True: chunk = sock.recv(16) if not chunk: break data_received += chunk.decode() print(data_received) sock.close() except Exception as e: print(e) create_socket_connection() ``` 此段代码展示了创建一个基本的客户端套接字并发送请求的过程。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值