w5500 칩 하드웨어 리셋 관련

#1

안녕하세요.
이번에 w5500 을 이용해 제품을 개발하고 있습니다.
통신상 문제가 발생했을 때 w5500를 정기적으로 하드웨어 리셋을 걸고 싶은데
2~3번 정도는 리셋이 잘되는데 시간이 지나고 나서는 리셋을 할 때마다 sip, mac, gw, sn등 설정해놓은 값들이 엉뚱한 값으로 변경되어 통신이 되질 않습니다.
펌웨어 실행시 실행되는 초기화 과정은 위즈네트에서 제공해주는 예제로 진행하였습니다.

리셋시 동작되는 코드는 다음과 같습니다.
uint8_t gw[4], sn[4], sip[4];
uint8_t mac[6];
getSHAR(mac);
getGAR(gw); getSUBR(sn); getSIPR(sip);

          // hw reset                                                                   
          wizchip_reset();                                                           
          delay(50);                                                                    
                                                                                        
          setSHAR(mac);                                                                 
          setGAR(gw); setSUBR(sn); setSIPR(sip);                                        
          delay(100);                                                                   
                                                                                        
          getGAR(gw);  getSUBR(sn);  getSIPR(sip);                                      
          printf("lan %d config\n", lan+1);                                             
          printf("gw : %d.%d.%d.%d\n",gw[0], gw[1], gw[2], gw[3]);                      
          printf("sip : %d.%d.%d.%d\n",sip[0], sip[1], sip[2], sip[3]);

디버그 출력 코드
gw : 3.1.3.0
sip : 3.0.0.1
==> 실제로 넣은 데이터는 gw : 192.168.0.1, sip : 192.168.0.80 입니다.

LAN1/sn=0 link off
LAN1/sn=0 status 0x01.
LAN1/sn=0 link off
LAN1/sn=0 tcp sock closed
LAN1/sn=0 :try to open socket [TCP]
RTR : 0303
RCR : 0034
LAN1/sn=0 :Socket Open[TCP]

#2

안녕하세요

reset후 delay를 좀더 늘려보신후 test해보시길바랍니다.
reset후 stable time을 지켜주지 않을 경우 정상동작 하지 않을 수 있습니다.