WIZnet Developer Forum

W6100 데이타 수신시 -119

안녕하세요, W6100을 쓰고 있는데,
result = getsockopt(tcpc_info.socket_num, SO_RECVBUF, &get_rx_packet_size);

get_rx_packet_size 값이 -119로 리턴되고 데이터는 수신이 안되고 있습니다. 도와 주실수 있는지요?

안녕하세요,

통신은 Siemens PLC S7-1500(6ES7513-1AL02) 와 Modbus TCP로 교신 중인데 읽기에서 60개워드부터 문제가 발생합니다.
읽기개수(워드): 64 => get_rx_packet_size = -119 리턴이 됩니다.
읽기개수(워드): 60 => get_rx_packet_size = -127 리턴이 됩니다.
읽기개수(워드):59 : 정상 작동

실험 결과를 추가하였습니다.

getsockopt() 함수 내에서

      case SO_RECVBUF:
         *(datasize_t*) arg = getSn_RX_RSR(sn);
         break;

로 되어 있기 때문에 get_rx_packet_size 값을 datasize_t로 type casting 후에 사용 바랍니다.

해당 문의는 kakaotalk channel로 답변 드렸습니다.

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