WIZnet Developer Forum

[W5500] 초기화 중 mac address return

w5500으로 poe를 구현 중입니다.

poe 전원부는 회로설계를 통해 안정적으로 전원 공급중인게 확인이 되었구요.

여기에 w5500을 통해 이더넷 통신을 테스트 하는 중 이런 현상이 나타납니다

w5500 리셋 -> 버전확인(정상) -> network 정보 업데이트 -> network 정보 확인 (여기서 문제 발생)

spi 인터페이스로 네트워크 정보를 확인 하는 중 다른정보는 모두 정상적으로 확인이 되는데 mac 주소의 경우만 문제가 생깁니다.

mac[0] ~ mac[5] 까지 라이트하고 읽기를 하면 mac[0] ~ mac[2]까진 정상적으로 읽히지만 mac[3]~mac[5]부분이 0x00으로 읽힙니다

ip, gw, sn 등은 정상이구요

확인해 봐야 할 부분이 있을까요?

spi 속도가 문제인가 싶어 속도를 늦추면 데이터가 모두 깨져서 읽혀버리구요…

안녕하세요

네 해당 내용을 보니 하드웨어적인 문제인지 드라이버상의 문제인지 판단이 어렵네요…

정보 업데이트는 어떠한 방식으로 진행되고 있나요?

그리고 다양한 타이밍으로 mac address read를 시도하면 드라이버 문제인지 확인해볼 수 있을 것 같습니다.

만약 그럼에도 동일한 register값이 계속 읽히지 않거나 다른 register값이 깨진다면 하드웨어적인 부분도 확인이 필요해보입니다.

드라이버는 자체적으로 만들어 사용중이신가요?

이왕이면 ioLabrary 사용을 추천드리고

ioLibrary를 사용중이시면 최신 버전인지 확인을 부탁드립니다.

감사합니다

답변 감사합니다.

드라이버는 최신버전의 iolibrary를 사용중입니다.

두가지 상황이 발생합니다.

  1. 파워 서플라이로 전원 공급시

이때는 질문글을 올린것처럼 mac의 뒷자리만 안 읽히는 현상이 발생합니다.
다양한 타이밍에 몇번을 시도 해 보아도, mac의 뒷자리만 제외하고는 정상적으로 값이 읽힙니다

  1. POE로 전원 공급시

이때는 SPI인터페이스가 완전히 제 기능을 못하는것처럼 보이네요.
하드웨어가 불안정 한것 같습니다.

안녕하세요,

조금더 하드웨어 부분을 확인해봐야하는게 명확해지는 것 같습니다.

POE의 경우는 W5500으로의 정상적인 전원공급이 되는지 확인해봐야할 것 같고…

1번 같은 안정적인 전원공급에도 특정 레지스터만 READ되지 않는건… 펌웨어쪽이 의심하긴합니다…

처음 리셋이후 구동때는 MAC 레지스터가 정상적으로 READ되었는데 WRITE 이후 원하는 값이 READ되지 않는다고 하시니 그부분은 펌웨어를 다시한번 확인해봐야 할 것 같습니다.

POE와 관련하여 저희쪽에서 POE관련한 레퍼런스 회로도는 없지만 설계하신 회로도를 검토해볼 수 있을 것 같습니다.

공유가 가능하시다면 아래 메일로 회로도 거버파일을 보내주시면 W5500 관련한 회로도 문제가 있는지 검토 해보겠습니다.

lawrence@wiznet.io

감사합니다.

신경써주셔서 감사합니다.

맥어드레스가 잘 읽히지 않는 문제는 ST사에서 제공하는 STM32의 spi dma 드라이버 문제인것으로 결론 지어진것 같습니다.

dma를 사용하지 않고 그냥 spi통신 드라이버를 사용하니 해당 문제가 발생하지 않습니다.

회로도는 메일로 보내드리겠습니다.

Copyright © 2017 WIZnet Co., Ltd. All Rights Reserved.