F181_DSP

画面表示切替命令

FP-e表示モードが、s1を用いて指定したモードに切り替わります。

パラメータ

入力

s1

画面表示モードとNo.(0~7)

0

Nモード第1画面

1

Nモード第2画面

2

Sモード第1画面

3

Sモード第2画面

4

Rモード第1画面

5

Rモード第2画面

6

Iモード第1画面

7

Iモード第2画面

(N=ノーマルモード、S=スイッチモード、R=レジスタモード、I=入出力モニターモード)

解説

  • s1に"0~7"以外の値を指定すると、演算エラーとなります。

  • この命令は、割り込みプログラム中で使用することはできません。

エラーフラグ

sys_bIsOperationErrorHold (TRUEになり、TRUEを保持)
  • インデックス修飾時にエリアを超えたとき

  • s1の値が範囲0~7以外のときON

sys_bIsOperationErrorNonHold (1回のスキャンに対してTRUE)
  • インデックス修飾時にエリアを超えたとき

  • s1の値が範囲0~7以外のときON

POUヘッダ

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

	VAR
		bEnable0: BOOL:=FALSE;
		bEnable1: BOOL:=FALSE;
		bEnable2: BOOL:=FALSE;
		bEnable3: BOOL:=FALSE;
		bEnable4: BOOL:=FALSE;
		bEnable5: BOOL:=FALSE;
		bEnable6: BOOL:=FALSE;
		bEnable7: BOOL:=FALSE;
	END_VAR

POUボディ

変数Enable0Enable7がON(TRUE)のとき、このファンクションが実行され、FP-eは対応するモードと画面に切り替わります。(N=ノーマルモード、S=スイッチモード、R=レジスタモード、I=入出力モニターモード)

LDボディ

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_F,F181_DSP!,Instance,8,0,14,4,,?DEN?D@'s1'?AENO);
B(B_VARIN,,0,6,2,8,4,);
B(B_CONTACT,,bEnable0,4,1,6,3,R);
B(B_COMMENT,,N mode~ 1st screen,18,2,28,3,);
L(1,2,4,2);
L(6,2,8,2);
L(1,0,1,4);
        END_NETWORK_BODY
    END_NET_WORK
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 5 ;
        NETWORK_BODY
B(B_F,F181_DSP!,Instance,8,1,14,5,,?DEN?D@'s1'?AENO);
B(B_VARIN,,1,6,3,8,5,);
B(B_CONTACT,,bEnable1,4,2,6,4,R);
B(B_COMMENT,,N mode~ 2nd screen,18,2,28,3,);
L(1,3,4,3);
L(6,3,8,3);
L(1,0,1,5);
        END_NETWORK_BODY
    END_NET_WORK
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 5 ;
        NETWORK_BODY
B(B_F,F181_DSP!,Instance,8,1,14,5,,?DEN?D@'s1'?AENO);
B(B_VARIN,,2,6,3,8,5,);
B(B_CONTACT,,bEnable2,4,2,6,4,R);
B(B_COMMENT,,S mode~ 1st screen,18,2,28,3,);
L(1,3,4,3);
L(6,3,8,3);
L(1,0,1,5);
        END_NETWORK_BODY
    END_NET_WORK
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 5 ;
        NETWORK_BODY
B(B_F,F181_DSP!,Instance,8,1,14,5,,?DEN?D@'s1'?AENO);
B(B_VARIN,,3,6,3,8,5,);
B(B_CONTACT,,bEnable3,4,2,6,4,R);
B(B_COMMENT,,S mode~ 2nd screen,18,2,28,3,);
L(1,3,4,3);
L(6,3,8,3);
L(1,0,1,5);
        END_NETWORK_BODY
    END_NET_WORK
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 5 ;
        NETWORK_BODY
B(B_F,F181_DSP!,Instance,8,1,14,5,,?DEN?D@'s1'?AENO);
B(B_VARIN,,4,6,3,8,5,);
B(B_CONTACT,,bEnable4,4,2,6,4,R);
B(B_COMMENT,,R mode~ 1st screen,18,2,28,3,);
L(1,3,4,3);
L(6,3,8,3);
L(1,0,1,5);
        END_NETWORK_BODY
    END_NET_WORK
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 5 ;
        NETWORK_BODY
B(B_F,F181_DSP!,Instance,8,1,14,5,,?DEN?D@'s1'?AENO);
B(B_VARIN,,5,6,3,8,5,);
B(B_CONTACT,,bEnable5,4,2,6,4,R);
B(B_COMMENT,,R mode~ 2nd screen,18,2,28,3,);
L(1,3,4,3);
L(6,3,8,3);
L(1,0,1,5);
        END_NETWORK_BODY
    END_NET_WORK
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 5 ;
        NETWORK_BODY
B(B_F,F181_DSP!,Instance,8,1,14,5,,?DEN?D@'s1'?AENO);
B(B_VARIN,,6,6,3,8,5,);
B(B_CONTACT,,bEnable6,4,2,6,4,R);
B(B_COMMENT,,I mode~ 1st screen,18,2,28,3,);
L(1,3,4,3);
L(6,3,8,3);
L(1,0,1,5);
        END_NETWORK_BODY
    END_NET_WORK
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 5 ;
        NETWORK_BODY
B(B_F,F181_DSP!,Instance,8,1,14,5,,?DEN?D@'s1'?AENO);
B(B_VARIN,,7,6,3,8,5,);
B(B_CONTACT,,bEnable7,4,2,6,4,R);
B(B_COMMENT,,I mode~ 2nd screen,18,2,28,3,);
L(1,3,4,3);
L(6,3,8,3);
L(1,0,1,5);
        END_NETWORK_BODY
    END_NET_WORK
END_BODY

STボディ

IF DF(bEnable0) then
    (* N mode, 1st screen *)
    F181_DSP(s1:=0);
END_IF;
IF DF(bEnable1) then
    (* N mode, 2nd screen *)
    F181_DSP(s1:=1);
END_IF;
IF DF(bEnable2) then
    (* S mode, 1st screen *)
    F181_DSP(s1:=2);
END_IF;
IF DF(bEnable3) then
    (* S mode, 2nd screen *)
    F181_DSP(s1:=3);
END_IF;
IF DF(bEnable4) then
    (* R mode, 1st screen *)
    F181_DSP(s1:=4);
END_IF;
IF DF(bEnable5) then
    (* R mode, 2nd screen *)
    F181_DSP(s1:=5);
END_IF;
IF DF(bEnable6) then
    (* I mode, 1st screen *)
    F181_DSP(s1:=6);
END_IF;
IF DF(bEnable7) then
    (* I mode, 2nd screen *)
    F181_DSP(s1:=7);
END_IF;

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