第4章 リファレンス
データ 1 → ON データ 0 → OFF
11. DioOutputByte
【機能】
デジタル入出力デバイスの接点 8 点分を制御します。
【書式】
●C 言語
INT DioOutputByte ( HANDLE DeviceHandle, INT No,
BYTE Value );
●Visual Basic
Declare Function DioOutputByte Lib "FbiDio.DLL"( _ ByVal DeviceHandle As Long, _
ByVal No As Long, _ ByVal Value As Byte _ )As Long
●Delphi
function DioOutputByte ( DeviceHandle: Thandle;
No: Integer;
Value: Byte
): Integer; stdcall; external 'FbiDio.DLL';
【パラメータ】
DeviceHandle
DioOpen関数で取得したデバイスハンドルを指定します。
No
データを出力する接点を下記の識別子で指定します。
FBIDIO_OUT1_8 OUT1~OUT8 の 8 点分のデータを出力します。
FBIDIO_OUT9_16 OUT9~OUT16 の 8 点分のデータを出力します。
FBIDIO_OUT17_24 OUT17~OUT24 の 8 点分のデータを出力します。
FBIDIO_OUT25_32 OUT25~OUT32 の 8 点分のデータを出力します。
FBIDIO_OUT33_40 OUT33~OUT40 の 8 点分のデータを出力します。
FBIDIO_OUT41_48 OUT41~OUT48 の 8 点分のデータを出力します。
FBIDIO_OUT49_56 OUT49~OUT56 の 8 点分のデータを出力します。
FBIDIO_OUT57_64 OUT57~OUT64 の 8 点分のデータを出力します。
Value
指定した接点へ出力するデータを指定します。
【戻り値】
正常終了した場合は、FBIDIO_ERROR_SUCCESSが返されます。
FBIDIO_ERROR_SUCCESS以外の値が返された場合については、『4.5 戻り値一覧』をご参照くださ い。
【備考】
データフォーマット
指定したデータは下記のようにビット毎に接点と対応しています。
ビット bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 FBIDIO_OUT1_8 OUT8 OUT7 OUT6 OUT5 OUT4 OUT3 OUT2 OUT1 FBIDIO_OUT9_16 OUT16 OUT15 OUT14 OUT13 OUT12 OUT11 OUT10 OUT9 FBIDIO_OUT17_24 OUT24 OUT23 OUT22 OUT21 OUT20 OUT19 OUT18 OUT17 FBIDIO_OUT25_32 OUT32 OUT31 OUT30 OUT29 OUT28 OUT27 OUT26 OUT25 FBIDIO_OUT33_40 OUT40 OUT39 OUT38 OUT37 OUT36 OUT35 OUT34 OUT33 FBIDIO_OUT41_48 OUT48 OUT47 OUT46 OUT45 OUT44 OUT43 OUT42 OUT41 FBIDIO_OUT49_56 OUT56 OUT55 OUT54 OUT53 OUT52 OUT51 OUT50 OUT49 FBIDIO_OUT57_64 OUT64 OUT63 OUT62 OUT61 OUT60 OUT59 OUT58 OUT57 データ 0 → OFF
データ 1 → ON
PCI-2470 の場合、出力接点の指定と、その指定で出力されるデータは下記のように対応してい ます。
ビット bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 FBIDIO_OUT1_8 OUT8 OUT7 OUT6 OUT5 OUT4 OUT3 OUT2 OUT1 OUT1~OUT8 の出力を制御します。
”0” : 出力 OFF
”1” : 出力 ON
ビット bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
FBIDIO_OUT9_16 未使用
© 2000, 2014 Interface Corporation. All rights reserved.
ビット bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 FBIDIO_IN17_24 SIG8 SIG7 SIG6 SIG5 SIG4 SIG3 SIG2 SIG1 SIG1~SIG8:異常検出割込みの要因選択(マスク)を設定します。
SIG1~SIG8 は下記のように OUT1~OUT8 に対応しています。
対応するビットが”0”の場合、割込み禁止です、”1”の場合、割込み有効となります。
SIG1 OUT1 SIG2 OUT2 SIG3 OUT3 SIG4 OUT4 SIG5 OUT5 SIG6 OUT6 SIG7 OUT7 SIG8 OUT8
ビット bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 FBIDIO_IN25_32
FBIDIO_IN33_40 FBIDIO_IN41_48 FBIDIO_IN49_56 FBIDIO_IN57_64
未使用
PCI-2758A, PCI-2758AL, PCI-2758AM の場合、出力接点の指定と、その指定で出力されるデー タは下記のように対応しています。
ビット bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 FBIDIO_OUT1_8 OUT8 OUT7 OUT6 OUT5 OUT4 OUT3 OUT2 OUT1 OUT1~OUT8 の出力を制御します。
”0” : 出力 OFF
”1” : 出力 ON
ビット bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 FBIDIO_OUT9_16 OUT8A
OUT8C
OUT7A OUT7C
OUT6A OUT6C
OUT5A OUT5C
OUT4A OUT4C
OUT3A OUT3C
OUT2A OUT2C
OUT1A OUT1C リードリレー接点 OUT1A,C~OUT8A,C の出力を制御します。
”0” : OUTxA と OUTxC には導通がありません
”1” : OUTxA と OUTxC が導通します
ビット bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 FBIDIO_IN17_24
FBIDIO_IN25_32 FBIDIO_IN33_40 FBIDIO_IN41_48 FBIDIO_IN49_56 FBIDIO_IN57_64
未使用
© 2000, 2014 Interface Corporation. All rights reserved.
【使用例】
●C 言語 INT Ret;
HANDLE DeviceHandle;
DeviceHandle = DioOpen("FBIDIO1", FBIDIO_FLAG_NORMAL);
: :
Ret = DioOutputByte( DeviceHandle, FBIDIO_OUT1_8, 0x12 );
●Visual Basic Dim Ret As Long Dim Name As String Dim DeviceHandle As Long Name = "FBIDIO1" & Chr( 0 )
DeviceHandle = DioOpen(Name, FBIDIO_FLAG_NORMAL) :
:
Ret = DioOutputByte( DeviceHandle, FBIDIO_OUT1_8, &H12 )
●Delphi var
Ret: Integer;
Name: String;
DeviceHandle: THandle;
begin
Name := 'FBIDIO1';
DeviceHandle := DioOpen(Name, FBIDIO_FLAG_NORMAL);
: :
Ret := DioOutputByte( DeviceHandle, FBIDIO_OUT1_8, $12 );
end;
デバイス名「FBIDIO1」のデバイスの OUT2 と OUT5 を ON それ以外は OFF にします。