博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
W5500问题集锦(持续更新中)
阅读量:6038 次
发布时间:2019-06-20

本文共 2136 字,大约阅读时间需要 7 分钟。

在”WIZnet杯”以太网技术竞赛中,有非常多參赛者在使用中对W5500有各种各样的疑问,对于这款WIZnet新推出的以太网芯片,使用中大家是不是也一样存在下面问题呢?来看一看:

1.

答:

事实上,仅仅要对方支持极性变换就能够实现,如今的设备不支持极性变换的非常少的。

你要是碰到个别老设备连不上,再换交叉线也不迟。基本上2000年以后的设备都没问题的啦~

原帖来自:

2.

问题描写叙述1:我如今做毕设,老师推荐买了W5500这款芯片,与F0进行通信。可是依据收集到的资料,改动的例程找不到问题所在。对于网络这部分,本人小白一个,附上程序,希望大家指导一下!

谢谢!

答1:先附上  

问题描写叙述2:假设ping 不通,TCP连接不能建立是代码的问题吗?loopback的程序步骤是如何的

答2:

W5500 若想Ping通的话须要保证下面2点:

1)物理信道通信正常:初步判定Link 灯及状态灯指示正常。
2)配置了W5500的IP,网关,子网掩码,MAC地址这些特殊寄存器

因为W5500内部硬件逻辑电路实现了ARP协议。所以,一旦收到ping包请求的话,会自己主动回复。以上的设置只是是为了保证基本信道及通讯可以建立的而已。

反向而言,假设Ping不通,也能够先从这双方面着手。

原帖来自:

3.

问题描写叙述:习惯码字和调试分离,尽管待会调试就知道了,也最好还是提出来沟通下。

答:注意SPI帧的不同。

W5100:

W5500:

原帖来自:

4.

问题描写叙述:

有几个关于w5500程序的问题想请教大家:

void Reset_W5500(void)
{
WIZ_RESET_0; //低电平
Delay_us(50); //这个的时间假设设为500us,貌似指示灯就全暗了??
WIZ_RESET_1;
Delay_ms(200);
}

while(( (getPHYCFGR()) & PHYCFGR_LNK_ON) == PHYCFGR_LNK_OFF); //PHYCFGR_LNK_OFF是0×00,PHYCFGR_LNK_ON是0×01。代码在这里死循环了!绿色的灯常亮,黄色的闪烁。

相关代码:uint8   getPHYCFGR(void)
{
return WIZCHIP_READ(PHYCFGR);
}

uint8  WIZCHIP_READ(uint32 AddrSel)

{
uint8 ret;

WIZCHIP_CRIS_enter();

WIZCHIP_CS_select();

AddrSel |= (_W5500_SPI_READ_ | _W5500_SPI_VDM_OP_);

/*

//RWB
#define _W5500_SPI_READ_            (0×00 << 2)
//OM [1:0]
#define _W5500_SPI_VDM_OP_          0×00

//BSB [4:0]

#define WIZCHIP_CREG_BLOCK          (0×00)         //< Common register block 通用寄存器

#define PHYCFGR                     ((0x002E << 8) + (WIZCHIP_CREG_BLOCK << 3))  //16位地址段+8位控制段

*/

WIZCHIP_SPI_write_byte((AddrSel & 0x00FF0000) >>  16);

WIZCHIP_SPI_write_byte((AddrSel & 0x0000FF00) >>  8);
WIZCHIP_SPI_write_byte((AddrSel & 0x000000FF) >>  0); //8位控制段
ret = WIZCHIP_SPI_read_byte();

WIZCHIP_CS_deselect();

WIZCHIP_CRIS_exit();
return ret;
}

uint8 WIZCHIP_SPI_read_byte(void)

{
uint8 data;
data = _SPI_read_byte();
return data;
}

uint8 MSP430_SPI_read_byte(void)

{
while (!(UC0IFG & UCB0RXIFG))
; // wait for an rx character?
return UCB0RXBUF; // reading clears RXIFG flag
}

答:

详细的问题?

開始是一个reset的延时,表示拉低reset脚多长时间使reset引脚生效。
以下那个是检查W5500PHY的状态。看一下网线是插入还是断开状态。你看一下你的While 函数推断过后是否进入死循环。
建议先參考一下官方的STM32+W5500的代码,再转移到MSP430平台上

原帖来自:

5.

參考:

 

以上问题均来自9MCU,如有不论什么问题可随时留言给我们,或发送至WIZnet官方邮箱:wiznetbj@wiznet.co.kr

关注WIZnet很多其它动态:

WIZnet官方微博:http://www.e.weibo.com/wiznet2012

转载地址:http://qkghx.baihongyu.com/

你可能感兴趣的文章
linux系统下安装两个或多个tomcat
查看>>
ProtoBuffer 简单例子
查看>>
iOS多线程开发系列之(一)NSThread
查看>>
微信小程序初体验(上)- 腾讯ISUX社交用户体验设计成员出品
查看>>
SAP WM Physical Inventory Method ST & PZ
查看>>
一次快速的数据迁移感悟
查看>>
《ELK Stack权威指南(第2版)》一3.6 Java日志
查看>>
C++流的streambuf详解及TCP流的实现
查看>>
《量化金融R语言初级教程》一2.5 协方差矩阵中的噪声
查看>>
beetl 和 shrio 结合
查看>>
相对/绝对路径,cd命令,mkdir/rmdir命令,rm命令
查看>>
tomcat中web.xml各配置项的意义
查看>>
Nodejs学习笔记(二):《node.js开发指南》代码中需要注意的几点
查看>>
Ztree异步加载自动展开节点
查看>>
反射操作公共成员变量
查看>>
Android热修复升级探索——代码修复冷启动方案
查看>>
学校宿舍的深夜之思考
查看>>
VB.NET 生成DBF文件
查看>>
编译安装nginx 1.9.15
查看>>
新的开始~~~
查看>>