w6100 소스 중에 질문드릴게 있습니다.
Ethernet Chips
No replies yet. Be the first to reply.
Join the discussion.
Ethernet Chips
No replies yet. Be the first to reply.
Join the discussion.
Share projects and connect with makers.
Joined before the site update? first.
New to WIZnet Makers?
We sent a verification link to your address. Open it to activate your account, then log in.
Accounts from this email provider are reviewed by an administrator after verification. Approval usually takes one business day.
Already have an account?
Enter your email address. If it belongs to an account, we'll send a link to set a new password. Members who joined before the site update use this to set their password.
If an account uses that address, we sent a link to set a new password. The link works once and expires in 30 minutes.
Know your password?
Need an account?
RE: w6100 소스 중에 질문드릴게 있습니다.
by becky ·
socket을 nonblock으로 동작실건지 block으로 동작시킬건지 설정하기 위해 사용됩니다.
기본적으로 block으로 동작되게 되어있습니다.
option 입니다.
이런 질문을 하시는 이유를 말씀해주실수 있나요?
RE: RE: w6100 소스 중에 질문드릴게 있습니다.
by Member 11128 ·
개발을 위해 소스를 파악하고 있습니다.
현재 1개의 보드에 총 3개의 W6100을 사용하여서 제품을 개발할려고 하는데
제공된 라이브러리를 좀 수정을 해야 할거 같아서요…
그러기 위해선 제공된 소스가 어떻게 동작하는지 알아야 정확히 수정이 가능 할거 같아서 그렇습니다.
귀찮게 해드렸다면 죄송합니다 ㅜㅜ
RE: w6100 소스 중에 질문드릴게 있습니다.
by becky ·
의도를 알아야 맞게 대답을 드릴 수 있을 것 같아서 질문드렸습니다.
각 socket별로 non block인지 block인지 sock_io_mode변수에 값을 저장하게 되어있습니다.


0번 socket의 경우 0번 bit에 1번 bit일 경우 1번 bit에 값을 저장하며,
값이 0일경우 block mode, 1일 경우 non block mode입니다.
최초로 값이 설정될때는 socket()에서 설정되며, socket 함수를 호출할때 전달한 매개변수 flag에 따라 설정됩니다.
매개변수에 SF_IO_NONBLOCK을 전달해주지 않으면 Block으로 동작합니다.
cltsocket 함수를 통해서도 io mode 변경이 가능합니다.

sock_io_mode는 아래와 같이 send recv 등의 함수에서 반복문이 사용될때 nonblock 일 경우 빠져나오기 위해 사용됩니다.

전체적으로 sock_io_mode 를 검색하셔서 사용되는 경우를 체크하시는게 좋을 것 같습니다.