产品中心
- 概述
- 规格参数
- 订购方式
- 资料下载
- 知识问答
- 应用案例
WIZnet 发布世界上第一款IOP(网络卸载处理器)W7500芯片,内嵌 ARM Cortex-M0 及 硬件TCP/IP协议栈,目标进军物联网市场。
W7500及其W7500开发板设计用于 ARM mbed平台及 Arduino。
W7500是一款单芯片的网络卸载处理器(IOP)。它不仅内嵌128KB Flash的ARM Coretex-M0内核,还包含了全硬件TCP/IP协议栈内核。从而,适用于各类嵌入式应用平台。特别是在物联网领域。
其集成了以太网MAC的TCP/IP 协议栈内核,支持TCP, UDP, IPv4, ICMP, ARP, IGMP 以及 PPPoE协议,久经市场考验,并得到广泛认可。W7500特别适用于应用中需要网络连接的用户。
特点
ARM Cortex-M0
● 最大时钟频率 48MHz
全硬件TCP/IP核
● 8个socket
● 每个socket拥有最大32KBSRAM
● MII(介质无关接口)
内存
● Flash:128KB
● SRAM:16KB到48KB(如32KB socket 缓存已用,最小可用16KB,如果socket缓存未用,最大可用48KB)
时钟,复位及供给管理
● POR(上电复位)
● 稳压器:3.3V到1.5V
● 8到24MHz的外部晶体振荡器
● 内部内部8MHz的阻容振荡器
● 用于CPU时钟的锁相环
ADC
● 12bit,8ch,1Msps
DMA
● 6路DMA 控制器
● 外设: UARTs, SPIs
GPIO
● 53 I/Os (16 IO x 3ea, 5 IO x 1ea)
调试方式
● 串行调试 (SWD)
定时器/PWM
● 看门狗*1 (32位减法计数器)
● 计时器*4 (32位或16位减法计数器)
● PWM*8 (带有6位可编程预分频器的32计数器/定时器)
通信接口
● 3 UART(2个UART的FIFO和流量控制,1个简单的UART)
● 2 SPI
● 2 I2C(主/从,快速模式(400 Kbps))
加密
● 1 RNG(随机数发生器):32位随机数
封装
● 64 TQFP(7×7毫米)
内部框图
系统信息 | |
处理器 | Cortex-M0 |
主频 | 48M |
内部集成 | 全硬件TCP/IP核、MAC |
Socket数量 | 8 |
内存 | |
Flash | 128KB |
SRAM | 16KB~48KB(如32KB socket 缓存已用,最小可用16KB,如果socket缓存未用,最大可用48KB) |
时钟,复位以及管理 | |
输出电压 | 3.3V~5V |
外部晶振 | 8MHz~24MHz |
内部晶振 | 8MHz |
以太网 | |
缓存 | 32K收发数据缓存 |
支持协议 | TCP、UDP、ICMP、IPv4、ARP、IGMP、PPPoE |
ADC | |
精确值 | 12bit |
通道数 | 8 |
频率 | 1Msps |
DMA | |
控制器 | 6 |
支持硬件请求 | UARTs、SPIs |
GPIO | |
IO数量 | 53 |
调试方式 | |
SWD | |
定时器 | |
看门狗*1(32位减法计数器) | |
计数器*4(32位或16位减法计数器) | |
PWM*1(带有6位可编程预分频的32计数器/定时器) | |
通讯接口 | |
UART*3(带先进先出和流程控制的UARTs, 1个简单UART) | |
SPI*2 | |
IIC*2(主/从快速模式(400 kbps)) | |
加密 | |
RNG(随机数生成器):32位随机码 | |
封装 | |
TQFP64 |
- 在线购买
- 企业店铺 https://wisioe.taobao.com/
- 大客户通道
- 样品申请 [2个工作日内回复] 点击申请样品
- 批量采购 [联系经理] 查看联系方式
- 官网下单
W7500软件资料 | |
W7500硬件资料 | |
W7500相关手册 | |
W7500调试工具 | |
Q1:WIZnet芯片支持网络唤醒吗?
R:不支持,网络唤醒是WIZnet芯片正常工作,去唤醒mcu,想低功耗的话就设置为10M模式。
Q2: WIZnet芯片数据交互速度过快的时候,使用抓包工具发现TCP ZERO WINDOWS包时,如何解决?
R:接收方应用没有及时recv消息,导致接收缓冲满,即滑动窗口为0,接收方发送TCP Zero Window告知发送方不能继续发送消息。
Q3: WIZnet芯片处于TCP_Server模式下,在交换机/路由器网络中无法ping通也无法通讯。
R: WIZnet芯片是硬件协议栈芯片,有别于软件协议栈,如果WIZnet芯片不主动往网络中发包,在TCP_Server模式下是不会有任何数据包发送的,这样会造成路由ARP表中无法形成IP和MAC设备的对应关系。
A:解决方案:
在WIZnet芯片上电时往任意IP发送一个UDP数据包,从而更新路由的ARP表,形成匹配关系,后续通讯就正常了。
Q4: WIZnet芯片在TCP_Client模式下,断电重启之后无法立即连接到服务器。
R:这是由于客户端没有主动发送断开请求,造成服务器并不知道Socket已发生异常断开。重新上电之后,WIZnet芯片以相同的IP和端口连接服务器,而服务器还认为此Socket链接存在,所以拒绝WIZnet芯片的立即连接。
A:解决方案:
在WIZnet芯片使用KEEP_ALIVE机制,一段时间内发送心跳包,如果WIZnet芯片没有给服务器回复,服务器则判断链接已断开,并释放Socket资源,这时就可以成功连接。如果对客户端的本地端口没有要求的话,也可以在初始化Socket的部分让端口自动+1处理。两种方式根据具体应用分析采用。
注: 有的场景不能采用端口自动+1的方式,比如电力104规约,只允许采用2404端口连接。
Q5: WIZnet芯片如何检测网线被拔出?如何进行断线检测?
A:解决方案:
可以在主循环中加入判断PHY_CFGR状态的处理流程,如果PHY状态发生异常,释放所有的socket资源,并重新初始化socket。
Q6: WIZnet芯片作为TCP服务器,最多可以链接几个TCP客户端?
A:解决方案:
WIZnet芯片作为TCP_Server,最多可以与Socket数相同个客户端建立连接。不能初始一个Socket对应多个连接。可以将WIZnet芯片的多个socket全部初始化,这样就可以与多个不同的TCP_Client建立通讯链接。
Q7: WIZnet芯片接外网如何调试,如何抓包?
A: 解决方案:
WIZnet芯片和PC通讯的话可以直接通过Wireshark抓包,如果WIZnet芯片和公网直接通讯或者通讯是发生在WIZnet芯片之间,则没有办法直接抓包,这需要借助于“可以抓包的交换机”,这种交换机多数是二手产品,而且是10M的网络,比如TP-LINK TL-HP5MU。把WIZnet芯片和抓包计算机的网线分别插上交换机就可以运行抓包工具抓包。
Q8:怎么确保WIZnet芯片的MAC地址的唯一性?
MAC地址需要保证全球唯一。但实际上MAC地址只用于链路层,在同一局域网内才有冲突的可能。
A:解决方案:
从IEEE组织申请MAC地址。
B:解决方案:
首先必须保证MAC地址首字节为偶数,其次选取自己产品的MCU ID 序列后5个字节当做MAC地址后5个字节。