//******************************************* // HPCI-CPD530 series Driver for Visual C // I/F DLL Function // file name:hicpd530.h // date :2003/06/16 // version :2.0.0.0 // Copyright(C) 2001-2003 // Hivertec Inc. All Rights Reserved. //******************************************* //----------------------------------------------------------------------------- // 定数定義 //----------------------------------------------------------------------------- #define INVALID_BUS_NUMBER 0xffffffff // 無効なバス番号 #define INVALID_DEV_NUMBER 0xffffffff // 無効なデバイス番号 #define INVALID_IO_ADDRESS 0xffffffff // 無効な I/O アドレス #define INVALID_IRQ_NUMBER 0xffffffff // 無効な IRQ 番号 #define INVALID_HPC_NUMBER 0xffffffff // 無効な管理番号 #define INVALID_BOARD_ID 0xffffffff // 無効なボードID //----------------------------------------------------------------------------- // 構造体 //----------------------------------------------------------------------------- // デバイス情報 typedef struct _HPCDEVICEINFO { DWORD nBusNumber; // バス番号 DWORD nDeviceNumber; // デバイス番号 DWORD dwIoPortAddress; // I/O ポートアドレス DWORD dwIrqNo; // IRQ 番号 DWORD dwNumber; // 管理番号(Windows 95/98/Meでは無視) DWORD dwBoardID; // ボードID } HPCDEVICEINFO, * PHPCDEVICEINFO; //------------------------------------------------------------------------------ // DLL関数プロトタイプ //------------------------------------------------------------------------------ #ifdef __cplusplus extern "C" { #endif // デバイス個数の取得(引数:デバイスの個数のアドレス) __declspec(dllimport) DWORD WINAPI cp530_GetDeviceCount(DWORD*); // デバイス情報の取得(引数:デバイスの個数のアドレス,デバイス情報リストの先頭アドレス) __declspec(dllimport) DWORD WINAPI cp530_GetDeviceInfo(DWORD*, HPCDEVICEINFO*); // デバイスオープン(引数:デバイスハンドルのアドレス,デバイス情報のアドレス) __declspec(dllimport) DWORD WINAPI cp530_OpenDevice(DWORD*, HPCDEVICEINFO*); // デバイスクローズ(引数:デバイスハンドル) __declspec(dllimport) DWORD WINAPI cp530_CloseDevice(DWORD); // メインステータス読込(引数:デバイスハンドル,軸,データ格納先) __declspec(dllimport) DWORD WINAPI cp530_rMstsW(DWORD, WORD, WORD*); // サブステータス読込(引数:デバイスハンドル,軸,データ格納先) __declspec(dllimport) DWORD WINAPI cp530_rSstsW(DWORD, WORD, WORD*); // コマンド書込(引数:デバイスハンドル ,軸,コマンド) __declspec(dllimport) DWORD WINAPI cp530_wCmdW(DWORD, WORD, WORD); // レジスタ読込(引数:デバイスハンドル,軸,コマンド,データ格納先) __declspec(dllimport) DWORD WINAPI cp530_rReg(DWORD, WORD, BYTE, DWORD*); // レジスタ書込(引数:デバイスハンドル,軸,コマンド,データ) __declspec(dllimport) DWORD WINAPI cp530_wReg(DWORD, WORD, BYTE, DWORD); // オプションポート読込(引数:デバイスハンドル,オフセットアドレス,データ格納先) __declspec(dllimport) DWORD WINAPI cp530_rPortB(DWORD, BYTE, BYTE*); // オプションポート書込(引数:デバイスハンドル,オフセットアドレス,データ) __declspec(dllimport) DWORD WINAPI cp530_wPortB(DWORD, BYTE, BYTE); // 入出力バッファ読込(引数:デバイスハンドル,軸,データ格納先) __declspec(dllimport) DWORD WINAPI cp530_rBufDW(DWORD, WORD, DWORD*); // 入出力バッファ書込(引数:デバイスハンドル,軸,データ) __declspec(dllimport) DWORD WINAPI cp530_wBufDW(DWORD, WORD, DWORD); // 2003/06/16追加 // ボード固有コード取得(引数:デバイスハンドル、ボード固有コードデータ格納先) __declspec(dllimport) DWORD WINAPI cp530_GetBoardCode(DWORD, WORD*); #ifdef __cplusplus } #endif