MemSw関数
指定されたメモリーI/Oビットの状態を返します。
書式
MemSw(ビット番号)
パラメーター
- ビット番号
- メモリーI/Oビット番号を表わす数値で指定します。
戻り値
指定されたビットがオンのとき"1"を、オフのとき"0"を返します。
解説
MemSwは、1メモリーI/Oビットの状態を返します。MemSwには、通常MemOnとMemOff命令がセットで使われます。MemOnは指定されたビットをオンにし、MemOffは指定されたビットをオフします。
参照
In, MemIn, InBCD, Off, MemOff, On, MemOn, OpBCD, Oport, Out, MemOut, Sw, Wait
MemSw関数使用例
下記例では、2つのタスクが、それぞれが動作命令を起動する機能を持ちながら、一方がロボット制御をしていないときに、一方がロボット動作を制御するようインターロックしています。それにより、各々のタスクが与えられた動作ステートメントを、きちんと想定通りの順序にしたがって実行することができます。
MemSwは、Wait命令とともに使われることで、メモリーI/O ビット1が、次の動作を安全に行える適正な値になるまで待って、動作を再開します。
Function main
Integer I
MemOff 1
Xqt 2, task2
For I = 1 to 100
Wait MemSw(1) = Off
Go P(i)
MemOn 1
Next I
Fend
Function task2
Integer I
For I = 101 to 200
Wait MemSw(1) = On
Go P(i)
MemOff 1
Next I
Fend
下記は、コマンドウィンドウからの簡単な操作例です。
> memon 1
> print memsw(1)
1
> memoff 1
> print memsw(1)
0