F145_SEND

データの送信(MEWNETリンク)

この命令は、ネットワークのリンクユニットを介して他の局にデータを送信します。

パラメータ

入力

s1_Control (DWORD)

コントロールデータを格納する32ビットエリア

s2_Start (WORD, INT, UINT)

ソースデータの格納用の先頭16ビットエリア(ソース局のデータエリア)

d_AdrType (WORD, INT, UINT)

対象局にデータを格納するための格納先オペランドのタイプ。アドレス0を設定して、必ずエリアを選択してください(例:DT0WR0、...)(対象局のデータエリア)

d_AdrOffs (WORD, INT, UINT)

d_AdrTypeで指定された宛先オペランドの先頭16ビットエリアのアドレス(対象局のデータエリア)、 必ず定数とします

変数s2_Startd_AdrTyped_AdrOffsは同じデータ型を使用してください。

解説

s1_Controlの仕様:

s1上位バイト

s1下位バイト

1.リンク番号の選択(LK:1~3、局自体)

1.ワード単位送信選択

最大3つのリンクユニットを1つのCPUに接続できます。

F = 0

ワード単位の選択

n2 = 0

ワード単位を選択する場合は「0」を設定します

この(LK)は、3つのソースリンクユニットを選択します。

n1 = 11–16

送信するワード数を指定します

2.リンク局番号の選択(UN:1~63、別の局)

2.ビット単位送信の選択

最大63の局を1つのリンクユニットに接続できます。

F = 1

ビット単位の選択

次に(UN)は、対象局番を選択します。

n2 = 0–15

格納先ビット番号

n1 = 0–15

ソースビット番号

ヒント

詳細については、高機能ユニットの該当する技術マニュアルを参照してください。

POUヘッダ

POUヘッダには、このプログラムで使用するすべての入力変数と出力変数を宣言します。 POUヘッダは全プログラム言語で使用できます。

	VAR
		start: BOOL:=FALSE;
			(*activates the function*)
		specify_value: DWORD:=0;
			(*stores the control data*)
		send_address: WORD:=0;
			(*Starting 16-bit area for
storing source data*)
		dest_address: WORD:=0;
			(*Type of destination
operands for storing data
in the destination station*)
		n: INT:=0;
	END_VAR

POUボディ

変数startがON (TRUE)のとき、このファンクションが実行されます。

LDボディ

BODY
    WORKSPACE
        NETWORK_LIST_TYPE := NWTYPELD ;
        ACTIVE_NETWORK := 0 ;
    END_WORKSPACE
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 7 ;
        NETWORK_BODY
B(B_CONTACT,,start,3,1,5,3,);
B(B_F,F145_SEND!,Instance,9,0,17,7,,?DEN?Ds1_Control?Ds2_Start?Dd_AdrType?Dd_AdrOffs?AENO);
B(B_VARIN,,specify_value,7,2,9,4,);
B(B_VARIN,,send_address,7,3,9,5,);
B(B_VARIN,,dest_address,7,4,9,6,);
B(B_VARIN,,5,7,5,9,7,);
L(1,2,3,2);
L(5,2,9,2);
L(1,0,1,7);
        END_NETWORK_BODY
    END_NET_WORK
END_BODY

STボディ

IF start then
    F145_SEND( specify_value, send_address, dest_address, 5);
END_IF;

最終修正日: 2022-04-21このページに関するフィードバックお問い合わせ窓口