FP_IPV4_GET_MAC

MAC 어드레스의 파라미터 가져오기

이 FP 명령은 이더넷 연결에 사용되는 MAC 어드레스의 파라미터를 읽고 값을 DUT FP_IPv4_MAC_DUT에 씁니다.

파라미터

출력

dutIPv4MAC(FP_IPv4_MAC_DUT)

MAC 어드레스의 파라미터

Example

POU header

All input and output variables used for programming this function have been declared in the POU header. The same POU header is used for all programming languages.

	VAR
		bSetIpv4Address: BOOL:=FALSE;
		bGetConnection: BOOL:=FALSE;
		bGetMac: BOOL:=FALSE;
		dutIPv4Connection: FP_IPv4_CONNECTION_DUT;
		dutIPv4MAC: FP_IPv4_MAC_DUT;
	END_VAR

POU body

This example sets the Ethernet connection parameters specified by s_Address. Please ensure the suitable parameters are also set in the project navigator under [System registers] > [Ethernet] > [User connections]. When bGetConnection is set to TRUE, the connection parameters are entered into the DUT FP_IPv4_CONNECTION_DUT. When bGetMac is set to TRUE, the parameters of the MAC address are entered into the DUT FP_IPv4_MAC_DUT.

LD body

BODY
    WORKSPACE
        NETWORK_LIST_TYPE := NWTYPELD ;
        ACTIVE_NETWORK := 0 ;
    END_WORKSPACE
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 5 ;
        NETWORK_BODY
B(B_VARIN,,'IP=192.168.1.5~MASK=255.255.255.0~GWIP=192.168.1.1',29,3,31,5,);
B(B_CONTACT,,bSetIpv4Address,4,2,6,4,R);
B(B_CONTACT,,sys_bIsEthernetInitializing,15,2,17,4,);
B(B_VAROUT,,bError,43,3,45,5,);
B(B_F,FP_IPV4_SET_ADDRESS!,,31,1,43,5,,?DEN?DsAddress?AENO?CbError);
L(1,3,4,3);
L(6,3,15,3);
L(17,3,31,3);
L(1,0,1,5);
        END_NETWORK_BODY
    END_NET_WORK
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 6 ;
        NETWORK_BODY
B(B_VAROUT,,dutIPv4Connection,45,3,47,5,);
B(B_CONTACT,,bGetConnection,4,2,6,4,);
B(B_F,FP_IPV4_GET_CONNECTION!,,31,1,45,5,,?DEN?DnPort?AENO?CdutIPv4Connection);
B(B_VARIN,,SYS_ETHERNET_USER_CONNECTION_2,29,3,31,5,);
B(B_CONTACT,,sys_bIsEthernetIPAddressAssigned,15,2,17,4,);
L(6,3,15,3);
L(17,3,31,3);
L(1,3,4,3);
L(1,0,1,6);
        END_NETWORK_BODY
    END_NET_WORK
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 4 ;
        NETWORK_BODY
B(B_CONTACT,,bGetMac,4,1,6,3,);
B(B_F,FP_IPV4_GET_MAC!,,31,0,41,4,,?DEN?AENO?CdutIPv4MAC);
B(B_VAROUT,,dutIPv4MAC,41,2,43,4,);
L(1,2,4,2);
L(6,2,31,2);
L(1,0,1,4);
        END_NETWORK_BODY
    END_NET_WORK
END_BODY

ST body

IF DF(bSetIpv4Address) AND not(sys_bIsEthernetInitializing) then
    FP_IPV4_SET_ADDRESS(sAddress := 'IP=192.168.1.5,MASK=255.255.255.0,GWIP=192.168.1.1',
				bError => bError);
END_IF;
IF (bGetConnection) then
    FP_IPV4_GET_CONNECTION(nPort := SYS_ETHERNET_USER_CONNECTION_2, dutIPv4Connection => dutIPv4Connection);
END_IF;
IF (bGetMac) then
    FP_IPV4_GET_MAC(dutIPv4MAC => dutIPv4MAC);
END_IF;

최종 수정일: 2022-04-04이 페이지에 대한 피드백Panasonic 직통 전화