DioGetDeviceInfo


機能

デバイスの情報を取得します。

書式

Ret = DioGetDeviceInfo ( Device , InfoType , Param1 , Param2 , Param3 )

引数

Device [ VB.NET: String ] [ C, C++: char * ] [ C#: string ] [ Python: ctypes.c_char_p ]
デバイス名称を指定します。(例:"PIO-32/32L(PCI)H")

InfoType [ VB.NET: Short ] [ C, C++: short ] [ C#: short ] [ Python: ctypes.c_short ]
取得する情報のタイプを指定します。情報のタイプは以下の定義値の何れかです。

定義

[Dec]

意味

引数

IDIO_DEVICE_TYPE

0

デバイスタイプ

Param1(short)

IDIO_NUMBER_OF_8255

1

8255チップの数

Param1(int)

IDIO_IS_8255_BOARD

2

8255チップの有無

Param1(int)

IDIO_NUMBER_OF_DI_BIT

3

入力ビット数

Param1(short)

IDIO_NUMBER_OF_DO_BIT

4

出力ビット数

Param1(short)

IDIO_NUMBER_OF_DI_PORT

5

入力ポート数

Param1(short)

IDIO_NUMBER_OF_DO_PORT

6

出力ポート数

Param1(short)

IDIO_IS_POSITIVE_LOGIC

7

正論理かどうか

Param1(int)

IDIO_IS_ECHO_BACK

8

エコーバック可能

Param1(int)

IDIO_IS_DIRECTION

9

DioSetIoDirection関数使用可能

Param1(int)

IDIO_IS_FILTER

10

デジタルフィルター使用可能

Param1(int)

IDIO_NUMBER_OF_INT_BIT

11

割り込み可能ビット数

Param1(short)

デバイスタイプ定義値

定義

意味

DEVICE_TYPE_ISA

ISA or C bus

DEVICE_TYPE_PCI

PCI bus

DEVICE_TYPE_PCMCIA

PCMCIA

DEVICE_TYPE_USB

USB

DEVICE_TYPE_FIT

FIT

DEVICE_TYPE_CARDBUS

CardBus

DEVICE_TYPE_NET

Network

Param1, Param2, Param3
情報のタイプに合わせた引数をアドレスで指定します。指定する必要のない項目にはNULLを指定してください。

戻り値

Ret [ VB.NET: Integer ] [ C, C++: long ]  [ C#: int ] [ Python: ctypes.c_long ]

定義

[Dec]

意味

DIO_ERR_SUCCESS

0

正常終了

DIO_ERR_SYS_RECOVERED_FROM_STANDBY

7

スタンバイモードから復帰したため、DioResetDevice関数を実行してください

DIO_ERR_INFO_INVALID_DEVICE

10050

指定したデバイス名称が見つかりません。

DIO_ERR_INFO_NOT_FIND_DEVICE

10051

利用可能なデバイスが見つかりません。

DIO_ERR_INFO_INVALID_INFOTYPE

10052

指定したデバイス情報タイプが範囲外です。

その他のエラー(参照:エラーコード詳細

初期値

なし

説明

デバイスの情報を取得します。

使用例

「PIO-32/32L(PCI)H」のデバイス種類を取得します。

VB.NET

Dim Ret As Integer
Dim DeviceType As Short
Ret = DioGetDeviceInfo ( "PIO-32/32L(PCI)H" , IDIO_DEVICE_TYPE , DeviceType , 0 , 0 )
 

C, C++

long Ret;
short DeviceType;
Ret = DioGetDeviceInfo ( "PIO-32/32L(PCI)H" , IDIO_DEVICE_TYPE , &DeviceType , NULL , NULL );
 

C#

int Ret;
short DeviceType;
Ret = dio.GetDeviceInfo ( "PIO-32/32L(PCI)H" , IDIO_DEVICE_TYPE , out DeviceType , null , null );
 

Python

Ret = ctypes.c_long()
DeviceType = ctypes.c_short()
Ret.value = cdio.DioGetDeviceInfo ( "PIO-32/32L(PCI)H" , cdio.IDIO_DEVICE_TYPE , ctypes.byref(DeviceType) , 0 , 0 )