• 検索結果がありません。

DioGetOutputHandShakeConfig

ドキュメント内 GPC-2000 (ページ 158-163)

第4章 リファレンス

データ 0 → OFF データ 1 → ON

36. DioGetOutputHandShakeConfig

© 2000, 2014 Interface Corporation. All rights reserved.

OutputHandShakeConfig

ハンドシェーク入力に STB1 イベントを使用する/使用しないの設定を取得する変数へのポ インタ(参照渡し)を指定します。

0 ACK2 イベントを使用しない。ACK2 信号をポーリングしてハ

ンドシェーク出力するため速度が遅くなります。

FBIDIO_ACK2_ENABLE ACK2 イベントを使用する。ACK2 イベントを使用しない場合 よりハンドシェーク出力の速度が向上します。ただし、

DioEventRequestPending関数にてACK2 イベント待ちを使用 できなくなります。

FBIDIO_ACK2_HIGH_EDGE このフラグを指定すると ACK2 の立ち上がりエッジのタイミ ングを ACK2 信号有効としハンドシェーク出力が動作しま す。このフラグを指定しない場合は立ち下がりエッジのタイ ミングを ACK2 信号有効とします。

下記の識別子が論理和で指定されている場合、出力完了タイミングが変更されています。

FBIDIO_WAIT_LAST_ACK2 このフラグを指定すると DioOutputHandShake関数/

DioOutputHandShakeEx関数による最終データの出力後、ACK2 の応答があった時点で関数が完了となります。

このフラグを指定しない場合は、最終データの出力後 ACK2 の応答を待たずに上記出力関数が完了となります。

下記の識別子が論理和で指定されている場合、出力データ設定後に STB2 を有効にするまで の遅延時間が設定されています。

FBIDIO_STB2_DELAY_10US STB2 の遅延時間が 10μs に設定されています。

FBIDIO_STB2_DELAY_30US STB2 の遅延時間が 30μs に設定されています。

FBIDIO_STB2_DELAY_50US STB2 の遅延時間が 50μs に設定されています。

FBIDIO_STB2_DELAY_100US STB2 の遅延時間が 100μs に設定されています。

FBIDIO_STB2_DELAY_300US STB2 の遅延時間が 300μs に設定されています。

FBIDIO_STB2_DELAY_500US STB2 の遅延時間が 500μs に設定されています。

FBIDIO_STB2_DELAY_1MS STB2 の遅延時間が 1ms に設定されています。

FBIDIO_STB2_DELAY_3MS STB2 の遅延時間が 3ms に設定されています。

FBIDIO_STB2_DELAY_5MS STB2 の遅延時間が 5ms に設定されています。

FBIDIO_STB2_DELAY_10MS STB2 の遅延時間が 10ms に設定されています。

FBIDIO_STB2_DELAY_30MS STB2 の遅延時間が 30ms に設定されています。

FBIDIO_STB2_DELAY_50MS STB2 の遅延時間が 50ms に設定されています。

BitMask1

出力データマスクビットを受け取る変数へのポインタ(参照渡し)を指定します。

OUT1~OUT32 に対応します。下記のように各ビットが入力接点に対応しています。

bit31 bit30 bit29 ・・・ bit2 bit1 bit0 OUT32 OUT31 OUT30 ・・・ OUT3 OUT2 OUT1 0 : データを無効にします。

対応する接点への出力を変化させずにハンドシェーク出力を行います。

1 : データ有効 BitMask2

出力データマスクビットを受け取る変数へのポインタ(参照渡し)を指定します。

OUT33~OUT64 に対応します。下記のように各ビットが入力接点に対応しています。

bit31 bit30 bit29 ・・・ bit2 bit1 bit0 OUT64 OUT63 OUT62 ・・・ OUT35 OUT34 OUT33 0 : データを無効にします。

対応する接点への出力を変化させずにハンドシェーク出力を行います。

1 : データ有効

【戻り値】

正常終了した場合は、FBIDIO_ERROR_SUCCESSが返されます。

FBIDIO_ERROR_SUCCESS以外の値が返された場合については、『4.5 戻り値一覧』をご参照くださ い。

© 2000, 2014 Interface Corporation. All rights reserved.

【使用例】

●C 言語 INT Ret;

HANDLE DeviceHandle;

INT OutputHandShakeConfig;

DWORD BitMask1;

DWORD BitMask2;

DeviceHandle = DioOpen("FBIDIO1", FBIDIO_FLAG_NORMAL);

: :

Ret = DioGetOutputHandShakeConfig( DeviceHandle, &OutputHandShakeConfig, &BitMask1, &BitMask2 );

●Visual Basic Dim Ret As Long Dim Name As String Dim DeviceHandle As Long

Dim OutputHandShakeConfig As Long Dim BitMask1 As Long

Dim BitMask2 As Long

Name = "FBIDIO1" & Chr( 0 )

DeviceHandle = DioOpen(Name, FBIDIO_FLAG_NORMAL) :

Ret = DioGetOutputHandShakeConfig( DeviceHandle, OutputHandShakeConfig, _ BitMask1, BitMask2 )

●Delphi var

Ret: Integer;

Name: String;

DeviceHandle: THandle;

InputHandShakeConfig: Integer;

BitMask1: DWORD;

BitMask2: DWORD;

begin

Name := 'FBIDIO1';

DeviceHandle := DioOpen(Name, FBIDIO_FLAG_NORMAL);

: :

Ret := DioGetOutputHandShakeConfig( DeviceHandle, OutputHandShakeConfig, BitMask1, BitMask2 );

end;

デバイス名「FBIDIO1」のデバイスのハンドシェーク出力の設定内容を取得します。

© 2000, 2014 Interface Corporation. All rights reserved.

ドキュメント内 GPC-2000 (ページ 158-163)