W5500 EVB 보드사서 연습하고 있는데요 질문있습니다.

#1

loopback switch 예제 다운로드해서 보고 있는데요…

TCP 통신 어떻게 하는지 잘모르겠네요

Herculed 프로그램있는데

PC를 서버로 놓고 보드에서 sw2 누르면 서버에서 메세지 내보내는거 해보고싶습니다.

통신쪽을 전혀 몰라서… 도움 부탁드립니다. (sw2 기능은 살려놓았습니다)

#2

안녕하세요

대략적인 flow를 말씀드린자면

우선 네트워크 설정을 해주셔야합니다.
IP, MAC, Subnet, gateway 등등 설정해준뒤
socket() 함수를 통해 socket을 open해주시구요
listen() 함수를 거치고나면 client의 접속을 기다리는 상태가 됩니다.
접속이 완료되고 established 상태가 된후 sw2를 누를경우 send() 함수를 통해 데이터를 전송하시면 됩니다.

#3

안녕하세요.

IP MAC Subnet gateway 등은 형식만 맞춰서 임의로 쓰고싶은 번호 넣으면 되는건가요?

아니면 반드시 적어줘야하는 고유 번호가 있는건가요?

혹시 cmd> ipconfig /all 에서 나오는 제 IP주소를 적어야하나요

노트북으로 무선랜쓰고 있고 노트북과 W5500-EVB보드를
보드살때 동봉된 랜케이블로 연결했습니다…

#4

안녕하세요

외부망과 통신하지않고 지금 노트북과 direct로 연결한것처럼
PC와 1:1 통신만 할경우에는 임의로 적어주셔도 되지만 PC와 같은 네트워크망이여야 통신이 가능합니다.
IP를 동일하게 적어주게되면 IP충돌에 해당되니 안됩니다.
맨뒷자리만 다르게해서 노트북과 동일하게 적어주시면 될 것같습니다.
서브넷과 게이트웨이도 동일하게 적어주시고 MAC주소는 다르게 임의로 적어주시면 됩니다.

#5

Hercules 프로그램 TCP Server에서 포트5000 Listen 해둔상태로

uint8_t ipwnth[4]={192,168,1,245}; // 노트북 IP주소

socket(0,Sn_MR_TCP,5000,1);
connect(0,ipwnth,5000);

이렇게 하면 Hercules 프로그램에서
클라이언트 카운트 올라가야할것 같은데 안올라가더라고요
제가 잘못 접근한건가요?
기초가 없으니 어렵네요 ㅠ

#6

안녕하세요

우선 cmd 창에서 노트북에서 보드로 ping을 날려 확인해보시는게 좋을것 같습니다.

#7

아… 하루종일 이것저것 해보다가 해결했습니다 ㅜ감사합니다