수신 버퍼 초기화
이 명령은 Port에 지정된 통신 포트에서 수신 버퍼를 지웁니다.
입력
PLC 기종에 따라 통신 포트를 지정합니다.
COM 포트(예: SYS_COM0_PORT)
이더넷 포트(예: SYS_ETHERNET_USER_CONNECTION_1)
MCU/SCU(예: COM01의 16#xx01(xx = 슬롯 번호))
전송 명령을 실행하면 수신 버퍼가 자동으로 초기화됩니다. 데이터를 추가로 전송하지 않고 수신 버퍼를 초기화하려면 이 명령을 실행합니다. 또는 n_Number = 0과 함께 F159_MTRN을 사용할 수도 있습니다. 수신 버퍼를 초기화하면 오프셋 0에서 수신된 바이트 수가 0으로 설정되고 쓰기 포인터가 다시 오프셋 1로 이동합니다. 다음 데이터는 오프셋 1의 시작에 저장되고 기존 데이터를 덮어 씁니다. "reception done" 플래그는 FALSE로 전환됩니다.
Port에서 지정한 통신 포트가 없는 경우.
Port에서 지정한 통신 포트가 없는 경우.
이 펑션 프로그램 시 사용한 모든 입력과 출력 변수는 POU 헤더에서 선언되었습니다. 모든 프로그래밍 언어에 같은 POU 헤더를 사용합니다.
VAR
bClearReceiveBuffer: BOOL:=FALSE;
END_VAR
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
ACTIVE_NETWORK := 0 ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 4 ;
NETWORK_BODY
B(B_CONTACT,,bClearReceiveBuffer,5,1,7,3,R);
B(B_F,E_ClearReceiveBuffer!,,11,0,21,4,,?DEN?DPort?AENO);
B(B_VARIN,,1,9,2,11,4,);
L(1,2,5,2);
L(7,2,11,2);
L(1,0,1,4);
END_NETWORK_BODY
END_NET_WORK
END_BODY
if (DF(bClearReceiveBuffer)) then
ClearReceiveBuffer(1);
end_if;