WIZnet Developer Forum

W5100 sendto 관련 문의

안녕하세요 W5100 문의를 드립니다.

W5100을 다이렉트 어드레스 모드로 UDP를 사용하여 sendto()로 데이터를 전송하는 프로그램을 테스트 하고 있는데,
Sn_IR에 SEND OK 또는 timeout을 체크해야 하는데, SEND OK 또는 timeout 이 발생하지 않아 문의를 드립니다.

Sn_IR_SEND_OK 의 경우에 내부 Tx 버퍼 포인터가 쏘기로한 곳으로 이동이 되면 '1’로 동작되는 것인가요?
아니면 어떤 원리로 '1’이 세트되는지 알고 싶습니다.

그리고 Sn_IR_SEND_OK가 진행되지 않으면 RTR, RCR 에 따라 일정시간이 지나면 timeout이 발생해야 하는거 같은데
RTR x RCR 의 시간보다 한참이 지나도 timeout이 발생하지 않는데 다른 어떤 세팅을 해줘야 timeout이 발생하는 것인지 알고 싶습니다.

아울러 sendto()를 연속적으로 호출하여 데이터를 전송중에 PC와 해당 W5100으로 잘 진행되던 Ping 이 끊겨버리는 현상이 있는데
이러한 경우에 어떻게 재설정을 해야 하는지도 조언 부탁드립니다. (Link LED는 정상적으로 동작되고 있는 상황)

안녕하세요.

어떤 코드를 사용하셨는지요??

저희가 제공드리는 예제코드를 사용하셨는지의 여부를 알려주시면 좀 더 정확한 답변을 드릴 수 있을 것 같습니다.

감사합니다.

우선 제공되는 코드가 avr 환경에 맞춰져 있어 제가 코드를 수정하여 사용하고 있는데 코드의 진행은 거의 같다고 보시면 됩니다.

그리고 지난번에 질문드린 Sn_IR_SEND_OK 의 경우에 대한 내용은 예제코드에서 ISR 발생시 레지스터를 클리어 하고 변수로 처리하도록 되어 있는데
변수가 아닌 레지스터를 직접 확인하여서 생기는 문제여서 Sn_IR_SEND_OK 에 대한 확인은 하였습니다.
그런데 timeout 은 실제 설정한 타임아웃과는 차이가 있는거 같습니다. 한참 더 많은 시간이 지나야 timeout 이 발생하더라구요…

아무튼 질문에 대한 답변을 달아주셔서 감사합니다.

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