eloiz
1
안녕하세요.
W5500 을 이용해서 보드를 개발중입니다.
정상적으로 PING과 커넥트까지 성공했습니다만 몇번 loopback 정상동작 이후에 계속해서 소켓 연결이 끊어집니다.
SOCKET ERROR : -5
0:Listen, port [5000]
SOCKET ERROR : -5
0:Listen, port [5000]
SOCKET ERROR : -5
0:Listen, port [5000]
SOCKET ERROR : -5
0:Listen, port [5000]
SOCKET ERROR : -5
0:Listen, port [5000]
SOCKET ERROR : -5
0:Listen, port [5000]
SOCKET ERROR : -5
…반복
이런식으로 계속해서 발생하는데요. SOCKET ERROR: -5 가 socket.h 에 보니 Invalid socket mode for socket operation.
라는 주석이 있던데 소켓 모드라는게 뭐 따로 설정해줘야 하는건가요?
Edward
2
안녕하세요.
사용하신 예제 코드와 구현하신 코드를 첨부해주시면 좀 더 정확한 답변이 가능할 것 같습니다.
보통 소켓 생성을 할 때 보통은 아래와 같이 구현합니다.
socket(uint8_t sn, uint8_t protocol, uint16_t port, uint8_t flag) → socket(소켓 번호, TCP/UDP인지, 해당 port, 0)
마지막 flag는 소켓 생성시 옵션기능을 사용하기 위한 용도이지만 보통 사용하지는 않습니다.
이렇게 생성하시면 보통은 정상동작하는 것을 볼 수 있는데,
말씀하신 에러의 상황의 경우에는 코드를 확인해보아야 할 것 같습니다.
혹시, W5500을 사용해서 보드를 따로 구성하신건가요??? 모듈을 사용하신건가요??
위 질문도 답변 부탁드립니다.
감사합니다.
eloiz
3
[quote=“Edward”]안녕하세요.
사용하신 예제 코드와 구현하신 코드를 첨부해주시면 좀 더 정확한 답변이 가능할 것 같습니다.
보통 소켓 생성을 할 때 보통은 아래와 같이 구현합니다.
socket(uint8_t sn, uint8_t protocol, uint16_t port, uint8_t flag) → socket(소켓 번호, TCP/UDP인지, 해당 port, 0)
마지막 flag는 소켓 생성시 옵션기능을 사용하기 위한 용도이지만 보통 사용하지는 않습니다.
이렇게 생성하시면 보통은 정상동작하는 것을 볼 수 있는데,
말씀하신 에러의 상황의 경우에는 코드를 확인해보아야 할 것 같습니다.
혹시, W5500을 사용해서 보드를 따로 구성하신건가요??? 모듈을 사용하신건가요??
위 질문도 답변 부탁드립니다.
감사합니다.[/quote]
도움 부탁드립니다.
Edward
4
안녕하세요.
코드상으로는 큰 문제가 없어보이네요.
제작하신 회로도나 PCB를 확인할 수 있을까요??
PHY부분이 정상적으로 연결이 안될 가능성도 있습니다.
감사합니다.
eloiz
5
W5500 부근 회로입니다. ( dropbox.com/s/tjcwoxz00eihr … n.pdf?dl=0 )
SPI 통신은 정상적으로 동작하는걸 확인하였습니다.
정상 연결 되고 정상적으로 Loopback이 동작하다가 어느순간 아래와 같은 에러를 계속해서 발생하며
소켓이 끊어집니다.
SOCKET ERROR : -3
0:LBTStart
SOCKET ERROR : -3
0:LBTStart
SOCKET ERROR : -3
0:LBTStart
SOCKET ERROR : -3
0:LBTStart
SOCKET ERROR : -3
0:LBTStart
SOCKET ERROR : -3
0:LBtart
반복
eloiz
6
RSVD pin 에 10K옴 저항을 다니 정상동작하네요.
도움 주셔서 감사합니다