13.07.2015 Views

GPC-3300

GPC-3300

GPC-3300

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

DA(PCI/C-PCI)<strong>GPC</strong>-<strong>3300</strong>アナログ 出 力 製 品 Windows 対 応 ドライバソフトウェア.NET 用 補 足 ヘルプfor Windowswww.interface.co.jp


<strong>GPC</strong>-<strong>3300</strong> Help for Windows目 次第 1 章 はじめに .................................................31.1 概 要 ......................................................................... 31.2 クラスライブラリの 参 照 方 法 .................................................... 41.3 注 意 事 項 ..................................................................... 5第 2 章 リファレンス .............................................62.1. DLL 関 数 一 覧 ................................................................... 63.1. 関 数 個 別 説 明 .................................................................. 83.2. 関 数 個 別 説 明 (FIFO 系 用 )..................................................... 893.3. 関 数 個 別 説 明 ( 制 御 信 号 用 ) ................................................... 993.4. 関 数 個 別 説 明 (キャリブレーション 用 ) ........................................ 1063.5. 関 数 個 別 説 明 ( 電 流 出 力 系 用 ) ................................................ 1093.6. 構 造 体 定 義 .................................................................. 1243.7. 戻 り 値 一 覧 .................................................................. 1493.8. プログラム 例 ................................................................ 153第 3 章 サンプルプログラム .....................................1614.1. 実 行 手 順 ................................................................... 1614.2. サンプルプログラム 一 覧 ...................................................... 162第 4 章 重 要 な 情 報 .............................................163© 2000, 2013 Interface Corporation. All rights reserved.- 2 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows第 1 章 はじめに1.1 概 要本 書 では.NET 対 応 の 言 語 において <strong>GPC</strong>-<strong>3300</strong> を 使 用 するための 情 報 を 記 載 しています。その 他 の情 報 につきましては 最 新 情 報 ドキュメントファイル、オンラインヘルプを 参 照 してください。対 応 言 語Microsoft Visual C++ .NET 2002, .NET 2003, 2005, 2008, 2010Microsoft Visual C# .NET 2002, .NET 2003, 2005, 2008, 2010Microsoft Visual Basic .NET 2002, .NET 2003, 2005, 2008, 2010Borland Delphi 8 for the Microsoft .NET Framework.NET 対 応 に 関 しての 詳 細 は 弊 社 Web サイトで 無 料 でダウンロード 可 能 なチュートリアル「Microsoft Visual Studio .NET 移 行 ガイド」をご 参 照 ください。本 書 では、 各 API 関 数 のリファレンスのみを 説 明 しています。その 他 の 内 容 に 関 しては、オンラインヘルプ help.htm)をご 参 照 ください。© 2000, 2013 Interface Corporation. All rights reserved.- 3 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows1.2 クラスライブラリの 参 照 方 法1. クラスライブラリの 作 成.NETにおいてDLL 関 数 を 呼 び 出 すには、まずクラスライブラリを 用 意 する 必 要 があります。・Visual C# .NET の 場 合Visual Studio を 起 動 し、 以 下 のプロジェクトファイルを 開 きます。\interface\<strong>GPC</strong><strong>3300</strong>\samples\CS_NET\IFCDA\IFCDA.csprojこのプロジェクトをビルドすると、bin フォルダにクラスライブラリ IFCDA.dll が 作 成 されます。・Visual Basic .NET の 場 合Visual Studio を 起 動 し、 以 下 のプロジェクトファイルを 開 きます。\interface\<strong>GPC</strong><strong>3300</strong>\samples\VB_NET\IFCDA\IFCDA.vbprojこのプロジェクトをビルドすると、bin フォルダにクラスライブラリ IFCDA.dll が 作 成 されます。・Delphi 8 の 場 合Delphi を 起 動 し、 以 下 のプロジェクトファイルを 開 きます。\interface\<strong>GPC</strong><strong>3300</strong>\samples\DELPHI_NET\IFCDA\IFCDA.bdsprojこのプロジェクトを 再 構 築 すると、クラスライブラリ IFCDA.dll が 作 成 されます。(クラスライブラリのソースファイルを 用 意 しています。DLL 関 数 の 呼 び 出 しをカスタマイズしたい 場 合 は、クラスライブラリのソースを 参 照 してください。)2. クラスライブラリの 参 照・Visual C# .NET, Visual Basic .NET の 場 合Visual Studio のメニューの「プロジェクト」の「 参 照 の 追 加 」を 選 択 してください。参 照 」ボタンをクリックして 上 記 にて 作 成 したクラスライブラリ DLL を 指 定 します。「 選 択 されたコンポーネント」に 指 定 した DLL が 表 示 されます。「OK」ボタンをクリックすると 設 定 は 完 了 です。・Delphi 8 の 場 合Delphi 8 のメニューの「プロジェクト」の「 参 照 の 追 加 」を 選 択 してください。「 参 照 」ボタンをクリックして 上 記 にてクラスライブラリ DLL を 指 定 します。「 新 しい 参 照 」に 指 定 した DLL が 表 示 されます。「OK」ボタンをクリックすると 設 定 は 完 了 です。次 にソースのヘッダで 各 言 語 毎 に 下 記 のように InterfaceCorpDllWrap の 名 前 空 間 を 追 加 すればDLL 関 数 を 次 章 の「 使 用 例 」の 方 法 で 呼 び 出 すことができるようになります。・Visual C# .NET の 場 合using InterfaceCorpDllWrap;・Visual Basic .NET の 場 合Imports InterfaceCorpDllWrap・Delphi 8 の 場 合uses InterfaceCorpDllWrap;uses InterfaceCorpDllWrap.IFCDA; (コールバック 関 数 を 使 用 する 場 合 )© 2000, 2013 Interface Corporation. All rights reserved.- 4 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows1.3 注 意 事 項■ 非 同 期 処 理 で 参 照 渡 しする 変 数 について各 関 数 はアンマネージ 関 数 です。非 同 期 処 理 を 使 用 する 際 は、ガーベジコレクションによりメモリの 開 放 ・ 移 動 があるタイミングで 発 生 します。それにより 関 数 内 で 保 持 しているポインタと、アプリケーション 内 での 変 数 のポインタでずれが 発 生 し、メモリ 破 壊 が 発 生 する 可 能 性 があります。マネージオブジェクトの 参 照 渡 しをする 際 は、GCHandle 構 造 体 を 使 用 してマネージオブジェクトがコレクトされるのを 防 いでください。コールバック 関 数 については 下 記 の 対 策 例 のように 対 策 してください。対 象 となる 関 数AdSetBoardConfig 関 数□ 対 策 例// グローバル 変 数static IFCDA.LPDACALLBACK lpcallback =new IFCDA_ANY.LPDACALLBACK(CallBackProc);// メインルーチンnRet = IFCDA_ANY.DaSetBoardConfig( hDeviceHandle , 1024, 0 , lpcallback , 0 );■ 構 造 体 についてStructLayout クラスのオプションに「LayoutKind.Sequential」を 指 定 しています。© 2000, 2013 Interface Corporation. All rights reserved.- 5 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows第 2 章 リファレンス弊 社 アナログ 出 力 製 品 を 制 御 するにあたって、 知 っておく 必 要 がある 事 項 を 説 明 します。2.1. DLL 関 数 一 覧No 関 数 名 機 能1 DaOpen デバイスのオープンを 行 い、 以 後 のデバイスへのアクセスを 行 えるようにします。2 DaClose デバイスのクローズを 行 い、デバイスのために 使 用 されていた 各 種 リソースの 解 放 を 行 い、 以 後 のデバイスへのアクセスを 禁 止 します。3 DaGetDeviceInfo デバイスの 仕 様 を 取 得 します。4 DaSetBoardConfig デバイスの 動 作 の 設 定 を 行 います。5 DaGetBoardConfig デバイスの 現 在 の 動 作 設 定 を 取 得 します。6 DaSetCountEvent デバイスの 指 定 件 数 出 力 更 新 時 にイベント 通 知 を 行 います。7 DaSetSamplingConfig デバイスのアナログ 出 力 更 新 条 件 の 設 定 を 行 います。8 DaGetSamplingConfig デバイスの 現 在 設 定 されているアナログ 出 力 更 新 条 件 を 取 得 します。9 DaSetMode デバイス 固 有 の 動 作 モードの 設 定 を 行 います。10 DaGetMode デバイスの 現 在 設 定 されているデバイス 固 有 の 動 作 モードを 取 得 します。11 DaSetSamplingData デバイスから 出 力 するアナログ 出 力 データのセットを 行 います。12 DaClearSamplingData アナログ 出 力 バッファ 内 のデータをクリアします。13 DaStartSampling デバイスのアナログ 出 力 更 新 をスタートさせます。14 DaStartFileSampling データファイルを 読 み 込 み、アナログ 出 力 更 新 を 行 います。15 DaSyncSampling 複 数 枚 同 期 アナログ 出 力 機 能 を 使 用 したアナログ 出 力 更 新 をスタートさせます。16 DaStopSampling デバイスのアナログ 出 力 更 新 を 停 止 させます。17 DaGetStatus デバイスのアナログ 出 力 更 新 動 作 状 態 を 取 得 します。18 DaSetOutputMode PCI-3329,3338,CTP-3329,3338, CPZ-3329,3338 における 同 時 出 力 機 能 を有 効 か 無 効 にするか 設 定 します。19 DaGetOutputMode PCI-3329,3338,CTP-3329,3338, CPZ-3329,3338 における 同 時 出 力 機 能 の設 定 を 取 得 します。20 DaOutputDA デバイスの 1 件 のアナログ 出 力 を 行 います。21 DaInputDI デバイスの 汎 用 デジタル 入 力 端 子 を 読 み 出 します。22 DaOutputDO デバイスの 汎 用 デジタル 出 力 端 子 へデータを 出 力 します。23 DaDataConv アナログデータの 形 式 を 変 換 します。 形 式 の 変 換 とともにデータに 対 し平 均 処 理 やスムージング 処 理 を 行 う 事 ができます。24 DaWriteFile 指 定 バッファ 内 のアナログ 出 力 データを、ファイルに 保 存 します。25 fnConv DaDataConv 関 数 で 使 用 するコールバック 関 数 のプレースホルダです。データ 変 換 時 に fnConv 関 数 を 呼 び 出 すことができます。fnConv 関 数 は、データ 1 点 毎 に 呼 び 出 されます。26 CallBackProc アナログ 出 力 更 新 終 了 時 に 呼 び 出 されるコールバック 関 数 のプレースホルダーです。アナログ 出 力 更 新 終 了 時 に CallBackProc 関 数 を 呼 び 出 すことができます。© 2000, 2013 Interface Corporation. All rights reserved.- 6 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows27 DaSetFifoConfig FIFO 方 式 DA 製 品 のアナログ 出 力 更 新 設 定 を 行 います。28 DaGetFifoConfig FIFO 方 式 DA 製 品 のアナログ 出 力 更 新 設 定 を 取 得 します。29 DaSetInterval インターバルタイマの 設 定 を 行 います。30 DaGetInterval インターバルタイマの 設 定 を 取 得 します。31 DaSetFunction デバイスの 外 部 出 力 信 号 の 制 御 を 行 います。32 DaGetFunction デバイスの 外 部 出 力 信 号 の 状 態 を 取 得 します。33 DaCalibration アナログ 出 力 デバイスのキャリブレーションを 行 います34 DaSetCurrentDir アナログ 出 力 デバイスの 電 流 出 力 方 向 の 設 定 を 行 います。35 DaGetCurrentDir アナログ 出 力 デバイスの 電 流 出 力 方 向 の 取 得 を 行 います。36 DaSetPowerSupply アナログ 出 力 デバイスの 外 部 電 源 の 供 給 / 遮 断 の 設 定 を 行 います。37 DaGetPowerSupply アナログ 出 力 デバイスの 外 部 電 源 の 供 給 / 遮 断 の 設 定 状 態 を 取 得 します。38 DaSetExcessVoltage アナログ 出 力 デバイスの 過 電 圧 検 出 の 有 効 / 無 効 の 設 定 を 行 います。39 DaGetRelayStatus アナログ 出 力 デバイスの 出 力 リレーの 設 定 状 態 を 取 得 します。40 DaGetOVStatus アナログ 出 力 デバイスの 過 電 圧 検 出 信 号 の 状 態 を 取 得 します。© 2000, 2013 Interface Corporation. All rights reserved.- 7 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows3.1. 関 数 個 別 説 明1. DaOpen【 機 能 】デバイスのオープンを 行 い、 以 後 のデバイスへのアクセスを 行 えるようにします。「デバイス マネージャ」に「FbiPciDa」が 追 加 され 認 識 された 弊 社 デバイスが 一 覧 表 示 されます。一 覧 の 製 品 型 式 の 横 に 製 品 上 のロータリスイッチの 値 とデバイス 名 が 表 示 されます。デバイス名 は 使 用 する 製 品 枚 数 やスロット 位 置 の 変 更 等 でシステム 構 成 が 変 化 すると 割 り 当 てられる名 前 が 変 化 する 場 合 があります。システム 構 成 が 変 化 する 環 境 でご 使 用 になる 場 合 は、デバイス 名 の 指 定 が 変 更 できるようにアプリケーションを 作 成 ください。【 書 式 】●Visual C# .NET(x86、x64 共 用 )[DllImport("FbiDa.dll")]public static extern IntPtr DaOpen (string LpszName);●Visual C# .NET(x86 用 )[DllImport("FbiDa.dll")]public static extern uint DaOpen (string LpszName);●Visual Basic .NET(x86、x64 共 用 )Declare Function DaOpen Lib "FbiDa.DLL"(ByVal LpszName As String)As IntPtr●Visual Basic .NET(x86 用 )Declare Function DaOpen Lib "FbiDa.DLL"(ByVal LpszName As String)As Integer●Delphi 8class function DaOpen (LpszName: String): Integer; static;【パラメータ】lpszNameオープンするデバイスのデバイス 名 を 指 定 してください。© 2000, 2013 Interface Corporation. All rights reserved.- 8 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windowsデバイス 名 は FBIDA1~FBIDA255。© 2000, 2013 Interface Corporation. All rights reserved.- 9 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows【 戻 り 値 】DaOpen 関 数 が 正 常 に 終 了 した 場 合 には、 有 効 なハンドルが 返 されます。オープンに 失 敗 した 場 合 には、INVALID_HANDLE_VALUE(FFFFFFFFh)が 返 されます。【 使 用 例 】●Visual C# .NET(x86、x64 共 用 )uint hDeviceHandle;string lpszName;lpszName = “FBIDA1”;hDeviceHandle = IFCDA_ANY.DaOpen(lpszName );●Visual Basic .NET(x86、x64 共 用 )Dim hDeviceHandle As IntegerDim lpszName As IntegerlpszName = “FBIDA1”hDeviceHandle = IFCDA_ANY.DaOpen(lpszName )●Delphi 8VarlpszName: String;beginlpszName := ‘FBIDA1’;hDeviceHandle := IFCDA.DaOpen(lpszName );end;デバイス 名 "FBIDA1"のデバイスをオープンし、 変 数 hDeviceHandle にデバイスハンドルを 返 します。© 2000, 2013 Interface Corporation. All rights reserved.- 10 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows2. DaClose【 機 能 】デバイスのクローズを 行 い、デバイスアクセスのために 使 用 されていた 各 種 リソースの 解 放 を行 い、 以 後 のデバイスへのアクセスを 禁 止 します。【 書 式 】●Visual C# .NET(x86、x64 共 用 )[DllImport("FbiDa.dll")]public static extern int DaClose(IntPtr hDeviceHandle);●Visual C# .NET(x86 用 )[DllImport("FbiDa.dll")]public static extern int DaClose(uint hDeviceHandle);●Visual Basic .NET(x86、x64 共 用 )Declare Function DaClose Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr)As Integer●Visual Basic .NET(x86 用 )Declare Function DaClose Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer)As Integer●Delphi 8class function AdClose (hDeviceHandle: Integer): Integer; static;【パラメータ】hDeviceHandleAdOpen 関 数 で 取 得 したデバイスハンドルを 指 定 してください。【 戻 り 値 】DaClose 関 数 は 処 理 が 正 常 終 了 するとDA_ERROR_SUCCESSを 返 します。 正 常 に 処 理 が 終 了 しなかった 場 合 DA_ERROR_SUCCESS 以 外 の 値 を 返 します。DA_ERROR_SUCCESS 以 外 の 値 が 返 された 場 合 については『3.7 戻 り 値 一 覧 』を 参 照 してください。© 2000, 2013 Interface Corporation. All rights reserved.- 11 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows【 使 用 例 】●Visual C# .NET(x86、x64 共 用 )int nRet;IntPtr hDeviceHandle;string lpszName;lpszName = “FBIDA1”;hDeviceHandle = IFCDA_ANY.DaOpen(lpszName);:::nRet = IFCDA_ANY.DaClose(hDeviceHandle);●Visual Basic .NET(x86、x64 共 用 )Dim nRet As IntegerDim lpszName As StringDim hDeviceHandle As IntPtrlpszName = "FBIDA1"hDeviceHandle = IFCDA_ANY.DaOpen(lpszName)::nRet = IFCDA_ANY.DaClose(hDeviceHandle)●Delphi 8VarlpszName: String;hDeviceHandle: Integer;nRet: Integer;lpszName := 'FBIDA1';hDeviceHandle := IFCDA.DaOpen(lpszName);::nRet := IFCDA.DaClose(hDeviceHandle);デバイス 名 「FBIDA1」のデバイスのクローズ 処 理 を 行 います。© 2000, 2013 Interface Corporation. All rights reserved.- 12 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows3. DaGetDeviceInfo【 機 能 】デバイスから 各 種 仕 様 の 取 得 を 行 います。【 書 式 】●Visual C# .NET(x86、x64 共 用 )[DllImport("FbiDa.dll")]public static extern int DaGetDeviceInfo (IntPtrhDeviceHandle,out ADBOARDSPEC pDaBoardSpec);●Visual C# .NET(x86 用 )[DllImport("FbiDa.dll")]public static extern int DaGetDeviceInfo (uinthDeviceHandle,out ADBOARDSPEC pDaBoardSpec);●Visual Basic .NET(x86、x64 共 用 )Declare Function DaGetDeviceInfo Lib " FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByRef pDaBoardSpec As ADBOARDSPEC)As Integer●Visual Basic .NET(x86 用 )Declare Function DaGetDeviceInfo Lib " FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByRef pDaBoardSpec As ADBOARDSPEC)As Integer●Delphi 8class function DaGetDeviceInfo (hDeviceHandle: Integer;var pDaBoardSpec: ADBOARDSPEC): Integer; static;【パラメータ】hDeviceHandleDaOpen 関 数 で 取 得 したデバイスハンドルを 指 定 してください。pDaBoardSpecDA 製 品 の 仕 様 を 格 納 する 構 造 体 (DABOARDSPEC 構 造 体 )へのポインタを 指 定 します。© 2000, 2013 Interface Corporation. All rights reserved.- 13 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows【 戻 り 値 】DaGetDeviceInfo 関 数 は 処 理 が 正 常 終 了 するとDA_ERROR_SUCCESSを 返 します。 正 常 に 処 理 が 終了 しなかった 場 合 DA_ERROR_SUCCESS 以 外 の 値 を 返 します。DA_ERROR_SUCCESS 以 外 の 値 が 返 された 場 合 については『3.7 戻 り 値 一 覧 』を 参 照 してください。【 使 用 例 】●Visual C# .NET(x86、x64 共 用 )int nRet;IntPtr hDeviceHandle;DABOARDSPEC DaBoardSpec;HDeviceHandle = IFCDA.DaOpen(“FBIDA1”);nRet = IFCDA_ANY.DaGetDeviceInfo (hDeviceHandle, &DaBoardSpec);●Visual Basic .NET(x86、x64 共 用 )Dim lpszName As StringDim hDeviceHandle As IntPtrDim DaBoardSpec As DABOARDSPECHDeviceHandle = IFCDA.DaOpen("FBIDA1")nRet = IFCDA_ANY.DaGetDeviceInfo( hDeviceHandle, DaBoardSpec);●Delphi 8VarhDeviceHandle: Integer;DaBoardSpec: DABOARDSPEC;hDeviceHandle := IFCDA.DaOpen ('FBIDA1');nRet := IFCDA.DaGetDeviceInfo (hDeviceHandle, DaBoardSpec);デバイス 名 「FBIDA1」のデバイスのデバイス 情 報 を 取 得 します。© 2000, 2013 Interface Corporation. All rights reserved.- 14 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows4. DaSetBoardConfig【 機 能 】デバイスのイベント 設 定 を 行 います。【 書 式 】●Visual C# .NET(x86、x64 共 用 )[DllImport("FbiDa.dll")]public static extern int DaSetBoardConfig (IntPtrhDeviceHandle,uintulBufferSize,IntPtrhEvent,LPADCALLBACK lpCallBackProc,uintdwUser);●Visual C# .NET(x86 用 )[DllImport("FbiDa.dll")]public static extern int DaSetBoardConfig (uinthDeviceHandle,uintulBufferSize,uinthEvent,LPADCALLBACK lpCallBackProc,uintdwUser);●Visual Basic .NET(x86、x64 共 用 )Declare Function DaSetBoardConfig Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByVal ulBufferSize As Integer,ByVal hEvent As IntPtr,ByVal lpCallBackProc As LPADCALLBACK,ByVal dwUser As Integer)As IntegerDeclare Function DaSetBoardConfig Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByVal ulBufferSize As Integer,ByVal hEvent As Integer,ByVal lpCallBackProc As IntPtr,ByVal dwUser As Integer)As Integer© 2000, 2013 Interface Corporation. All rights reserved.- 15 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows●Visual Basic .NET(x86 用 )Declare Function DaSetBoardConfig Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByVal ulBufferSize As Integer,ByVal hEvent As Integer,ByVal lpCallBackProc As LPADCALLBACK,ByVal dwUser As Integer)As IntegerDeclare Function DaSetBoardConfig Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByVal ulBufferSize As Integer,ByVal hEvent As Integer,ByVal lpCallBackProc As Integer,ByVal dwUser As Integer)As Integer●Delphi 8class function DaSetBoardConfig (hDeviceHandle: Integer;ulBufferSize: Cardinal;hEvent:Integer;lpCallBackProc: LPDACALLBACK;dwUser:Integer): Integer; static;【パラメータ】hDeviceHandleDaOpen 関 数 で 取 得 したデバイスハンドルを 指 定 してください。ulBuferSizeアナログ 出 力 データ 格 納 用 バッファサイズを 指 定 します。バッファサイズは 1 チャンネルあたりのデータ 数 で 指 定 します。・デフォルト:1024hEventアナログ 出 力 更 新 停 止 時 にシグナル 状 態 に 設 定 されるイベントを 識 別 します。イベント 通 知 を 行 わない 場 合 には、C 言 語 では NULL,Visual Basic では 0,Delphi では NILを 指 定 してください。・デフォルト:NULLlpCallBackProcアナログ 出 力 更 新 停 止 時 に 呼 び 出 すユーザ・コールバック 関 数 のアドレスを 指 定 します。ユーザ・コールバック 関 数 の 呼 び 出 しを 行 わない 場 合 には、C 言 語 では NULL、Visual Basicでは 0、Delphi では NIL を 指 定 してください。・デフォルト:NULL© 2000, 2013 Interface Corporation. All rights reserved.- 16 -


<strong>GPC</strong>-<strong>3300</strong> Help for WindowsdwUserユーザ・コールバック 関 数 へ 引 き 渡 すユーザ・データを 指 定 します。ユーザ・コールバック 関 数 の 呼 び 出 しを 行 わない 場 合 には、0 を 指 定 してください。・デフォルト:0【 戻 り 値 】DaSetBoardConfig 関 数 は 処 理 が 正 常 終 了 するとDA_ERROR_SUCCESSを 返 します。 正 常 に 処 理 が 終了 しなかった 場 合 DA_ERROR_SUCCESS 以 外 の 値 を 返 します。DA_ERROR_SUCCESS 以 外 の 値 が 返 された 場 合 については『3.7 戻 り 値 一 覧 』を 参 照 してください。【 使 用 例 】●Visual C# .NET(x86、x64 共 用 )uint hDeviceHandle;HEvent = CreateEvent(0, TRUE, FALSE, NULL);nRet = IFCDA_ANY.DaSetBoardConfig( hDeviceHandle, 2048, hEvent, CallBackProc, 0);●Visual Basic .NET(x86、x64 共 用 )Dim hDeviceHandle As IntegernRet = IFCDA_ANY.DaSetBoardConfig( hDeviceHandle, 2048, hEvent, CallBackProc, 0 )●Delphi 8hDeviceHandle: Integer;nRet := IFCDA.DaSetBoardConfig( hDeviceHandle, 2048, hEvent, CallBackProc, 0 );デバイスハンドル hDeviceHandle のデバイスのコールバック 関 数 の 設 定 を 行 ないます。また、2048 件 のデータバッファサイズを 確 保 します。© 2000, 2013 Interface Corporation. All rights reserved.- 17 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows5. DaGetBoardConfig【 機 能 】デバイスのコールバック 関 数 の 発 生 要 因 を 取 得 します。【 書 式 】●Visual C# .NET(x86、x64 共 用 )[DllImport("FbiDa.dll")]public static extern int DaGetBoardConfig (IntPtr hDeviceHandle,out uint ulSmplBufferSize,out uint ulAdSmplEventFactor);●Visual C# .NET(x86 用 )[DllImport("FbiDa.dll")]public static extern int DaGetBoardConfig (uint hDeviceHandle,out uint ulSmplBufferSize,out uint ulAdSmplEventFactor);●Visual Basic .NET(x86、x64 共 用 )Declare Function DaGetBoardConfig lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByRef ulSmplBufferSize As Integer,ByRef ulAdSmplEventFactor As Integer)As Integer●Visual Basic .NET(x86 用 )Declare Function DaGetBoardConfig lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByRef ulSmplBufferSize As Integer,ByRef ulAdSmplEventFactor As Integer)As Integer●Delphi 8class function DaGetBoardConfig (hDeviceHandle:Integer;var ulSmplBufferSize: Cardinal;var ulAdSmplEventFactor: Cardinal): Integer; static;【パラメータ】hDeviceHandleAdOpen 関 数 で 取 得 したデバイスハンドルを 指 定 してください。© 2000, 2013 Interface Corporation. All rights reserved.- 18 -


<strong>GPC</strong>-<strong>3300</strong> Help for WindowsulSmplBufferSizeアナログ 出 力 データを 格 納 しておくバッファのサイズ 件 数 を 格 納 するための 変 数 へのポインタを 指 定 します。ulSmplEventFactorアナログ 出 力 更 新 のコールバック 関 数 発 生 要 因 を 格 納 する 変 数 へのポインタです。以 下 の 識 別 子 が 格 納 されます。識 別 子 値 状 態DA_EVENT_STOP_TRIGGER 1 トリガによるアナログ 出 力 更 新 停 止DA_EVENT_STOP_FUNCTION 2 関 数 によるアナログ 出 力 更 新 停 止DA_EVENT_STOP_SAMPLING 3 指 定 件 数 による 出 力 更 新 終 了DA_EVENT_RESET_IN 4 リセットイン 発 生DA_EVENT_CURRENT_OFF 5 電 流 断 検 出DA_EVENT_COUNT 6 指 定 件 数 出 力DA_EVENT_FIFO_EMPTY 7 FIFO エンプティ 検 出DA_EVENT_EXOV_OFF 9 外 部 電 源 過 電 圧 検 出検 出 した 詳 細 情 報 を 確 認 する 場 合 には、DaGetPowerSupply 関 数 で 確 認 してください。DA_EVENT_OV_OFF 10 DA 出 力 過 電 圧 検 出検 出 したチャンネルを 確 認 する 場 合 には、DaGetRelayStatus 関 数 で 確 認 してください。【 戻 り 値 】DaGetBoardConfig 関 数 は 処 理 が 正 常 終 了 するとDA_ERROR_SUCCESSを 返 します。 正 常 に 処 理 が 終了 しなかった 場 合 DA_ERROR_SUCCESS 以 外 の 値 を 返 します。DA_ERROR_SUCCESS 以 外 の 値 が 返 された 場 合 については『3.7 戻 り 値 一 覧 』を 参 照 してください。【 使 用 例 】●Visual C# .NET(x86、x64 共 用 )uint ulSmplBufferSize;uint ulSmplEventFactor;nRet = IFCDA_ANY.DaGetBoardConfig(hDeviceHandle,&ulSmplBufferSize,&ulSmplEventFactor);●Visual Basic .NET(x86、x64 共 用 )Dim ulSmplBufferSize As IntegerDim ulSmplEventFactor As IntegernRet = IFCDA_ANY.DaGetBoardConfig( hDeviceHandle,ulSmplBufferSize,ulSmplEventFactor )© 2000, 2013 Interface Corporation. All rights reserved.- 19 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows●Delphi 8varhDeviceHandle: THandle;ulSmplBufferSize, ulSmplEventFactor : Cardinal;nRet := IFCDA.DaGetBoardConfig(hDeviceHandle,ulSmplBufferSize, ulSmplEventFactor );デバイスハンドル hDeviceHandle のデバイスから 動 作 条 件 を 取 得 します。© 2000, 2013 Interface Corporation. All rights reserved.- 20 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows6. DaSetCountEvent【 機 能 】デバイスからデータを 指 定 した 件 数 出 力 させる 毎 にイベントを 発 生 させます。【 書 式 】●Visual C# .NET(x86、x64 共 用 )[DllImport("FbiDa.dll")]public static extern int DaSetCountEvent (IntPtrhDeviceHandle,uintulEventNum,IntPtrhEvent,LPADCALLBACK lpCallBackProc,uintdwUser);●Visual C# .NET(x86 用 )[DllImport("FbiDa.dll")]public static extern int DaSetCountEvent (uinthDeviceHandle,uintulEventNum,uinthEvent,LPADCALLBACK lpCallBackProc,uintdwUser);●Visual Basic .NET(x86、x64 共 用 )Declare Function DaSetCountEvent Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByVal ulEventNum As Integer,ByVal hEvent As IntPtr,ByVal lpCallBackProc As LPADCALLBACK,ByVal dwUser As Integer)As IntegerDeclare Function DaSetCountEvent Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByVal ulEventNum As Integer,ByVal hEvent As IntPtr,ByVal lpCallBackProc As Integer,ByVal dwUser As Integer)As Integer© 2000, 2013 Interface Corporation. All rights reserved.- 21 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows●Visual Basic .NET(x86 用 )Declare Function DaSetCountEvent Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByVal ulEventNum As Integer,ByVal hEvent As Integer,ByVal lpCallBackProc As LPADCALLBACK,ByVal dwUser As Integer)As IntegerDeclare Function DaSetCountEvent Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByVal ulEventNum As Integer,ByVal hEvent As Integer,ByVal lpCallBackProc As Integer,ByVal dwUser As Integer)As Integer●Delphi 8class function DaSetBoardConfig (hDeviceHandle: Integer;ulEventNum: Cardinal;hEvent:Integer;lpCallBackProc: LPDACALLBACK;dwUser:Integer): Integer; static;【パラメータ】hDeviceHandleDaOpen 関 数 で 取 得 したデバイスハンドルを 指 定 してください。ulEventNumイベント 通 知 を 行 う 件 数 を 指 定 します。イベント 通 知 を 行 わない 場 合 は 0 を 指 定 してください。・デフォルト:0hEvent指 定 件 数 更 新 時 にシグナル 状 態 に 設 定 されるイベントを 識 別 します。イベント 通 知 を 行 わない 場 合 には、C 言 語 では NULL,Visual Basic では 0,Delphi では NILを 指 定 してください。・デフォルト:NULLlpCallBackProc指 定 件 数 出 力 更 新 毎 に 呼 び 出 すユーザ・コールバック 関 数 のアドレスを 指 定 します。CallBackProc 関 数 を 参 照 ください。ユーザ・コールバック 関 数 の 呼 び 出 しを 行 わない 場 合には、C 言 語 では NULL、Visual Basic では 0、Delphi では NIL を 指 定 してください。・デフォルト:NULL© 2000, 2013 Interface Corporation. All rights reserved.- 22 -


<strong>GPC</strong>-<strong>3300</strong> Help for WindowsdwUserユーザ・コールバック 関 数 へ 引 き 渡 すユーザ・データを 指 定 します。ユーザ・コールバック 関 数 の 呼 び 出 しを 行 わない 場 合 には、0 を 指 定 してください。・デフォルト:0【 戻 り 値 】DaSetCountEvent 関 数 は 正 常 に 終 了 すると DA_ERROR_SUCCESS を 返 します。それ 以 外 の 場 合 はDA_ERROR_SUCCESS 以 外 の 値 を 返 します。DA_ERROR_SUCCESS 以 外 の 値 が 返 された 場 合 については、 戻 り 値 一 覧 を 参 照 してください。【 使 用 例 】●Visual C# .NET(x86、x64 共 用 )public void CallBackProc(uint dwUser){//ここにコールバック 発 生 時 に 処 理 するコードを 記 述 します}//メインルーチンIFCDA.LPDACALLBACK lpcallback;::lpcallback = new IFCDA_ANY.LPDACALLBACK(CallBackProc);nRet = IFCDA_ANY.DaSetCountEvent ( hDeviceHandle , 100, 0 , lpcallback , 0 );・//サンプリング 開 始nRet = IFCDA_ANY.DaStartSampling(hDeviceHandle, IFCDA_ANY.FLAG_ASYNC);●Visual Basic .NET(x86、x64 共 用 )Public Sub CallBackProc(ByVal dwuser As Integer)‘ここにコールバック 発 生 時 に 処 理 するコードを 記 述 しますEnd Sub‘メインルーチンDim lpcallback As IFCDA_ANY.LPADCALLBACK::lpcallback = AddressOf CallBackProcnRet = IFCDA_ANY.DaSetCountEvent (hDeviceHandle,100, 0, lpcallback, 0):‘サンプリング 開 始nRet = IFCDA_ANY.DaStartSampling(hDeviceHandle, IFCDA_ANY.FLAG_ASYNC)© 2000, 2013 Interface Corporation. All rights reserved.- 23 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows●Delphi 8varprocedure CallBackProc(dwUser: Cardinal); forwad;// ガーベージコレクトによってデリゲートが 破 棄 されないようにデリゲートを// グローバル 変 数 に 代 入 し、その 変 数 をアンマネージ 関 数 へ 渡 します。constlpcallback: LPDACALLBACK = @CallBackProc;//コールバック 関 数procedure CallBackProc(dwUser: Cardinal)begin//ここに 割 り 込 み 発 生 時 に 処 理 するコードを 記 述 します。end;// メインルーチン:nRet := IFCDA.DaSetCountEvent (hDeviceHandle,100, 0, lpcallback, 0)://サンプリング 開 始nRet := IFCDA.DaStartSampling(hDeviceHandle, IFCDA.FLAG_ASYNC)アナログ 出 力 更 新 データを 100 出 力 する 毎 にコールバック 関 数 を 呼 びます。© 2000, 2013 Interface Corporation. All rights reserved.- 24 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows7. DaSetSamplingConfig【 機 能 】デバイスのアナログ 出 力 更 新 条 件 の 設 定 を 行 います【 書 式 】●Visual C# .NET(x86、x64 共 用 )[DllImport("FbiDa.dll")]public static extern int DaSetSamplingConfig (IntPtrhDeviceHandle,ref DASMPLREQ pDaSmplConfig);●Visual C# .NET(x86 用 )[DllImport("FbiDa.dll")]public static extern int DaSetSamplingConfig (uinthDeviceHandle,ref DASMPLREQ pDaSmplConfig);●Visual Basic .NET(x86、x64 共 用 )Declare Function DaSetSamplingConfig Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByRef pDaSmplConfig As DASMPLREQ)As Integer●Visual Basic .NET(x86 用 )Declare Function DaSetSamplingConfig Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByRef pDaSmplConfig As DASMPLREQ)As Integer●Delphi 8class function DaSetSamplingConfig (hDeviceHandle: Integer;pDaSmplConfig: DASMPLREQ): Integer; static;【パラメータ】hDeviceHandleDaOpen 関 数 で 取 得 したデバイスハンドルを 指 定 してください。pDaSmplConfigアナログ 出 力 更 新 条 件 構 造 体 (DASMPLREQ 構 造 体 )へのポインタを 指 定 します。© 2000, 2013 Interface Corporation. All rights reserved.- 25 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows【 戻 り 値 】DaSetSamplingConfig 関 数 は 処 理 が 正 常 終 了 するとDA_ERROR_SUCCESSを 返 します。 正 常 に 処 理が 終 了 しなかった 場 合 DA_ERROR_SUCCESS 以 外 の 値 を 返 します。DA_ERROR_SUCCESS 以 外 の 値 が 返された 場 合 については『3.7 戻 り 値 一 覧 』を 参 照 してください。【 対 象 製 品 】対 象 製 品 における 設 定 関 連 の 対 応 表 についは、Help.htm を 参 照 してください。【 使 用 例 】●Visual C# .NET(x86、x64 共 用 )IFCDA_ANY.DASMPLREQ DaSmplConfig;DaSmplConfig.ulChCount = 4;DaSmplConfig.SetChNo(0, 1);DaSmplConfig.SetChNo(1, 2);DaSmplConfig.SetChNo(2, 3);DaSmplConfig.SetChNo(3, 4);DaSmplConfig.SetChRange(0, IFCDA_ANY.DA_0_5V);DaSmplConfig.SetChRange(1, IFCDA_ANY.DA_0_5V);DaSmplConfig.SetChRange(2, IFCDA_ANY.DA_0_5V);DaSmplConfig.SetChRange(3, IFCDA_ANY.DA_0_5V);DaSmplConfig.ulSamplingMode = IFCDA_ANY.DA_IO_SAMPLING;DaSmplConfig.fSmplFreq = 10000;DaSmplConfig.ulSmplRepeat = 1;DaSmplConfig.ulTrigMode = IFCDA_ANY.DA_FREERUN;DaSmplConfig.ulTrigPoint = IFCDA_ANY.DA_TRIG_START;DaSmplConfig.ulTrigDelay = 0;DaSmplConfig.ulEClkEdge = IFCDA_ANY.DA_DOWN_EDGE;DaSmplConfig.ulTrigEdge = IFCDA_ANY.DA_DOWN_EDGE;DaSmplConfig.ulTrigDI = 1;nRet = IFCDA_ANY.DaSetSamplingConfig( hDeviceHandle, &DaSmplConfig );© 2000, 2013 Interface Corporation. All rights reserved.- 26 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows●Visual Basic .NET(x86、x64 共 用 )Dim DaSmplConfig As IFCDA_ANY.DASMPLREQDaSmplConfig.ulChCount = 4DaSmplConfig.SetChNo(0, 1);DaSmplConfig.SetChNo(1, 2);DaSmplConfig.SetChNo(2, 3);DaSmplConfig.SetChNo(3, 4);DaSmplConfig.SetChRange(0, IFCDA_ANY.DA_0_5V);DaSmplConfig.SetChRange(1, IFCDA_ANY.DA_0_5V);DaSmplConfig.SetChRange(2, IFCDA_ANY.DA_0_5V);DaSmplConfig.SetChRange(3, IFCDA_ANY.DA_0_5V);DaSmplConfig.ulSamplingMode = IFCDA_ANY.DA_IO_SAMPLINGDaSmplConfig.fSmplFreq = 10000DaSmplConfig.ulSmplRepeat = 1DaSmplConfig.ulTrigMode = IFCDA_ANY.DA_FREERUNDaSmplConfig.ulTrigPoint = IFCDA_ANY.DA_TRIG_STARTDaSmplConfig.ulTrigDelay = 0DaSmplConfig.ulEClkEdge = IFCDA_ANY.DA_DOWN_EDGEDaSmplConfig.ulTrigEdge = IFCDA_ANY.DA_DOWN_EDGEDaSmplConfig.ulTrigDI = 1nRet = IFCDA_ANY.DaSetSamplingConfig( hDeviceHandle, DaSmplConfig )●Delphi 8var DaSmplConfig: DASMPLREQ;DaSmplConfig.ulChCount := 4;DaSmplConfig.SetChNo(0, 1);DaSmplConfig.SetChNo(1, 2);DaSmplConfig.SetChNo(2, 3);DaSmplConfig.SetChNo(3, 4);DaSmplConfig.SetChRange(0, DA_0_5V);DaSmplConfig.SetChRange(1, DA_0_5V);DaSmplConfig.SetChRange(2, DA_0_5V);DaSmplConfig.SetChRange(3, DA_0_5V);DaSmplConfig.ulSamplingMode := DA_IO_SAMPLING;DaSmplConfig.fSmplFreq := 10000;DaSmplConfig.ulSmplRepeat := 1;DaSmplConfig.ulTrigMode := DA_FREERUN;DaSmplConfig.ulTrigPoint := DA_TRIG_START;DaSmplConfig.ulTrigDelay := 0;DaSmplConfig.ulEClkEdge := DA_DOWN_EDGE;DaSmplConfig.ulTrigEdge := DA_DOWN_EDGE;DaSmplConfig.ulTrigDI := 1;© 2000, 2013 Interface Corporation. All rights reserved.- 27 -


<strong>GPC</strong>-<strong>3300</strong> Help for WindowsnRet := DaSetSamplingConfig( hDeviceHandle, DaSmplConfig );デバイスハンドル hDeviceHandle のデバイスのアナログ 出 力 更 新 条 件 を 設 定 します。© 2000, 2013 Interface Corporation. All rights reserved.- 28 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows8. DaGetSamplingConfig【 機 能 】現 在 設 定 されているサンプリング 条 件 を 取 得 します。【 書 式 】●Visual C# .NET(x86、x64 共 用 )[DllImport("FbiDa.dll")]public static extern int DaGetSamplingConfig (IntPtrhDeviceHandle,out DASMPLREQ pDaSmplConfig);●Visual C# .NET(x86 用 )[DllImport("FbiDa.dll")]public static extern int DaGetSamplingConfig (uinthDeviceHandle,out DASMPLREQ pDaSmplConfig);●Visual Basic .NET(x86、x64 共 用 )Declare Function DaGetSamplingConfig Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByRef pDaSmplConfig As DASMPLREQ)As Integer●Visual Basic .NET(x86 用 )Declare Function DaGetSamplingConfig Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByRef pDaSmplConfig As DASMPLREQ)As Integer●Delphi 8class function DaGetSamplingConfig (hDeviceHandle: Integer;var pDaSmplConfig: DASMPLREQ): Integer; static;【パラメータ】hDeviceHandleDaOpen 関 数 で 取 得 したデバイスハンドルを 指 定 してください。pDaSmplConfig現 在 の 設 定 されているアナログ 出 力 更 新 条 件 を 格 納 するためのアナログ 出 力 更 新 条 件 構造 体 (DASMPLREQ 構 造 体 )へのポインタです。© 2000, 2013 Interface Corporation. All rights reserved.- 29 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows【 戻 り 値 】DaGetSamplingConfig 関 数 は 処 理 が 正 常 終 了 するとDA_ERROR_SUCCESSを 返 します。 正 常 に 処 理が 終 了 しなかった 場 合 DA_ERROR_SUCCESS 以 外 の 値 を 返 します。DA_ERROR_SUCCESS 以 外 の 値 が 返された 場 合 については『3.7 戻 り 値 一 覧 』を 参 照 してください。【 使 用 例 】●Visual C# .NET(x86、x64 共 用 )IFCDA_ANY.DASMPLREQ DaSmplConfig;nRet = IFCDA_ANY.DaGetSamplingConfig ( hDeviceHandle, &DaSmplConfig );●Visual Basic .NET(x86、x64 共 用 )Dim DaSmplConfig As IFCDA_ANY.DASMPLREQnRet = IFCDA_ANY.DaGetSamplingConfig ( hDeviceHandle, DaSmplConfig )●Delphi 8var DaSmplConfig: DASMPLREQ;nRet := IFCDA.DaGetSamplingConfig ( hDeviceHandle, DaSmplConfig);デバイスハンドル hDeviceHandle のデバイスから 各 種 サンプリング 条 件 を 取 得 します。© 2000, 2013 Interface Corporation. All rights reserved.- 30 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows9. DaSetMode【 機 能 】デバイス 固 有 の 動 作 モードの 設 定 を 行 います。【 書 式 】●Visual C# .NET(x86、x64 共 用 )[DllImport("FbiDa.dll")]public static extern int DaSetMode (IntPtrhDeviceHandle,ref DAMODEREQ pDaMode);●Visual C# .NET(x86 用 )[DllImport("FbiDa.dll")]public static extern int DaSetMode (uinthDeviceHandle,ref DAMODEREQ pDaMode);●Visual Basic .NET(x86、x64 共 用 )Declare Function DaSetMode Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByRef pDaMode As DAMODEREQ)As Integer●Visual Basic .NET(x86 用 )Declare Function DaSetMode Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByRef pDaMode As DAMODEREQ)As Integer●Delphi 8class function DaSetMode (hDeviceHandle: Integer;var pDaMode:DAMODEREQ): Integer; static;【パラメータ】hDeviceHandleDaOpen 関 数 で 取 得 したデバイスハンドルを 指 定 してください。pDaMode波 形 出 力 モード 構 造 体 (DAMODEREQ 構 造 体 )へのポインタを 指 定 します。© 2000, 2013 Interface Corporation. All rights reserved.- 31 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows【 戻 り 値 】DaSetMode 関 数 は 処 理 が 正 常 終 了 すると DA_ERROR_SUCCESS を 返 します。正 常 に 処 理 が 終 了 しなかった 場 合 DA_ERROR_SUCCESS 以 外 の 値 を 返 します。DA_ERROR_SUCCESS 以 外 の 値 が 返 された 場 合 については『3.7 戻 り 値 一 覧 』を 参 照 してください。【 使 用 例 】●Visual C# .NET(x86、x64 共 用 )IFCDA_ANY.DAMODEREQ DaMode;nRet = IFCDA_ANY.DaSetMode( hDeviceHandle, &DaMode );●Visual Basic .NET(x86、x64 共 用 )Dim DaMode As IFCDA_ANY.DAMODEREQnRet = IFCDA_ANY.DaSetMode( hDeviceHandle, DaMode )●Delphi 8var DaMode: DAMODEREQ;nRet := IFCDA.DaSetMode( hDeviceHandle, DaMode );デバイスハンドル hDeviceHandle のデバイスの 動 作 モードを 設 定 します。© 2000, 2013 Interface Corporation. All rights reserved.- 32 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows10. DaGetMode【 機 能 】デバイスの 現 在 設 定 されている 動 作 モードを 取 得 します。【 書 式 】●Visual C# .NET(x86、x64 共 用 )[DllImport("FbiDa.dll")]public static extern int DaGetMode (IntPtrhDeviceHandle,out DAMODEREQ pDaMode);●Visual C# .NET(x86 用 )[DllImport("FbiDa.dll")]public static extern int DaGetMode (uinthDeviceHandle,out DAMODEREQ pDaMode);●Visual Basic .NET(x86、x64 共 用 )Declare Function DaGetMode Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByRef pDaMode As DAMODEREQ)As Integer●Visual Basic .NET(x86 用 )Declare Function DaGetMode Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByRef pDaMode As DAMODEREQ)As Integer●Delphi 8class function DaGetMode (hDeviceHandle: Integer;var pDaMode:DAMODEREQ): Integer; static;【パラメータ】hDeviceHandleDaOpen 関 数 で 取 得 したデバイスハンドルを 指 定 してください。pDaMode波 形 出 力 モード 構 造 体 (DAMODEREQ 構 造 体 )へのポインタです。© 2000, 2013 Interface Corporation. All rights reserved.- 33 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows【 戻 り 値 】DaGetMode 関 数 は 処 理 が 正 常 終 了 すると DA_ERROR_SUCCESS を 返 します。正 常 に 処 理 が 終 了 しなかった 場 合 DA_ERROR_SUCCESS 以 外 の 値 を 返 します。DA_ERROR_SUCCESS 以 外 の 値 が 返 された 場 合 については『3.7 戻 り 値 一 覧 』を 参 照 してください。【 使 用 例 】●Visual C# .NET(x86、x64 共 用 )IFCDA_ANY.DAMODEREQ DaMode;nRet = IFCDA_ANY.DaGetMode( hDeviceHandle, &DaMode );●Visual Basic .NET(x86、x64 共 用 )Dim DaMode As IFCDA_ANY.DAMODEREQnRet = IFCDA_ANY.DaGetMode( hDeviceHandle, DaMode )●Delphi 8var DaMode: DAMODEREQ;nRet := IFCDA.DaGetMode( hDeviceHandle, DaMode );デバイスハンドル hDeviceHandle のデバイス 固 有 の 動 作 モードを 取 得 します。© 2000, 2013 Interface Corporation. All rights reserved.- 34 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows11. DaSetSamplingData【 機 能 】デバイスから 出 力 するアナログ 出 力 データのセットを 行 います。【 書 式 】●Visual C# .NET(x86、x64 共 用 )[DllImport("FbiDa.dll")]public static extern int DaSetSamplingData (IntPtrhDeviceHandle,ref byte pSmplData,uintulSmplDataNum);[DllImport("FbiDa.dll")]public static extern int DaSetSamplingData (IntPtrhDeviceHandle,ref ushort pSmplData,uintulSmplDataNum);[DllImport("FbiDa.dll")]public static extern int DaSetSamplingData (IntPtrhDeviceHandle,ref uint pSmplData,uintulSmplDataNum);[DllImport("FbiDa.dll")]public static extern int DaSetSamplingData (IntPtrhDeviceHandle,byte[]pSmplData,uintulSmplDataNum);[DllImport("FbiDa.dll")]public static extern int DaSetSamplingData (IntPtrhDeviceHandle,ushort[] pSmplData,uintulSmplDataNum);[DllImport("FbiDa.dll")]public static extern int DaSetSamplingData (IntPtrhDeviceHandle,uint[]pSmplData,© 2000, 2013 Interface Corporation. All rights reserved.- 35 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows);uintulSmplDataNum●Visual C# .NET(x86 用 )[DllImport("FbiDa.dll")]public static extern int DaSetSamplingData (uinthDeviceHandle,ref byte pSmplData,uintulSmplDataNum);[DllImport("FbiDa.dll")]public static extern int DaSetSamplingData (uinthDeviceHandle,ref ushort pSmplData,uintulSmplDataNum);[DllImport("FbiDa.dll")]public static extern int DaSetSamplingData (uinthDeviceHandle,ref uint pSmplData,uintulSmplDataNum);[DllImport("FbiDa.dll")]public static extern int DaSetSamplingData (uinthDeviceHandle,byte[]pSmplData,uintulSmplDataNum);[DllImport("FbiDa.dll")]public static extern int DaSetSamplingData (uinthDeviceHandle,ushort[] pSmplData,uintulSmplDataNum);[DllImport("FbiDa.dll")]public static extern int DaSetSamplingData (uinthDeviceHandle,uint[]pSmplData,uintulSmplDataNum);© 2000, 2013 Interface Corporation. All rights reserved.- 36 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows●Visual Basic .NET(x86、x64 共 用 )Declare Function DaSetSamplingData Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByRef pSmplData As Byte,ByVal ulSmplDataNum As Integer)As IntegerDeclare Function DaSetSamplingData Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByRef pSmplData As Short,ByVal ulSmplDataNum As Integer)As IntegerDeclare Function DaSetSamplingData Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByRef pSmplData As Integer,ByVal ulSmplDataNum As Integer)As IntegerDeclare Function DaSetSamplingData Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByVal pSmplData() As Byte,ByVal ulSmplDataNum As Integer)As IntegerDeclare Function DaSetSamplingData Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByVal pSmplData() As Short,ByVal ulSmplDataNum As Integer)As IntegerDeclare Function DaSetSamplingData Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByVal pSmplData() As Integer,ByVal ulSmplDataNum As Integer)As Integer© 2000, 2013 Interface Corporation. All rights reserved.- 37 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows●Visual Basic .NET(x86 用 )Declare Function DaSetSamplingData Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByRef pSmplData As Byte,ByVal ulSmplDataNum As Integer)As IntegerDeclare Function DaSetSamplingData Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByRef pSmplData As Short,ByVal ulSmplDataNum As Integer)As IntegerDeclare Function DaSetSamplingData Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByRef pSmplData As Integer,ByVal ulSmplDataNum As Integer)As IntegerDeclare Function DaSetSamplingData Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByVal pSmplData() As Byte,ByVal ulSmplDataNum As Integer)As IntegerDeclare Function DaSetSamplingData Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByVal pSmplData() As Short,ByVal ulSmplDataNum As Integer)As IntegerDeclare Function DaSetSamplingData Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByVal pSmplData() As Integer,ByVal ulSmplDataNum As Integer)As Integer© 2000, 2013 Interface Corporation. All rights reserved.- 38 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows●Delphi 8class function DaGetSamplingConfig (hDeviceHandle:Integer;var pSmplData:BYTE;var ulSmplDataNum: Cardinal): Integer; overload; static;class function DaGetSamplingConfig (hDeviceHandle:Integer;var pSmplData:WORD;var ulSmplDataNum: Cardinal): Integer; overload; static;class function DaGetSamplingConfig (hDeviceHandle: Integer;var pSmplData: Integer;var ulSmplDataNum: Cardinal): Integer; overload; static;class function DaGetSamplingConfig (hDeviceHandle:Integer;pSmplData:array of BYTE;var ulSmplDataNum: Cardinal): Integer; overload; static;class function DaGetSamplingConfig (hDeviceHandle:Integer;pSmplData:array of WORD;var ulSmplDataNum: Cardinal): Integer; overload; static;class function DaGetSamplingConfig (hDeviceHandle:Integer;pSmplData:array of Integer;var ulSmplDataNum: Cardinal): Integer; overload; static;パラメータhDeviceHandleDaOpen 関 数 で 取 得 したデバイスハンドルを 指 定 してください。pSmplDataアナログ 出 力 データを 格 納 しているバッファへのポインタを 指 定 します。ulSmplDataNum© 2000, 2013 Interface Corporation. All rights reserved.- 39 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windowsアナログ 出 力 するデータの 個 数 を 指 定 します。© 2000, 2013 Interface Corporation. All rights reserved.- 40 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows【 戻 り 値 】DaSetSamplingData 関 数 は 処 理 が 正 常 終 了 すると DA_ERROR_SUCCESS を 返 します。正 常 に 処 理 が 終 了 しなかった 場 合 DA_ERROR_SUCCESS 以 外 の 値 を 返 します。DA_ERROR_SUCCESS 以 外 の 値 が 返 された 場 合 については『3.7 戻 り 値 一 覧 』を 参 照 してください。【 備 考 】・ 本 関 数 ではアナログ 出 力 更 新 データをアナログ 出 力 バッファにセットするのみで、 実 際 のアナログ 出 力 更 新 は 行 いません。アナログ 出 力 更 新 の 開 始 は DaStartSampling 関 数 で 行 います。また、 既 にアナログ 出 力 バッファにデータがセットされている 場 合 には、そのデータの 後 に指 定 されたアナログ 出 力 データを 連 結 します。IO 方 式FIFO 方 式メモリ 方 式アナログ 出 力 更 新 中 に 本 関 数 を 実 行 した 場 合 、 次 のアナログ 出 力 データとしてバッファにセットされます。既 にセットされていたデータのアナログ 出 力 が 終 了 してから、 次 のデータのアナログ 出 力 更 新 が 開 始 されます。また、この 場 合 アナログ 出 力 データの 個 数 ulSmplDataNum の 変 更 はできません。アナログ 出 力 更 新 中 に 本 関 数 を 実 行 した 場 合 、 次 のアナログ 出 力 データとしてバッファにセットされます。既 にセットされていたデータのアナログ 出 力 が 終 了 してから、 次 のデータのアナログ 出 力 更 新 が 開 始 されます。また、この 場 合 アナログ 出 力 データの 個 数 ulSmplDataNum の 変 更 はできません。連 続 出 力 中 のデータの 追 加 時 における 注 意 事 項・ 繰 り 返 し 回 数 が 1 でのみ 使 用 できます。・ulSmplDataNum としては、 使 用 するデバイスの FIFO 容 量 以 上 の 件 数 である 必 要 があります。メモリ 方 式 のデバイス(PCI-3335,3337)では、データは 後 ろに 追 加 されずに 先 頭 から 上 書 きされます。PCI-3305 ではデバイスの 仕 様 上 、アナログ 出 力 更 新 中 に 本 関 数 を 実 行 する事 はできません。© 2000, 2013 Interface Corporation. All rights reserved.- 41 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows【 使 用 例 】●Visual C# .NET(x86、x64 共 用 )nRet = IFCDA_ANY.DaGetSamplingConfig ( hDeviceHandle, &pSmplData, 256 );●Visual Basic .NET(x86、x64 共 用 )nRet = IFCDA_ANY.DaSetSamplingData( hDeviceHandle, pSmplData(0), 256 )●Delphi 8nRet := IFCDA_ANY.DaSetSamplingData( hDeviceHandle, pSmplData, 256 );デバイスハンドル hDeviceHandle のデバイスから 出 力 する 256 個 のアナログ 出 力 データをセットし、アナログ 出 力 データを 引 き 渡 します。© 2000, 2013 Interface Corporation. All rights reserved.- 42 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows12. DaClearSamplingData【 機 能 】アナログ 出 力 バッファ 内 のアナログ 出 力 データをクリアします。【 書 式 】●Visual C# .NET(x86、x64 共 用 )[DllImport("FbiDa.dll")]public static extern int DaClearSampling (IntPtr hDeviceHandle);●Visual C# .NET(x86 用 )[DllImport("FbiDa.dll")]public static extern int DaClearSampling (uint hDeviceHandle);●Visual Basic .NET(x86、x64 共 用 )Declare Function DaClearSampling Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr)As Integer●Visual Basic .NET(x86 用 )Declare Function DaClearSampling Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer)As Integer●Delphi 8class function DaClearSampling (hDeviceHandle: Integer): Integer; static;【パラメータ】hDeviceHandleDaOpen 関 数 で 取 得 したデバイスハンドルを 指 定 してください。【 戻 り 値 】DaClearSampling 関 数 は 処 理 が 正 常 終 了 すると DA_ERROR_SUCCESS を 返 します。正 常 に 処 理 が 終 了 しなかった 場 合 DA_ERROR_SUCCESS 以 外 の 値 を 返 します。DA_ERROR_SUCCESS 以 外 の 値 が 返 された 場 合 については『3.7 戻 り 値 一 覧 』を 参 照 してください。© 2000, 2013 Interface Corporation. All rights reserved.- 43 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows【 使 用 例 】●Visual C# .NET(x86、x64 共 用 )nRet = IFCDA_ANY.DaClearSampling ( hDeviceHandle );●Visual Basic .NET(x86、x64 共 用 )nRet = IFCDA_ANY.DaClearSampling ( hDeviceHandle )●Delphi 8nRet := IFCDA.DaClearSampling ( hDeviceHandle );デバイスハンドル hDeviceHandle のデバイスのアナログ 出 力 バッファ 内 のアナログ 出 力 データをクリアします。© 2000, 2013 Interface Corporation. All rights reserved.- 44 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows13. DaStartSampling【 機 能 】デバイスのアナログ 出 力 更 新 をスタートさせます。【 書 式 】●Visual C# .NET(x86、x64 共 用 )[DllImport("FbiDa.dll")]public static extern int DaStartSampling (IntPtr hDeviceHandle,uint ulSyncFlag);●Visual C# .NET(x86 用 )[DllImport("FbiDa.dll")]public static extern int DaStartSampling (uint hDeviceHandle,uint ulSyncFlag);●Visual Basic .NET(x86、x64 共 用 )Declare Function DaStartSampling Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByVal ulSyncFlag As Integer)As Integer●Visual Basic .NET(x86 用 )Declare Function DaStartSampling Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByVal ulSyncFlag As Integer)As Integer●Delphi 8class function DaStartSampling (hDeviceHandle: Integer;ulSyncFlag: Cardinal): Integer; static;【パラメータ】hDeviceHandleDaOpen 関 数 で 取 得 したデバイスハンドルを 指 定 してください。ulSyncFlagアナログ 出 力 更 新 処 理 を 同 期 で 行 うか 非 同 期 で 行 うかを 指 定 します。識 別 子 値 意 味FLAG_SYNC 1 同 期 処 理 でアナログ 出 力 更 新 を 行 います。© 2000, 2013 Interface Corporation. All rights reserved.- 45 -


<strong>GPC</strong>-<strong>3300</strong> Help for WindowsFLAG_ASYNC 2 非 同 期 処 理 でアナログ 出 力 更 新 を 行 います。【 戻 り 値 】DaStartSampling 関 数 は 処 理 が 正 常 終 了 すると DA_ERROR_SUCCESS を 返 します。正 常 に 処 理 が 終 了 しなかった 場 合 DA_ERROR_SUCCESS 以 外 の 値 を 返 します。DA_ERROR_SUCCESS 以 外 の 値 が 返 された 場 合 については『3.7 戻 り 値 一 覧 』を 参 照 してください。【 使 用 例 】●Visual C# .NET(x86、x64 共 用 )nRet = IFCDA_ANY.DaStartSampling ( hDeviceHandle, FLAG_ASYNC );●Visual Basic .NET(x86、x64 共 用 )nRet = IFCDA_ANY.DaStartSampling ( hDeviceHandle, FLAG_ASYNC )●Delphi 8nRet := IFCDA.DaStartSampling ( hDeviceHandle, FLAG_ASYNC );デバイスハンドル hDeviceHandle のデバイスに 対 して、あらかじめセットされたデータのアナログ 出 力 更 新 を 非 同 期 で 開 始 します。© 2000, 2013 Interface Corporation. All rights reserved.- 46 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows14. DaStartFileSampling【 機 能 】データファイルからアナログ 出 力 データを 読 み 込 み、アナログ 出 力 更 新 を 行 います。【 書 式 】●Visual C# .NET(x86、x64 共 用 )[DllImport("FbiDa.dll")]public static extern int DaStartFileSampling (IntPtr hDeviceHandle,string pszPathName,uint ulFileFlag,uint ulSmplNum);●Visual C# .NET(x86 用 )[DllImport("FbiDa.dll")]public static extern int DaStartFileSampling (uint hDeviceHandle,string pszPathName,uint ulFileFlag,uint ulSmplNum);●Visual Basic .NET(x86、x64 共 用 )Declare Function DaStartFileSampling Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByVal pszPathName As String,ByVal ulFileFlag As Integer,ByVal ulSmplNum As Integer)As Integer●Visual Basic .NET(x86 用 )Declare Function DaStartFileSampling Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByVal pszPathName As String,ByVal ulFileFlag As Integer,ByVal ulSmplNum As Integer)As Integer●Delphi 8class function DaStartFileSampling (hDeviceHandle: Integer;LpszName: String;ulFileFlag: Cardinal;ulSmplNum: Cardinal© 2000, 2013 Interface Corporation. All rights reserved.- 47 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows): Integer; static;© 2000, 2013 Interface Corporation. All rights reserved.- 48 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows【パラメータ】hDeviceHandleDaOpen 関 数 で 取 得 したデバイスハンドルを 指 定 してください。pszPathNameアナログ 出 力 を 行 う、データファイルへのパスを 指 定 します。ulFileFlagデータファイルの 形 式 を 指 定 します。識 別 子 値 意 味FLAG_BIN 1 バイナリ 形 式 でデータを 読 み 込 みます。FLAG_CSV 2 CSV 形 式 ( 物 理 量 )でデータを 読 み 込 みます。ulSmplNumアナログ 出 力 件 数 を 指 定 します。【 戻 り 値 】DaStartSampling 関 数 は 処 理 が 正 常 終 了 するとDA_ERROR_SUCCESSを 返 します。 正 常 に 処 理 が 終了 しなかった 場 合 DA_ERROR_SUCCESS 以 外 の 値 を 返 します。DA_ERROR_SUCCESS 以 外 の 値 が 返 された 場 合 については『3.7 戻 り 値 一 覧 』を 参 照 してください。【 使 用 例 】●Visual C# .NET(x86、x64 共 用 )nRet = IFCDA_ANY.DaStartFileSampling ( hDeviceHandle, "DATA.CSV",IFCDA_ANY.FLAG_CSV, 1024 );●Visual Basic .NET(x86、x64 共 用 )Dim pszPathName As StringpszPathName = "DATA.CSV" & Chr(0)nRet = IFCDA_ANY.DaStartFileSampling( hDeviceHandle, pszPathName,IFCDA_ANY.FLAG_CSV, 1024 )●Delphi 8pszPathName : Array[0..15] of Char;StrCopy(pszPathName, 'DATA.CSV');nRet := IFCDA.DaStartFileSampling(hDeviceHandle,pszPathName, FLAG_CSV, 1024 );データファイル"DATA.CSV"を 読 み 込 み、デバイスハンドル hDeviceHandle のデバイスから 読 み込 んだデータ(1024 個 )のアナログ 出 力 を 開 始 します。© 2000, 2013 Interface Corporation. All rights reserved.- 49 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows15. DaSyncSampling【 機 能 】複 数 枚 同 期 アナログ 出 力 機 能 を 使 用 したアナログ 出 力 更 新 を 行 います。( 本 関 数 は、 複 数 枚 同 期 アナログ 出 力 機 能 に 対 応 した 製 品 のみで 使 用 できます。その 他 の 製 品では 使 用 できません。また、 異 なる 型 式 のデバイス 間 での 使 用 もできません。)【 書 式 】●Visual C# .NET(x86、x64 共 用 )[DllImport("FbiDa.dll")]public static extern int DaSyncSampling (IntPtr hDeviceHandle,uint ulMode);●Visual C# .NET(x86 用 )[DllImport("FbiDa.dll")]public static extern int DaSyncSampling (uint hDeviceHandle,uint ulMode);●Visual Basic .NET(x86、x64 共 用 )Declare Function DaSyncSampling Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByVal ulMode As Integer)As Integer●Visual Basic .NET(x86 用 )Declare Function DaSyncSampling Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByVal ulMode As Integer)As Integer●Delphi 8class function DaSyncSampling (hDeviceHandle: Integer;ulMode:Integer): Integer; static;【パラメータ】hDeviceHandleDaOpen 関 数 で 取 得 したデバイスハンドルを 指 定 してください。© 2000, 2013 Interface Corporation. All rights reserved.- 50 -


<strong>GPC</strong>-<strong>3300</strong> Help for WindowsulModeマスタで 使 用 するかスレーブで 使 用 するかを 指 定 します。次 の 識 別 子 のうちいずれか 1 つを 指 定 します。・DA_MASTER_MODE:マスタモード・DA_SLAVE_MODE :スレーブモードCTP/CPZ 型 式 製 品 で 複 数 枚 同 期 サンプリング 機 能 を 使 用 する 場 合 、 同 期 番 号 の 設 定 が 必 要になります。 上 記 に 加 え、 下 記 識 別 子 にて 同 期 番 号 も 同 時 に 指 定 します。DA_SYNC_NUM1 : 同 期 番 号 1DA_SYNC_NUM2 : 同 期 番 号 2DA_SYNC_NUM3 : 同 期 番 号 3DA_SYNC_NUM4 : 同 期 番 号 4DA_SYNC_NUM5 : 同 期 番 号 5DA_SYNC_NUM6 : 同 期 番 号 6DA_SYNC_NUM7 : 同 期 番 号 7I/O 方 式 サンプリング 時 には、7 つの 内 から 1 つの 番 号 を 指 定 します。 指 定 する 同 期 番 号 は、同 期 を 行 う 型 式 内 で 全 て 同 じ 番 号 を 指 定 します。※ 複 数 型 式 をそれぞれの 型 式 毎 に 同 期 を 行 う 場 合 、 異 なる 型 式 間 で 同 じ 同 期 番 号 を 使 用 しないでください。 同 じ 番 号 を 使 用 した 場 合 、 故 障 の 原 因 となります。設 定 例 )I/O 方 式 サンプリングで、 同 期 番 号 1 を 使 用 してマスタモードに 設 定 する 場 合 。ulMode = DA_MASTER_MODE + DA_SYNC_NUM【 戻 り 値 】DaSyncSampling 関 数 は 処 理 が 正 常 終 了 すると DA_ERROR_SUCCESS を 返 します。正 常 に 処 理 が 終 了 しなかった 場 合 DA_ERROR_SUCCESS 以 外 の 値 を 返 します。DA_ERROR_SUCCESS 以 外 の 値 が 返 された 場 合 については『3.7 戻 り 値 一 覧 』を 参 照 してください。【 対 象 製 品 】対 象 製 品 における 設 定 関 連 の 対 応 表 についは、Help.htm を 参 照 してください。© 2000, 2013 Interface Corporation. All rights reserved.- 51 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows【 使 用 例 】●Visual C# .NET(x86、x64 共 用 )nRet = IFCDA_ANY.DaSyncSampling ( hDeviceHandle2,IFCDA_ANY.DA_SLAVE_MODE );nRet = IFCDA_ANY.DaSyncSampling ( hDeviceHandle1,IFCDA_ANY.DA_MASTER_MODE );●Visual Basic .NET(x86、x64 共 用 )nRet = IFCDA_ANY.DaSyncSampling ( hDeviceHandle2,IFCDA_ANY.DA_SLAVE_MODE )nRet = IFCDA_ANY.DaSyncSampling ( hDeviceHandle1,IFCDA_ANY.DA_MASTER_MODE )●Delphi 8nRet := IFCDA.DaSyncSampling ( hDeviceHandle2, DA_SLAVE_MODE );nRet := IFCDA.DaSyncSampling ( hDeviceHandle1, DA_MASTER_MODE );デバイスハンドル hDeviceHandle1 のデバイスをマスタに、デバイスハンドル hDeviceHandle2のデバイスをスレーブに 設 定 して 複 数 枚 同 期 アナログ 出 力 を 実 行 します。© 2000, 2013 Interface Corporation. All rights reserved.- 52 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows16. DaStopSampling【 機 能 】非 同 期 でスタートさせたアナログ 出 力 更 新 を 停 止 させます。【 書 式 】●Visual C# .NET(x86、x64 共 用 )[DllImport("FbiDa.dll")]public static extern int DaStopSampling (IntPtr hDeviceHandle);●Visual C# .NET(x86 用 )[DllImport("FbiDa.dll")]public static extern int DaStopSampling (uint hDeviceHandle);●Visual Basic .NET(x86、x64 共 用 )Declare Function DaStopSampling Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr)As Integer●Visual Basic .NET(x86 用 )Declare Function DaStopSampling Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer)As Integer●Delphi 8class function DaStopSampling (hDeviceHandle: Integer): Integer; static;【パラメータ】hDeviceHandleDaOpen 関 数 で 取 得 したデバイスハンドルを 指 定 してください。【 戻 り 値 】DaStopSampling 関 数 は 処 理 が 正 常 終 了 すると DA_ERROR_SUCCESS を 返 します。正 常 に 処 理 が 終 了 しなかった 場 合 DA_ERROR_SUCCESS 以 外 の 値 を 返 します。DA_ERROR_SUCCESS 以 外 の 値 が 返 された 場 合 については『3.7 戻 り 値 一 覧 』を 参 照 してください。© 2000, 2013 Interface Corporation. All rights reserved.- 53 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows【 使 用 例 】●Visual C# .NET(x86、x64 共 用 )nRet = IFCDA_ANY.DaStopSampling ( hDeviceHandle );●Visual Basic .NET(x86、x64 共 用 )nRet = IFCDA_ANY.DaStopSampling ( hDeviceHandle )●Delphi 8nRet := IFCDA_ANY.DaStopSampling ( hDeviceHandle );デバイスハンドル hDeviceHandle のデバイスに 対 して、アナログ 出 力 更 新 を 即 停 止 します。© 2000, 2013 Interface Corporation. All rights reserved.- 54 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows17. DaGetStatus【 機 能 】デバイスのアナログ 出 力 更 新 動 作 状 態 を 取 得 します。【 書 式 】●Visual C# .NET(x86、x64 共 用 )[DllImport("FbiDa.dll")]public static extern int DaGetStatus (IntPtr hDeviceHandle,out uint ulDaSmplStatus,out uint ulDaSmplCount,out uint ulDaAvailCount,out uint ulDaAvailRepeat);●Visual C# .NET(x86 用 )[DllImport("FbiDa.dll")]public static extern int DaGetStatus (uint hDeviceHandle,out uint ulDaSmplStatus,out uint ulDaSmplCount,out uint ulDaAvailCount,out uint ulDaAvailRepeat);●Visual Basic .NET(x86、x64 共 用 )Declare Function DaGetStatus Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByRef ulDaSmplStatus As Integer,ByRef ulDaSmplCount As Integer,ByRef ulDaAvailCount As Integer,ByRef ulDaAvailRepeat As Integer)As Integer●Visual Basic .NET(x86 用 )Declare Function DaGetStatus Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByRef ulDaSmplStatus As Integer,ByRef ulDaSmplCount As Integer,ByRef ulDaAvailCount As Integer,ByRef ulDaAvailRepeat As Integer)As Integer© 2000, 2013 Interface Corporation. All rights reserved.- 55 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows●Delphi 8class function DaGetStatus (hDeviceHandle: Integer;var ulDaSmplStatus: Cardinal;var ulDaSmplCount: Cardinal;var ulDaAvailCount: Cardinal;var ulDaAvailRepeat: Cardinal): Integer; static;【パラメータ】hDeviceHandleDaOpen 関 数 で 取 得 したデバイスハンドルを 指 定 してください。ulDaSmplStatusアナログ 出 力 更 新 状 態 を 格 納 する 変 数 へのポインタです。格 納 される 状 態 は 以 下 のコードとなります。識 別 子 値 状 態DA_STATUS_STOP_SAMPLING 1 アナログ 出 力 更 新 は 停 止 しています。DA_STATUS_WAIT_TRIGGER 2 アナログ 出 力 更 新 はトリガ 待 ち 状 態です。DA_STATUS_NOW_SAMPLING 3 アナログ 出 力 更 新 動 作 中 です。ulDaSmplCountアナログ 出 力 済 のデータの 個 数 格 納 変 数 へのポインタです。ulDaAvailCountアナログ 出 力 されず 残 っているデータの 個 数 格 納 変 数 へのポインタです。ulDaAvailRepeatアナログ 出 力 動 作 の 残 り 繰 り 返 し 回 数 を 格 納 する 変 数 へのポインタです。【 戻 り 値 】DaGetStatus 関 数 は 処 理 が 正 常 終 了 するとDA_ERROR_SUCCESSを 返 します。 正 常 に 処 理 が 終 了 しなかった 場 合 DA_ERROR_SUCCESS 以 外 の 値 を 返 します。DA_ERROR_SUCCESS 以 外 の 値 が 返 された 場合 については『3.7 戻 り 値 一 覧 』を 参 照 してください。© 2000, 2013 Interface Corporation. All rights reserved.- 56 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows【 使 用 例 】●Visual C# .NET(x86、x64 共 用 )out int ulDaSmplStatus;out int ulDaSmplCount;out int ulDaAvailCount;out int ulDaAvailRepeat;nRet = IFCDA_ANY.DaStopSampling( hDeviceHandle,&ulDaSmplStatus,&ulDaSmplCount,&ulDaAvailCount,&ulDaAvailRepeat );●Visual Basic .NET(x86、x64 共 用 )Dim ulDaSmplStatus As IntegerDim ulDaSmplCount As IntegerDim ulDaAvailCount As IntegerDim ulDaAvailRepeat As IntegernRet = IFCDA_ANY.DaStopSampling( hDeviceHandle, ulDaSmplStatus,ulDaSmplCount,ulDaAvailCount,ulDaAvailRepeat )●Delphi 8ulDaSmplStatus : Integer;ulDaSmplCount : Cardinal;ulDaAvailCount : Cardinal;ulDaAvailRepeat : Cardinal;nRet := IFCDA.DaStopSampling( hDeviceHandle, ulDaSmplStatus, ulDaSmplCount,ulDaAvailCount, ulDaAvailRepeat );デバイスハンドル hDeviceHandle のデバイスに 対 して、 現 在 のアナログ 出 力 更 新 状 態 を 取 得 します。© 2000, 2013 Interface Corporation. All rights reserved.- 57 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows18. DaSetOutputMode【 機 能 】PCI-3329/3329K/338K,CTP-3329, CTP-3338, CPZ-3329, CPZ-3338 における 同 時 出 力 機 能 を 有 効か 無 効 にするか 設 定 します。【 書 式 】●Visual C# .NET(x86、x64 共 用 )[DllImport("FbiDa.dll")]public static extern int DaSetOutputMode (IntPtr hDeviceHandle,uint ulMode);●Visual C# .NET(x86 用 )[DllImport("FbiDa.dll")]public static extern int DaSetOutputMode (uint hDeviceHandle,uint ulMode);●Visual Basic .NET(x86、x64 共 用 )Declare Function DaSetOutputMode Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByVal ulMode As Integer)As Integer●Visual Basic .NET(x86 用 )Declare Function DaSetOutputMode Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByVal ulMode As Integer)As Integer●Delphi 8class function DaSetOutputMode (hDeviceHandle: THandle;ulMode:Integer): Integer; static;【パラメータ】hDeviceHandleDaOpen 関 数 で 取 得 したデバイスハンドルを 指 定 してください。© 2000, 2013 Interface Corporation. All rights reserved.- 58 -


<strong>GPC</strong>-<strong>3300</strong> Help for WindowsulMode同 時 出 力 機 能 を 有 効 にするか 無 効 にするかを 指 定 します。識 別 子 値 内 容DA_NORMAL_OUTPUT 1 同 時 出 力 機 能 無 効 (デフォルト)DA_SYNC_OUTPUT 2 同 時 出 力 機 能 有 効【 戻 り 値 】DaSetOutputMode 関 数 は 処 理 が 正 常 終 了 すると DA_ERROR_SUCCESS を 返 します。正 常 に 処 理 が 終 了 しなかった 場 合 DA_ERROR_SUCCESS 以 外 の 値 を 返 します。DA_ERROR_SUCCESS 以 外 の 値 が 返 された 場 合 については『3.7 戻 り 値 一 覧 』を 参 照 してください。【 使 用 例 】●Visual C# .NET(x86、x64 共 用 )nRet = IFCDA_ANY.DaSetOutputMode ( hDeviceHandle,IFCDA_ANY.DA_SYNC_OUTPUT );●Visual Basic .NET(x86、x64 共 用 )nRet = IFCDA_ANY.DaSetOutputMode ( hDeviceHandle,IFCDA_ANY.DA_SYNC_OUTPUT )●Delphi 8nRet := IFCDA_ANY.DaSetOutputMode ( hDeviceHandle, DA_SYNC_OUTPUT );デバイスハンドル hDeviceHandle のデバイスに 対 して、 同 時 出 力 機 能 を 有 効 にします。© 2000, 2013 Interface Corporation. All rights reserved.- 59 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows19. DaGetOutputMode【 機 能 】PCI-3329/3329K/338K, CTP-3329, CTP-3338, CPZ-3329, CPZ-3338 における 同 時 出 力 機 能 の 設定 を 取 得 します。【 書 式 】●Visual C# .NET(x86、x64 共 用 )[DllImport("FbiDa.dll")]public static extern int DaGetOutputMode (IntPtr hDeviceHandle,out uint ulMode);●Visual C# .NET(x86 用 )[DllImport("FbiDa.dll")]public static extern int DaGetOutputMode (uint hDeviceHandle,out uint ulMode);●Visual Basic .NET(x86、x64 共 用 )Declare Function DaGetOutputMode Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByRef ulMode As Integer)As Integer●Visual Basic .NET(x86 用 )Declare Function DaGetOutputMode Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByRef ulMode As Integer)As Integer●Delphi 8class function DaGetOutputMode (hDeviceHandle: Integer;var ulMode: Integer): Integer; static;【パラメータ】hDeviceHandleDaOpen 関 数 で 取 得 したデバイスハンドルを 指 定 してください。© 2000, 2013 Interface Corporation. All rights reserved.- 60 -


<strong>GPC</strong>-<strong>3300</strong> Help for WindowsulMode同 時 出 力 機 能 の 設 定 取 得 用 変 数 へのポインタです。識 別 子 値 内 容DA_NORMAL_OUTPUT 1 同 時 出 力 機 能 無 効 (デフォルト)DA_SYNC_OUTPUT 2 同 時 出 力 機 能 有 効【 戻 り 値 】DaGetOutputMode 関 数 は 処 理 が 正 常 終 了 するとDA_ERROR_SUCCESSを 返 します。 正 常 に 処 理 が 終了 しなかった 場 合 DA_ERROR_SUCCESS 以 外 の 値 を 返 します。DA_ERROR_SUCCESS 以 外 の 値 が 返 された 場 合 については『3.7 戻 り 値 一 覧 』を 参 照 してください。【 使 用 例 】●Visual C# .NET(x86、x64 共 用 )ULONG ulMode;nRet = IFCDA_ANY.DaGetOutputMode ( hDeviceHandle, &ulMode );●Visual Basic .NET(x86、x64 共 用 )Dim ulMode As IntegernRet = IFCDA_ANY.DaGetOutputMode ( hDeviceHandle, ulMode )●Delphi 8varulMode: Integer;nRet := IFCDA.DaGetOutputMode ( hDeviceHandle , ulMode );デバイスハンドル hDeviceHandle のデバイスの 同 時 出 力 情 報 を 取 得 します。© 2000, 2013 Interface Corporation. All rights reserved.- 61 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows20. DaOutputDa【 機 能 】デバイスから 1 件 のアナログ 出 力 を 行 います。DaStartSampling 関 数 を 使 用 した 通 常 のアナログ 出 力 更 新 とは 異 なり、 製 品 のアナログ 出 力 機能 のみを 利 用 します。【 書 式 】●Visual C# .NET(x86、x64 共 用 )[DllImport("FbiDa.dll")]public static extern int DaOutputDa (IntPtrhDeviceHandle,uintulCh,ref DASMPLCHREQ pDaSmplChReq,ref bytepData);[DllImport("FbiDa.dll")]public static extern int DaOutputDa (IntPtrhDeviceHandle,uintulCh,ref DASMPLCHREQ pDaSmplChReq,ref ushortpData);[DllImport("FbiDa.dll")]public static extern int DaOutputDa (IntPtrhDeviceHandle,uintulCh,ref DASMPLCHREQ pDaSmplChReq,ref uintpData);[DllImport("FbiDa.dll")]public static extern int DaOutputDa (IntPtrhDeviceHandle,uintulCh,DASMPLCHREQ[] pDaSmplChReq,byte[]pData);[DllImport("FbiDa.dll")]public static extern int DaOutputDa (IntPtrhDeviceHandle,uintulCh,DASMPLCHREQ[] pDaSmplChReq,© 2000, 2013 Interface Corporation. All rights reserved.- 62 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows);ushort[]pData[DllImport("FbiDa.dll")]public static extern int DaOutputDa (IntPtrhDeviceHandle,uintulCh,DASMPLCHREQ[] pDaSmplChReq,uint[]pData);●Visual C# .NET(x86 用 )[DllImport("FbiDa.dll")]public static extern int DaOutputDa (uinthDeviceHandle,uintulCh,ref DASMPLCHREQ pDaSmplChReq,ref bytepData);[DllImport("FbiDa.dll")]public static extern int DaOutputDa (uinthDeviceHandle,uintulCh,ref DASMPLCHREQ pDaSmplChReq,ref ushortpData);[DllImport("FbiDa.dll")]public static extern int DaOutputDa (uinthDeviceHandle,uintulCh,ref DASMPLCHREQ pDaSmplChReq,ref uintpData);[DllImport("FbiDa.dll")]public static extern int DaOutputDa (uinthDeviceHandle,uintulCh,DASMPLCHREQ[] pDaSmplChReq,byte[]pData);[DllImport("FbiDa.dll")]public static extern int DaOutputDa (uinthDeviceHandle,© 2000, 2013 Interface Corporation. All rights reserved.- 63 -


<strong>GPC</strong>-<strong>3300</strong> Help for WindowsuintDASMPLCHREQ[]ushort[]);ulCh,pDaSmplChReq,pData© 2000, 2013 Interface Corporation. All rights reserved.- 64 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows[DllImport("FbiDa.dll")]public static extern int DaOutputDa (uinthDeviceHandle,uintulCh,DASMPLCHREQ[] pDaSmplChReq,uint[]pData);●Visual Basic .NET(x86、x64 共 用 )Declare Function DaOutputDa Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByVal ulCh As Integer,ByRef pDaSmplChReq As DASMPLCHREQ,ByRef pData As Byte)As IntegerDeclare Function DaOutputDa Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByVal ulCh As Integer,ByRef pDaSmplChReq As DASMPLCHREQ,ByRef pData As Short)As IntegerDeclare Function DaOutputDa Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByVal ulCh As Integer,ByRef pDaSmplChReq As DASMPLCHREQ,ByRef pData As Integer)As IntegerDeclare Function DaOutputDa Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByVal ulCh As Integer,ByVal pDaSmplChReq() As DASMPLCHREQ,ByVal pData() As Byte)As IntegerDeclare Function DaOutputDa Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByVal ulCh As Integer,ByVal pDaSmplChReq() As DASMPLCHREQ,ByVal pData() As Short)As IntegerDeclare Function DaOutputDa Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,© 2000, 2013 Interface Corporation. All rights reserved.- 65 -


<strong>GPC</strong>-<strong>3300</strong> Help for WindowsByVal ulCh As Integer,ByVal pDaSmplChReq() As DASMPLCHREQ,ByVal pData() As Integer)As Integer●Visual Basic .NET(x86 用 )Declare Function DaOutputDa Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByVal ulCh As Integer,ByRef pDaSmplChReq As DASMPLCHREQ,ByRef pData As Byte)As IntegerDeclare Function DaOutputDa Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByVal ulCh As Integer,ByRef pDaSmplChReq As DASMPLCHREQ,ByRef pData As Short)As IntegerDeclare Function DaOutputDa Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByVal ulCh As Integer,ByRef pDaSmplChReq As DASMPLCHREQ,ByRef pData As Integer)As IntegerDeclare Function DaOutputDa Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByVal ulCh As Integer,ByVal pDaSmplChReq() As DASMPLCHREQ,ByVal pData() As Byte)As IntegerDeclare Function DaOutputDa Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByVal ulCh As Integer,ByVal pDaSmplChReq() As DASMPLCHREQ,ByVal pData() As Short)As IntegerDeclare Function DaOutputDa Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByVal ulCh As Integer,ByVal pDaSmplChReq() As DASMPLCHREQ,ByVal pData() As Integer)As Integer© 2000, 2013 Interface Corporation. All rights reserved.- 66 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows© 2000, 2013 Interface Corporation. All rights reserved.- 67 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows●Delphi 8class function DaOutputDa (hDeviceHandle: Integer;ulCh:Cardinal;var pDaSmplConfig: DASMPLCHREQ;var pData:BYTE): Integer; overload; static;class function DaOutputDa (hDeviceHandle: Integer;ulCh:Cardinal;var pDaSmplConfig: DASMPLCHREQ;var pData:WORD): Integer; overload; static;class function DaOutputDa (hDeviceHandle: Integer;ulCh:Cardinal;var pDaSmplConfig: DASMPLCHREQ;var pData:Integer): Integer; overload; static;class function DaOutputDa (hDeviceHandle: Integer;ulCh:Cardinal;var pDaSmplConfig: DASMPLCHREQ;pData:array of BYTE): Integer; overload; static;class function DaOutputDa (hDeviceHandle: Integer;ulCh:Cardinal;var pDaSmplConfig: DASMPLCHREQ;pData:array of WORD): Integer; overload; static;class function DaOutputDa (hDeviceHandle: Integer;ulCh:Cardinal;var pDaSmplConfig: DASMPLCHREQ;pData:array of Integer): Integer; overload; static;© 2000, 2013 Interface Corporation. All rights reserved.- 68 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows【パラメータ】hDeviceHandleDaOpen 関 数 で 取 得 したデバイスハンドルを 指 定 してください。ulChアナログ 出 力 を 行 うチャンネル 数 を 指 定 します。1~その 製 品 の 提 供 する 最 大 チャンネル 数ulCh には 必 ず 1 以 上 の 値 を 指 定 してください。pDaSmplChReqアナログ 出 力 を 行 うチャンネル 番 号 、レンジを 指 定 するための 構 造 体 配 列 (DASMPLCHREQ構 造 体 )へのポインタを 指 定 します。pDaSmplChReqアナログ 出 力 するデータを 格 納 してある 位 置 へのポインタを 指 定 します。pData が 指 す 位 置 に 格 納 されているアナログデータを 出 力 します。【 戻 り 値 】DaOutputDa 関 数 は 処 理 が 正 常 終 了 すると DA_ERROR_SUCCESS を 返 します。正 常 に 処 理 が 終 了 しなかった 場 合 DA_ERROR_SUCCESS 以 外 の 値 を 返 します。DA_ERROR_SUCCESS 以 外 の 値 が 返 された 場 合 については『3.7 戻 り 値 一 覧 』を 参 照 してください。【 備 考 】ulCh パラメータでは 1 件 出 力 を 行 うチャンネル 数 を 指 定 します(つまり、 出 力 チャンネル 番 号が 1,3,5,7 であればチャンネル 数 4 となります)。出 力 を 行 うチャンネル 番 号 は、DASMPLCHREQ 構 造 体 (アナログ 出 力 チャンネル 構 造 体 )の ulChNoメンバに 格 納 された 番 号 となります。1 データあたりのサイズは 製 品 の 分 解 能 により 異 なります。(データ 形 式 参 照 )各 言 語 で 使 用 する 変 数 の 型 は 次 のようになります。分 解 能 サイズ C 言 語 Visual Basic Delphi(バイト)8bit 1 BYTE Byte BYTE12bit 2 WORD Integer WORD16bit 2 WORD Integer WORD24bit 4 DWORD Long Integer© 2000, 2013 Interface Corporation. All rights reserved.- 69 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows【 使 用 例 】●Visual C# .NET(x86、x64 共 用 )IFCDA_ANY.DASMPLCHREQ DaSmplChReq[4];DaSmplChReq[0].ulChNo = 1;DaSmplChReq[1].ulChNo = 3;DaSmplChReq[2].ulChNo = 5;DaSmplChReq[3].ulChNo = 7;nRet = IFCDA_ANY.DaOutputDa ( hDeviceHandle, 4, &DaSmplChReq[0], pData );●Visual Basic .NET(x86、x64 共 用 )nRet = IFCDA_ANY.DaOutputDa( hDeviceHandle, 4, DaSmplChReq(0), pData )●Delphi 8nRet := DaOutputDa( hDeviceHandle, 4, DaSmplChReq[0], pData );デバイスハンドル hDeviceHandle のデバイスのチャンネル 1,3,5,7 に 対 して、1 件 分 のアナログデータを 出 力 します。© 2000, 2013 Interface Corporation. All rights reserved.- 70 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows21. DaInputDI【 機 能 】デバイスの 汎 用 入 力 端 子 の 状 態 を 読 み 出 します。【 書 式 】●Visual C# .NET(x86、x64 共 用 )[DllImport("FbiDa.dll")]public static extern int DaInputDI (IntPtr hDeviceHandle,out uint dwData);●Visual C# .NET(x86 用 )[DllImport("FbiDa.dll")]public static extern int DaInputDI (uint hDeviceHandle,out uint dwData);●Visual Basic .NET(x86、x64 共 用 )Declare Function DaInputDI Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByRef dwData As Integer)As Integer●Visual Basic .NET(x86 用 )Declare Function DaInputDI Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByRef dwData As Integer)As Integer●Delphi 8class function DaInputDI (hDeviceHandle: Integer;var dwData: Integer): Integer; static;【パラメータ】hDeviceHandleDaOpen 関 数 で 取 得 したデバイスハンドルを 指 定 してください。dwData入 力 したデジタルデータを 返 す 変 数 へのポインタです。© 2000, 2013 Interface Corporation. All rights reserved.- 71 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows【 戻 り 値 】DaInputDI 関 数 は 処 理 が 正 常 終 了 すると DA_ERROR_SUCCESS を 返 します。正 常 に 処 理 が 終 了 しなかった 場 合 DA_ERROR_SUCCESS 以 外 の 値 を 返 します。DA_ERROR_SUCCESS 以 外 の 値 が 返 された 場 合 については『3.7 戻 り 値 一 覧 』を 参 照 してください。【 使 用 例 】●Visual C# .NET(x86、x64 共 用 )nRet = IFCDA_ANY.DaInputDI( hDeviceHandle, &dwData );●Visual Basic .NET(x86、x64 共 用 )nRet = IFCDA_ANY.DaInputDI( hDeviceHandle, dwData )●Delphi 8nRet := IFCDA_ANY.DaInputDI( hDeviceHandle, dwData );デバイスハンドル hDeviceHandle のデバイスの 汎 用 入 力 端 子 の 状 態 を 取 得 します。© 2000, 2013 Interface Corporation. All rights reserved.- 72 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows22. DaOutputDO【 機 能 】デバイスの 汎 用 出 力 端 子 へデータを 出 力 します。【 書 式 】●Visual C# .NET(x86、x64 共 用 )[DllImport("FbiDa.dll")]public static extern int DaOutputDO (IntPtr hDeviceHandle,uint dwData);●Visual C# .NET(x86 用 )[DllImport("FbiDa.dll")]public static extern int DaOutputDO (uint hDeviceHandle,uint dwData);●Visual Basic .NET(x86、x64 共 用 )Declare Function DaOutputDO Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByVal dwData As Integer)As Integer●Visual Basic .NET(x86 用 )Declare Function DaOutputDO Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByVal dwData As Integer)As Integer●Delphi 8class function DaOutputDO (hDeviceHandle: Integer;dwData:Integer): Integer; static;【パラメータ】hDeviceHandleDaOpen 関 数 で 取 得 したデバイスハンドルを 指 定 してください。dwData出 力 するデジタルデータを 指 定 します。© 2000, 2013 Interface Corporation. All rights reserved.- 73 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows【 戻 り 値 】DaOutputDO 関 数 は 処 理 が 正 常 終 了 すると DA_ERROR_SUCCESS を 返 します。正 常 に 処 理 が 終 了 しなかった 場 合 DA_ERROR_SUCCESS 以 外 の 値 を 返 します。DA_ERROR_SUCCESS 以 外 の 値 が 返 された 場 合 については『3.7 戻 り 値 一 覧 』を 参 照 してください。【 使 用 例 】●Visual C# .NET(x86、x64 共 用 )nRet = IFCDA_ANY.DaOutputDO ( hDeviceHandle, 1 );●Visual Basic .NET(x86、x64 共 用 )nRet = IFCDA_ANY.DaOutputDO ( hDeviceHandle, 1 )●Delphi 8nRet := IFCDA. DaOutputDO ( hDeviceHandle, 1 );デバイスハンドル hDeviceHandle のデバイスに 対 して、 汎 用 出 力 端 子 へ 1 を 出 力 します。© 2000, 2013 Interface Corporation. All rights reserved.- 74 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows23. DaDataConv【 機 能 】アナログデータの 形 式 を 変 換 します。形 式 の 変 換 とともにデータに 対 し 平 均 処 理 やスムージング 処 理 を 行 うことができます。また、ユーザー 関 数 の 指 定 により、 任 意 のデータ 変 換 式 を 設 定 することも 可 能 です。(Visual Basic Ver. 4.0 では 使 用 できません)【 書 式 】●Visual C# .NET[DllImport("FbiDaDC.dll")]public static extern int DaDataConv (uintuSrcFormCode,ref bytepSrcData,uintuSrcSmplDataNum,ref DASMPLREQ SrcSmplReq,uintuDestFormCode,out bytepDestData,out uintuDestSmplDataNum,ref DASMPLREQ DestSmplReq,uintuEffect,uintuCount,LPCONVPROClpfnConv);上 記 以 外 にも 以 下 のパラメータは 次 のようなデータ 型 を 設 定 することができます。pSrcDataref ushort pSrcData;ref uint pSrcData;ref float pSrcData;byte[]pSrcData;ushort[] pSrcData;uint[]pSrcData;float[] pSrcData;pDestDataout ushortout uintout floatbyte[]ushort[]uint[]float[]pDestData;pDestData;pDestData;pDestData;pDestData;pDestData;pDestData;© 2000, 2013 Interface Corporation. All rights reserved.- 75 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows●Visual Basic .NETDeclare Function DaDataConv Lib "FbiDaDC.DLL"(ByVal uSrcFormCode As Integer,ByVal pSrcData As Byte,ByVal uSrcSmplDataNum As Integer,ByVal SrcSmplReq As DASMPLREQ,ByVal uDestFormCode As Integer,ByVal pDestData As Byte,ByVal uDestSmplDataNum As Integer,ByVal DestSmplReq As DASMPLREQ,ByVal uEffect As Integer,ByVal uCount As Integer,ByVal lpfnConv As LPCONVPROC)As Integer上 記 以 外 にも 以 下 のパラメータは 次 のようなデータ 型 を 設 定 することができます。pSrcDataByRef pSrcData As ShortByRef pSrcData As IntegerByRef pSrcData As SingleByVal pSrcData() As ByteByVal pSrcData() As ShortByVal pSrcData() As IntegerByVal pSrcData() As SinglepDestDataByRef pDestData As ShortByRef pDestData As IntegerByRef pDestData As SingleByVal pDestData() As ByteByVal pDestData() As ShortByVal pDestData() As IntegerByVal pDestData() As Single© 2000, 2013 Interface Corporation. All rights reserved.- 76 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows●Delphi 8class function DaDataConv (uSrcFormCode: Integer;var pSrcData: BYTE;uSrcSmplDataNum: Integer;var SrcSmplReq: DASMPLREQ;uDestFormCode: Integer;var pDestData: Byte;uDestSmplDataNum: Integer;var DestSmplReq: DASMPLREQ;uEffect:Integer;uCount:Integer;lpfnConv:LPCONVPROC): Integer; overload; static;上 記 以 外 にも 以 下 のパラメータは 次 のようなデータ 型 を 設 定 することができます。pSrcDatavar pSrcData: WORDvar pSrcData: Integervar pSrcData: SinglepSrcData: array of BytepSrcData: array of WordpSrcData: array of IntegerpSrcData: array of SinglepDestDatavar pDestData: WORDtvar pDestData: Integervar pDestData: SinglepDestData: array of BytepDestData: array of WordpDestData: array of IntegerpDestData: array of Single【パラメータ】uSrcFormCodepSrcData が 指 すデータ 領 域 に 格 納 されているデータ 形 式 をデータ 指 定 識 別 子 にて 指 定 します。 識 別 子 データ 形 式DA_DATA_PHYSICAL 物 理 量 ( 電 圧 [V] , 電 流 [mA])DA _DATA_BIN8 8bit バイナリDA _DATA_BIN10 10bit バイナリDA _DATA_BIN12 12bit バイナリDA _DATA_BIN16 16bit バイナリDA _DATA_BIN24 24bit バイナリバイナリデータとは、デバイスに 対 して 直 接 入 出 力 できる 形 式 のデータを 指 します。© 2000, 2013 Interface Corporation. All rights reserved.- 77 -


<strong>GPC</strong>-<strong>3300</strong> Help for WindowspSrcData変 換 元 データへのポインタを 指 定 します。pSrcSmplReq変 換 元 データのアナログ 出 力 更 新 条 件 が 格 納 されている 構 造 体 (DASMPLREQ 構 造 体 )へのポインタを 指 定 します。uSrcSmplDataNum変 換 元 データ 件 数 を 指 定 します。uDestFormCodepDestData が 指 すデータ 領 域 に 格 納 されているデータ 形 式 をデータ 指 定 識 別 子 にて 指 定 します。識 別 子 データ 形 式DA_DATA_PHYSICAL 物 理 量 ( 電 圧 [V] , 電 流 [mA])DA _DATA_BIN8 8bit バイナリDA _DATA_BIN10 10bit バイナリDA _DATA_BIN12 12bit バイナリDA _DATA_BIN16 16bit バイナリDA _DATA_BIN24 24bit バイナリバイナリデータとは、デバイスに 対 して 直 接 入 出 力 できる 形 式 のデータを 指 します。pDestData変 換 後 データへのポインタを 指 定 します。© 2000, 2013 Interface Corporation. All rights reserved.- 78 -


<strong>GPC</strong>-<strong>3300</strong> Help for WindowspuDestSmplDataNum変 換 後 データ 件 数 へのポインタを 指 定 します。pDestSmplReq変 換 後 データのアナログ 出 力 更 新 条 件 を 格 納 するための 構 造 体 (ADSMPLREQ 構 造 体 )へのポインタを 指 定 します。uEffectデータ 変 換 指 定データ 変 換 の 際 に 平 均 、スムージング 処 理 を 行 うかどうかを 以 下 のデータ 変 換 識 別 子 にて指 定 します。0 を 指 定 すると 平 均 、スムージング 処 理 は 行 われません。0 : 平 均 、スムージングを 行 いません。DA_CONV_SMOOTH :データに 対 し、スムージングによる 変 換 を 行 います。DA_CONV_AVERAGE1 :データに 対 し、 単 純 平 均 による 変 換 を 行 います。DA_CONV_AVERAGE2 :データに 対 し、 移 動 平 均 による 変 換 を 行 います。uCount平 均 、スムージングのデータ 件 数uEffect に 0 が 指 定 されている 場 合 、dwCount は 無 効 です。lpfnConvユーザー 関 数 へのポインタ一 通 りのデータ 変 換 を 終 えた 後 、ユーザー 関 数 により 任 意 の 計 算 を 行 ってデータに 変 換 を加 えることができます。 lpfnConv には 変 換 を 行 うための 関 数 へのポインタを 指 定 します。(fnConv 関 数 参 照 )ユーザー 関 数 によるデータ 変 換 を 行 わない 場 合 は、lpfnConv に NULL(Visual Basic .NETでは 0)を 指 定 してください。【 戻 り 値 】DaDataConv 関 数 は 正 常 に 終 了 すると DA_ERROR_SUCCESS を 返 します。それ 以 外 の 場 合 はDA_ERROR_SUCCESS 以 外 の 値 を 返 します。DA_ERROR_SUCCESS 以 外 の 値 が 返 された 場 合 については、 戻 り 値 一 覧 を 参 照 してください。【 備 考 】スムージングを 行 った 場 合 、pSrcData と pDestData はデータ 件 数 だけでなく、アナログ 出 力 更新 条 件 にも 変 化 が 起 こります。 例 えば、1kHz で 1000 件 のデータを 持 っていた 場 合 、これを 10件 で 平 均 した 場 合 、アナログ 出 力 データ 更 新 レートは 100Hz、データは 100 件 になります。スムージングを 行 った 場 合 はその 逆 のことが 起 こります。© 2000, 2013 Interface Corporation. All rights reserved.- 79 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows【 使 用 例 】●Visual C# .NETuint hDeviceHandle;nRet = IFCDA_ANY.DaDataConv( IFCDA_ANY.DA_DATA_BIN12,pSrcBuffer,uSrcSmplDataNum,pSrcSmplReq,IFCDA_ANY.DA_DATA_BIN16,pDestBuffer,puDestSmplDataNum,pDestSmplReq, 0, 0, NULL);●Visual Basic .NETDim hDeviceHandle As LongnRet= IFCDA_ANY.DaDataConv (IFCDA_ANY.DATA_BIN12,SrcBuffer,SrcSmplDataNum,SrcSmplReq,IFCDA_ANY.AD_DATA_BIN16,DestBuffer,DestSmplDataNum,DestSmplReq,0, 0, 0)●Delphi 8hDeviceHandle: Integer;nRet:=IFCAD.DaDataConv (AD_DATA_BIN12, SrcBuffer, uSrcSmplDataNum, SrcSmplReq,AD_DATA_BIN16,DestBuffer,DestSmplDataNum,DestSmplReq,0, 0, NIL);サンプリングデータの 変 換 を 行 います。変 換 条 件 は 以 下 の 通 りです。・ 変 換 元 データ 形 式 :12bit バイナリデータ・ 変 換 元 データサンプリング 条 件 :SrcSmplReq 構 造 体 にて 指 定・ 変 換 後 データ 形 式 :16bit バイナリデータ・ 変 換 後 データサンプリング 条 件 :DestSmplReq 構 造 体 に 格 納・スムージング : 無 し・ユーザ 関 数 : 無 し© 2000, 2013 Interface Corporation. All rights reserved.- 80 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows24. DaWriteFile【 機 能 】デバイスの 汎 用 入 力 端 子 の 状 態 を 読 み 出 します。【 書 式 】●Visual C# .NET[DllImport("FbiDa.dll")]public static extern int DaWriteFile (string szPathName,ref byte pSmplData,uint ulFormCode,uint ulSmplNum,uint ulChCount);上 記 以 外 にも 以 下 のパラメータは 次 のようなデータ 型 を 設 定 することができます。pSmplDataref ushort pSmplData;ref uint pSmplData;ref float pSmplData;byte[]pSmplData;ushort[] pSmplData;uint[]pSmplData;float[] pSmplData;●Visual Basic .NETDeclare Function DaWriteFile Lib "FbiDa.DLL"(ByVal szPathName As String,ByRef pSmplData As Byte,ByVal ulFormCode As Integer,ByVal ulSmplNum As Integer,ByVal ulChCount As Integer)As Integer上 記 以 外 にも 以 下 のパラメータは 次 のようなデータ 型 を 設 定 することができます。pSmplDataByRef pSmplData As ShortByRef pSmplData As IntegerByRef pSmplData As SingleByVal pSmplData() As ByteByVal pSmplData() As ShortByVal pSmplData() As IntegerByVal pSmplData() As Single© 2000, 2013 Interface Corporation. All rights reserved.- 81 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows●Delphi 8class function DaWriteFile (szPathName: String;var pSmplData: BYTE;ulFormCode: Cardinal;ulSmplNum: Cardinal;ulChCount: Cardinal): Integer; overload; static;上 記 以 外 にも 以 下 のパラメータは 次 のようなデータ 型 を 設 定 することができます。pSmplDatavar pSmplData: WORDvar pSmplData: Integervar pSmplData: SinglepSmplData: array of BytepSmplData: array of WordpSmplData: array of IntegerpSmplData: array of Single【パラメータ】pszPathNameアナログ 出 力 データを 格 納 するデータファイルへのパスを 指 定 します。pSmplDataファイルに 書 き 込 むアナログ 出 力 データが 格 納 されているバッファへのポインタを 指 定 します。ulFormCodeバッファ 内 のアナログ 出 力 データの 形 式 を 指 定 します。識 別 子データ 形 式DA_DATA_PHYSICAL物 理 量 ( 電 圧 [V]または 電 流 [mA])DA_DATA_BIN88bit バイナリDA_DATA_BIN1212bit バイナリDA_DATA_BIN1616bit バイナリDA_DATA_BIN2424bit バイナリulSmplNumアナログ 出 力 データ 数 を 指 定 します。ulChCountアナログ 出 力 を 行 うチャンネル 数 を 1~その 製 品 の 提 供 する 最 大 チャンネル 数 の 範 囲 で 指定 します。【 戻 り 値 】DaWriteFile 関 数 は 処 理 が 正 常 終 了 すると DA_ERROR_SUCCESS を 返 します。正 常 に 処 理 が 終 了 しなかった 場 合 DA_ERROR_SUCCESS 以 外 の 値 を 返 します。DA_ERROR_SUCCESS 以 外 の 値 が 返 された 場 合 については『3.7 戻 り 値 一 覧 』を 参 照 してください。© 2000, 2013 Interface Corporation. All rights reserved.- 82 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows【 備 考 】バッファ 内 のデータ 形 式 のままファイルに 書 き 込 みます。データがバイナリの 場 合 は、バイナリ 形 式 のファイルに、データが 物 理 量 の 場 合 は CSV 形 式 のファイルとなります。【 使 用 例 】●Visual C# .NETchar *pszPathName = "DATA.CSV";nRet = IFCDA.DaWriteFile( pszPathName, pSmplData, DA_DATA_PHYSICAL, 1024, 1 );●Visual Basic .NETDim pszPathName As StringpszPathName = "DATA.CSV" & Chr(0)nRet = IFCDA_ANY.DaWriteFile( pszPathName, pSmplData,IFCDA_ANY.DA_DATA_PHYSICAL, 1024, 1 )●Delphi 8StrCopy(pszPathName, 'DATA.CSV');nRet := IFCDA_ANY.DaWriteFile( pszPathName, pSmplData,IFCDA_ANY.DA_DATA_PHYSICAL, 1024, 1 );物 理 量 のデータをバッファ(pSmplData)から 1 チャンネル 1024 件 のアナログ 出 力 データファイル(DATA.CSV)に 書 き 込 みます。© 2000, 2013 Interface Corporation. All rights reserved.- 83 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows25. fnConv【 機 能 】DaDataConv 関 数 で 使 用 するコールバック 関 数 です。DaDataConv 関 数 の lpfnConv に fnConv 関数 へのポインタを 設 定 することにより、データ 変 換 時 に fnConv 関 数 を 呼 び 出 すことができます。fnConv 関 数 は、データ 1 点 毎 に 呼 び 出 されます。【 書 式 】●Visual C# .NETCONVPROC fnConv (short wCh,uint dwCount,IntPtr lpData);●Visual Basic .NETSub fnConv (ByVal wCh As Short,ByVal dwCount As Integer,ByVal lpData As IntPtr)As Integer●Delphi 8procedure fnConv (wCh:dwCount:lpData:): Integer; static;Integer;Integer;IntPtr【パラメータ】nChnCh には、lpData が 指 すデータのチャンネル 番 号 が 渡 されます。dwCountdwCount には、lpData が 指 すデータが、データの 先 頭 から 何 件 目 にあたるかが 渡 されます。lpDatalpData には、DaDataConv 関 数 により 変 換 されたデータが 格 納 されているデータへのポインタが 渡 されます。fnConv 関 数 は、データ 1 つ 毎 に 呼 び 出 されます。lpData が 指 す 位 置のデータを 変 換 後 のデータ 形 式 の 型 で 読 み 出 し、 計 算 を 行 った 後 lpData が 指 す 位 置 へ 変換 後 データ 形 式 の 型 と 同 じ 型 で 書 き 込 んでください。【 戻 り 値 】fnConv 関 数 は、 値 を 返 しません。© 2000, 2013 Interface Corporation. All rights reserved.- 84 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows【 使 用 例 】●Visual C# .NETpublic void fnConv(short wCh, uint dwCount, IntPtr lpData){//ここにコールバック 発 生 時 に 処 理 するコードを 記 述 します}//メインルーチンIFCDA. LPCONVPROC lpcallback;・・lpcallback = new IFCDA_ANY.LPDACALLBACK(fnConv);・nRet = IFCDA_ANY.DaDataConv( IFCDA_ANY.DA_DATA_BIN12,pSrcBuffer,uSrcSmplDataNum,pSrcSmplReq,IFCDA_ANY.DA_DATA_BIN16,pDestBuffer,puDestSmplDataNum,pDestSmplReq, 0, 0, lpcallback);●Visual Basic .NETPublic Sub fnConv (ByVal dwuser As Integer)‘ここにコールバック 発 生 時 に 処 理 するコードを 記 述 しますEnd Sub‘メインルーチンDim lpcallback As IFCDA_ANY.LPCONVPROC::pcallback = AddressOf fnConv:nRet= IFCDA_ANY.DaDataConv(IFCDA_ANY.DA_DATA_BIN12,SrcBuffer,SrcSmplDataNum,SrcSmplReq,IFCDA_ANY.DA_DATA_BIN16,DestBuffer,DestSmplDataNum,DestSmplReq,0, 0, lpcallback)© 2000, 2013 Interface Corporation. All rights reserved.- 85 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows●Delphi 8varprocedure fnConv(dwUser: Cardinal); forwad;// ガーベージコレクトによってデリゲートが 破 棄 されないようにデリゲートを// グローバル 変 数 に 代 入 し、その 変 数 をアンマネージ 関 数 へ 渡 します。constlpcallback: LPCONVPROC = @fnConv;//コールバック 関 数procedure fnConv (dwUser: Cardinal)begin//ここに 割 り 込 み 発 生 時 に 処 理 するコードを 記 述 します。end;// メインルーチン:nRet:=IFCDA.DaDataConv(DA_DATA_BIN12,SrcBuffer,SrcSmplDataNum,SrcSmplReq,DA_DATA_BIN16,DestBuffer,DestSmplDataNum,DestSmplReq,0, 0, lpcallback)© 2000, 2013 Interface Corporation. All rights reserved.- 86 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows26. CallBackProc【 機 能 】アナログ 出 力 更 新 終 了 時 / 指 定 件 数 更 新 時 に 呼 び 出 されるコールバック 関 数 です。DaSetBoardConfig 関 数 の lpCallBackProc メンバ 変 数 に CallBackProc 関 数 へのポインタを 設定 することにより、アナログ 出 力 更 新 終 了 時 に CallBackProc 関 数 を 呼 び 出 すことができます。また、DaSetCountEvent 関 数 の lpCallBackProc メンバ 変 数 に CallBackProc 関 数 へのポインタを 設 定 することにより、 指 定 件 数 更 新 毎 に CallBackProc 関 数 を 呼 び 出 すことができます。【 書 式 】●Visual C# .NETpublic void CallBackProc (uint dwUser);●Visual Basic .NETpublic Sub CallBackProc (ByVal dwUser As Integer)As Integer●Delphi 8procedure CallBackProc (dwUser:Cardinal;): Integer; static;【パラメータ】dwUserDaSetBoardConfig 関 数 、DaSetCountEvent 関 数 の dwUser メンバ 変 数 で 指 定 したデータが渡 されます。【 戻 り 値 】CallBackProc 関 数 は、 値 を 返 しません。【 使 用 例 】●Visual C# .NETpublic void CallBackProc(uint dwUser){//ここにコールバック 発 生 時 に 処 理 するコードを 記 述 します}//メインルーチンIFCDA.LPDACALLBACK lpcallback;:lpcallback = new IFCDA_ANY.LPDACALLBACK(CallBackProc);nRet = IFCDA_ANY.DaSetBoardConfig( hDeviceHandle , 1024, 0 , lpcallback , 0 );://サンプリング 開 始© 2000, 2013 Interface Corporation. All rights reserved.- 87 -


<strong>GPC</strong>-<strong>3300</strong> Help for WindowsnRet = IFCDA_ANY.DaStartSampling(hDeviceHandle, IFCDA_ANY.FLAG_ASYNC);●Visual Basic .NETPublic Sub CallBackProc(ByVal dwuser As Integer)‘ここにコールバック 発 生 時 に 処 理 するコードを 記 述 しますEnd Sub‘メインルーチンDim lpcallback As IFCDA_ANY.LPADCALLBACK:pcallback = Address Of CallBackProcnRet = IFCDA_ANY.DaSetBoardConfig(hDeviceHandle,1024, 0, lpcallback, 0):‘サンプリング 開 始nRet = IFCDA_ANY.DaStartSampling(hDeviceHandle, IFCDA_ANY.FLAG_ASYNC)●Delphi 8varprocedure CallBackProc(dwUser: Cardinal); forwad;// ガーベージコレクトによってデリゲートが 破 棄 されないようにデリゲートを// グローバル 変 数 に 代 入 し、その 変 数 をアンマネージ 関 数 へ 渡 します。constlpcallback: LPDACALLBACK = @CallBackProc;//コールバック 関 数procedure CallBackProc(dwUser: Cardinal)begin//ここに 割 り 込 み 発 生 時 に 処 理 するコードを 記 述 します。end;// メインルーチン:nRet := IFCDA.DaSetBoardConfig(hDeviceHandle,1024, 0, lpcallback, 0)://サンプリング 開 始nRet := IFCDA.DaStartSampling(hDeviceHandle, IFCDA.FLAG_ASYNC)© 2000, 2013 Interface Corporation. All rights reserved.- 88 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows3.2. 関 数 個 別 説 明 (FIFO 系 用 )27. DaSetFifoConfig【 機 能 】デバイスのアナログ 出 力 更 新 条 件 の 設 定 を 行 います【 書 式 】●Visual C# .NET(x86、x64 共 用 )[DllImport("FbiDa.dll")]public static extern int DaSetFifoConfig (IntPtrhDeviceHandle,ref DAFIFOREQ pDaFifoConfig);●Visual C# .NET(x86 用 )[DllImport("FbiDa.dll")]public static extern int DaSetFifoConfig (uinthDeviceHandle,ref DAFIFOREQ pDaFifoConfig);●Visual Basic .NET(x86、x64 共 用 )Declare Function DaSetFifoConfig Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByRef pDaFifoConfig As DAFIFOREQ)As Integer●Visual Basic .NET(x86 用 )Declare Function DaSetFifoConfig Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByRef pDaFifoConfig As DAFIFOREQ)As Integer●Delphi 8class function DaSetFifoConfig (hDeviceHandle: THandle;pDaFifoConfig: DAFIFOREQ): Integer; static;【パラメータ】hDeviceHandleDaOpen 関 数 で 取 得 したデバイスハンドルを 指 定 してください。pDaFifoConfigFIFO 方 式 アナログ 出 力 更 新 条 件 構 造 体 (DAFIFOREQ 構 造 体 )へのポインタです。© 2000, 2013 Interface Corporation. All rights reserved.- 89 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows【 戻 り 値 】DaSetFifoConfig 関 数 は 処 理 が 正 常 終 了 すると DA_ERROR_SUCCESS を 返 します。正 常 に 処 理 が 終 了 しなかった 場 合 DA_ERROR_SUCCESS 以 外 の 値 を 返 します。DA_ERROR_SUCCESS 以 外 の 値 が 返 された 場 合 については『3.7 戻 り 値 一 覧 』を 参 照 してください。【 備 考 】アナログ 出 力 チャンネル 数 とリピート 回 数 のみは、アナログ 出 力 更 新 中 に 変 更 することは 出 来ません。本 関 数 はPCI-3525, PCI-341016, PCI-341116,CPZ-3525LPC-340216, LPC-340416, LPC-361316, LPC-361416PEX-340216, PEX-340426, PEX-361316, PEX-361416CSI-340112, CSI-340212, CSI-340312, CBI-340112, CBI-340212, CBI-340312, CBI-340212TR,CBI-340312TR, CBI-340212TK, CBI-340312TK, CBI-340212TL, CBI-340312TL にて 使 用 できます。【 使 用 例 】●Visual C# .NET(x86、x64 共 用 )IFCDA_ANY.DAFIFOREQ DaFifoConfig;DaFifoConfig.ulChCount = 1;DaFifoConfig.SetChNo(0, 1);DaFifoConfig.SetChRange(0, DA_0_5V);DaFifoConfig.fSmplFreq = 10000;DaFifoConfig.ulSmplRepeat = 1;DaFifoConfig.ulSmplNum = 100;DaFifoConfig.ulStartTrgCondition = IFCDA_ANY.DA_TRG_FREERUN;DaFifoConfig.ulStopTrgCondition = IFCDA_ANY.DA_TRG_SMPLNUM;DaFifoConfig.ulEClkEdge = IFCDA_ANY.DA_DOWN_EDGE;DaFifoConfig.ulETrgEdge = IFCDA_ANY.DA_START_DOWN_EDGE;nRet = IFCDA_ANY.DaSetFifoConfig( hDeviceHandle, &DaFifoConfig );●Visual Basic .NET(x86、x64 共 用 )Dim DaFifoConfig As IFCDA_ANY.DAFIFOREQDaFifoConfig.ulChCount = 1DaFifoConfig.SetChNo(0, 1);DaFifoConfig.SetChRange(0, IFCDA_ANY.DA_0_5V);DaFifoConfig.fSmplFreq = 10000DaFifoConfig.ulSmplRepeat = 1DaFifoConfig.ulSmplNum = 100DaFifoConfig.ulStartTrgCondition = IFCDA_ANY.DA_TRG_FREERUNDaFifoConfig.ulStopTrgCondition = IFCDA_ANY.DA_TRG_SMPLNUMDaFifoConfig.ulEClkEdge = IFCDA_ANY.DA_DOWN_EDGEDaFifoConfig.ulETrgEdge = IFCDA_ANY.DA_START_DOWN_EDGEnRet = IFCDA_ANY.DaSetFifoConfig( hDeviceHandle, DaFifoConfig )© 2000, 2013 Interface Corporation. All rights reserved.- 90 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows© 2000, 2013 Interface Corporation. All rights reserved.- 91 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows●Delphi 8var DaFifoConfig: DAFIFOREQ;DaFifoConfig.ulChCount := 1;DaFifoConfig.SetChNo(0, 1);DaFifoConfig.SetChRange(0, DA_0_5V);DaFifoConfig.fSmplFreq := 10000;DaFifoConfig.ulSmplRepeat := 1;DaFifoConfig.ulSmplNum := 100;DaFifoConfig.ulStartTrgCondition := DA_TRG_FREERUN;DaFifoConfig.ulStopTrgCondition := DA_TRG_SMPLNUM;DaFifoConfig.ulEClkEdge := DA_DOWN_EDGE;DaFifoConfig.ulETrgEdge := DA_START_DOWN_EDGE;nRet := IFCDA.DaSetFifoConfig( hDeviceHandle, DaFifoConfig );デバイスハンドル hDeviceHandle のデバイスのアナログ 出 力 更 新 条 件 を 設 定 します。© 2000, 2013 Interface Corporation. All rights reserved.- 92 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows28. DaGetFifoConfig【 機 能 】デバイスの 現 在 設 定 されているサンプリング 条 件 を 取 得 します。【 書 式 】●Visual C# .NET(x86、x64 共 用 )[DllImport("FbiDa.dll")]public static extern int DaGetFifoConfig (IntPtrhDeviceHandle,out DAFIFOREQ pDaMode);●Visual C# .NET(x86 用 )[DllImport("FbiDa.dll")]public static extern int DaGetFifoConfig (uinthDeviceHandle,out DAFIFOREQ pDaMode);●Visual Basic .NET(x86、x64 共 用 )Declare Function DaGetFifoConfig Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByRef pDaMode As DAFIFOREQ)As Integer●Visual Basic .NET(x86 用 )Declare Function DaGetFifoConfig Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByRef pDaMode As DAFIFOREQ)As Integer●Delphi 8class function DaGetFifoConfig (hDeviceHandle: THandle;var pDaMode: DAFIFOREQ): Integer; static;【パラメータ】hDeviceHandleDaOpen 関 数 で 取 得 したデバイスハンドルを 指 定 してください。pDaMode波 形 出 力 モード 構 造 体 (DAMODEREQ 構 造 体 )へのポインタです。© 2000, 2013 Interface Corporation. All rights reserved.- 93 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows【 戻 り 値 】DaGetFifoConfig 関 数 は 処 理 が 正 常 終 了 するとDA_ERROR_SUCCESSを 返 します。 正 常 に 処 理 が 終了 しなかった 場 合 DA_ERROR_SUCCESS 以 外 の 値 を 返 します。DA_ERROR_SUCCESS 以 外 の 値 が 返 された 場 合 については『3.7 戻 り 値 一 覧 』を 参 照 してください。【 備 考 】本 関 数 はPCI-3525, PCI-341016, PCI-341116,CPZ-3525LPC-340216, LPC-340416, LPC-361316, LPC-361416PEX-340216, PEX-340426, PEX-361316, PEX-361416CSI-340112, CSI-340212, CSI-340312, CBI-340112, CBI-340212, CBI-340312, CBI-340212TR,CBI-340312TR, CBI-340212TK, CBI-340312TK, CBI-340212TL, CBI-340312TL にて 使 用 できます。【 使 用 例 】●Visual C# .NET(x86、x64 共 用 )IFCDA_ANY.DAFIFOREQ DaFifoConfig;nRet = IFCDA_ANY.DaGetFifoConfig( hDeviceHandle, &DaFifoConfig );●Visual Basic .NET(x86、x64 共 用 )Dim DaFifoConfig As IFCDA_ANY.DAFIFOREQnRet = IFCDA_ANY.DaGetFifoConfig( hDeviceHandle, DaFifoConfig )●Delphi 8var DaFifoConfig: DAFIFOREQ;nRet := IFCDA.DaGetFifoConfig( hDeviceHandle, DaFifoConfig );デバイスハンドル hDeviceHandle のデバイスの FIFO アナログ 出 力 更 新 条 件 設 定 を 取 得 します。© 2000, 2013 Interface Corporation. All rights reserved.- 94 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows29. DaSetInterval【 機 能 】デバイスのインターバルタイマ 設 定 を 行 います。【 書 式 】●Visual C# .NET(x86、x64 共 用 )[DllImport("FbiDa.dll")]public static extern int DaSetInterval (IntPtr hDeviceHandle,uint ulInterval);●Visual C# .NET(x86 用 )[DllImport("FbiDa.dll")]public static extern int DaSetInterval (uint hDeviceHandle,uint ulInterval);●Visual Basic .NET(x86、x64 共 用 )Declare Function DaSetInterval Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByVal ulInterval As Integer)As Integer●Visual Basic .NET(x86 用 )Declare Function DaSetInterval Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByVal ulInterval As Integer)As Integer●Delphi 8class function DaSetInterval (hDeviceHandle: THandle;ulInterval: Integer): Integer; static;【パラメータ】hDeviceHandleDaOpen 関 数 で 取 得 したデバイスハンドルを 指 定 してください。ulIntervalインターバルタイマの 周 期 を 指 定 します。設 定 範 囲 は 1[µs]~16777215[µs](000001h~FFFFFFh)となります。(1µs 単 位 )周 期 に 0 を 指 定 した 場 合 には、インターバルタイマが 停 止 します。© 2000, 2013 Interface Corporation. All rights reserved.- 95 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows【 戻 り 値 】DaSetInterval 関 数 は 処 理 が 正 常 終 了 すると DA_ERROR_SUCCESS を 返 します。正 常 に 処 理 が 終 了 しなかった 場 合 DA_ERROR_SUCCESS 以 外 の 値 を 返 します。DA_ERROR_SUCCESS 以 外 の 値 が 返 された 場 合 については『3.7 戻 り 値 一 覧 』を 参 照 してください。【 備 考 】本 関 数 は PCI-3525, CPZ-3525LPC-340216, LPC-340416, LPC-361316, LPC-361416PEX-340216, PEX-340426, PEX-361316, PEX-361416CSI-340112, CSI-340212, CSI-340312, CBI-340112, CBI-340212, CBI-340312, CBI-340212TR,CBI-340312TR, CBI-340212TK, CBI-340312TK, CBI-340212TL, CBI-340312TL にて 使 用 できます。本 関 数 で 指 定 したインターバルタイマの 周 期 は、DaSetFifoConfig 関 数 でスタート(ストップ)トリガ 条 件 に DA_TRG_SIGTIMER を 指 定 した 場 合 に、 指 定 した 周 期 毎 に、アナログ 出 力 が 開 始 ( 終了 )します。DaStartSampling 関 数 によるソフトウェアスタートとインターバルタイマは 同 期 していないため、DaStartSampling 関 数 実 行 後 、インターバルタイマによるトリガ 条 件 が 最 初 に 成 立 するまでに、 最 大 1 周 期 分 の 遅 延 が 発 生 する 可 能 性 があります。【 使 用 例 】●Visual C# .NET(x86、x64 共 用 )nRet = IFCDA_ANY.DaSetInterval ( hDeviceHandle, 1000 );●Visual Basic .NET(x86、x64 共 用 )nRet = IFCDA_ANY.DaSetInterval ( hDeviceHandle, 1000 )●Delphi 8nRet := IFCDA.DaSetInterval ( hDeviceHandle, 1000 );デバイスハンドル hDeviceHandle のデバイスのインターバルタイマを 1ms に 設 定 します。© 2000, 2013 Interface Corporation. All rights reserved.- 96 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows30. DaGetInterval【 機 能 】デバイスに 設 定 されているインターバルタイマ 設 定 を 取 得 します。【 書 式 】●Visual C# .NET(x86、x64 共 用 )[DllImport("FbiDa.dll")]public static extern int DaGetInterval (IntPtr hDeviceHandle,out uint ulInterval);●Visual C# .NET(x86 用 )[DllImport("FbiDa.dll")]public static extern int DaGetInterval (uint hDeviceHandle,out uint ulInterval);●Visual Basic .NET(x86、x64 共 用 )Declare Function DaGetInterval Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByRef ulInterval As Integer)As Integer●Visual Basic .NET(x86 用 )Declare Function DaGetInterval Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByRef ulInterval As Integer)As Integer●Delphi 8class function DaGetInterval (hDeviceHandle: THandle;var ulInterval: Integer): Integer; static;【パラメータ】hDeviceHandleDaOpen 関 数 で 取 得 したデバイスハンドルを 指 定 してください。ulIntervalインターバルタイマの 周 期 を 取 得 する 変 数 へのポインタを 指 定 します。設 定 範 囲 は 1[µs]~16777215[µs](000001h~FFFFFFh)となります。(1µs 単 位 )周 期 が 0 場 合 には、インターバルタイマが 停 止 していることを 表 します。© 2000, 2013 Interface Corporation. All rights reserved.- 97 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows【 戻 り 値 】DaGetInterval 関 数 は 処 理 が 正 常 終 了 すると DA_ERROR_SUCCESS を 返 します。正 常 に 処 理 が 終 了 しなかった 場 合 DA_ERROR_SUCCESS 以 外 の 値 を 返 します。DA_ERROR_SUCCESS 以 外 の 値 が 返 された 場 合 については『3.7 戻 り 値 一 覧 』を 参 照 してください。【 備 考 】本 関 数 は PCI-3525, CPZ-3525LPC-340216, LPC-340416, LPC-361316, LPC-361416PEX-340216, PEX-340426, PEX-361316, PEX-361416CSI-340112, CSI-340212, CSI-340312, CBI-340112, CBI-340212, CBI-340312, CBI-340212TR,CBI-340312TR, CBI-340212TK, CBI-340312TK, CBI-340212TL, CBI-340312TL にて 使 用 できます。【 使 用 例 】●Visual C# .NET(x86、x64 共 用 )nRet = IFCDA_ANY.DaGetInterval ( hDeviceHandle, &ulInterval);●Visual Basic .NET(x86、x64 共 用 )nRet = IFCDA_ANY.DaGetInterval ( hDeviceHandle, ulInterval )●Delphi 8nRet := IFCDA.DaGetInterval ( hDeviceHandle, ulInterval );デバイスハンドル hDeviceHandle のデバイスからインターバルタイマ 設 定 を 取 得 します。© 2000, 2013 Interface Corporation. All rights reserved.- 98 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows3.3. 関 数 個 別 説 明 ( 制 御 信 号 用 )31. DaSetFunction【 機 能 】デバイスの 外 部 出 力 信 号 の 制 御 を 行 います。【 書 式 】●Visual C# .NET(x86、x64 共 用 )[DllImport("FbiDa.dll")]public static extern int DaSetFunction (IntPtr hDeviceHandle,uint ulCnNo,uint ulFunction);●Visual C# .NET(x86 用 )[DllImport("FbiDa.dll")]public static extern int DaSetFunction (uint hDeviceHandle,uint ulCnNo,uint ulFunction);●Visual Basic .NET(x86、x64 共 用 )Declare Function DaSetFunction Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByVal ulCnNo As Integer,ByVal ulFunction As Integer)As Integer●Visual Basic .NET(x86 用 )Declare Function DaSetFunction Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByVal ulCnNo As Integer,ByVal ulFunction As Integer)As Integer●Delphi 8class function DaSetFunction (hDeviceHandle: THandle;ulCnNo:Integer;ulFunction: Integer): Integer; static;© 2000, 2013 Interface Corporation. All rights reserved.- 99 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows【パラメータ】hDeviceHandleDaOpen 関 数 で 取 得 したデバイスハンドルを 指 定 してください。© 2000, 2013 Interface Corporation. All rights reserved.- 100 -


<strong>GPC</strong>-<strong>3300</strong> Help for WindowsulCnNo機 能 設 定 を 行 うコネクタ 番 号 を 指 定 します。 指 定 の 範 囲 は 以 下 の 通 りです。PCI-3525,CPZ-3525 の 場 合3 または 4 を 指 定 します。CPZ-360810 の 場 合識 別 子 値 説 明DA_EX_DIO1 1 CN4DA_EX_DIO2 2 CN5DA_EX_DIO3 3 CN6 10pinulFunctionulChNo で 指 定 したコネクタの 機 能 を 指 定 します。設 定 機 能 は、 下 記 の 識 別 子 で 指 定 されます。PCI-3525,CPZ-3525 の 場 合識 別 子 値 説 明DA_CN_FREE 0 コネクタ 未 使 用DA_CN_EXTRG_IN 1 外 部 トリガ 入 力DA_CN_EXTRG_OUT 2 外 部 トリガ 出 力DA_CN_EXINT_IN 5 外 部 割 り 込 み 入 力DA_CN_DI 7 汎 用 デジタル 入 力DA_CN_DO 8 汎 用 デジタル 出 力CPZ-360810 の 場 合識 別 子 値 説 明DA_CN_FREE 0 コネクタ 未 使 用DA_CN_EXTRG_IN 1 外 部 トリガ 入 力DA_CN_EXINT_IN 5 外 部 割 り 込 み 入 力【 戻 り 値 】DaSetFunction 関 数 は 処 理 が 正 常 終 了 するとDA_ERROR_SUCCESSを 返 します。 正 常 に 処 理 が 終 了しなかった 場 合 DA_ERROR_SUCCESS 以 外 の 値 を 返 します。DA_ERROR_SUCCESS 以 外 の 値 が 返 された場 合 については『3.7 戻 り 値 一 覧 』を 参 照 してください。© 2000, 2013 Interface Corporation. All rights reserved.- 101 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows【 備 考 】・ 本 関 数 は PCI-3525, CPZ-3525, CPZ-360810 でのみ 使 用 可 能 です。PCI-3525, CPZ-3525 の 場 合・ CN4 は DaOpen 関 数 実 行 後 に 自 動 的 にアナログ 出 力 に 切 り 替 わります。・ 汎 用 入 出 力 の 状 態 は 以 下 のようになります。CN3 で DA_CN_DI(DA_CN_DO)を 設 定 した 場 合 は IN1(OUT1)となります。・ デフォルトでは 未 使 用 (DA_CN_FREE)の 状 態 になります。・ AD 側 で 使 用 しているコネクタに 対 して 設 定 を 行 うことはできません。CPZ-360810 の 場 合・ デフォルトでは 未 使 用 (DA_CN_FREE)の 状 態 になります。【 使 用 例 】●Visual C# .NET(x86、x64 共 用 )nRet = IFCDA_ANY.DaSetFunction( hDeviceHandle, 3,IFCDA_ANY.DA_CN_EXTRG_IN );●Visual Basic .NET(x86、x64 共 用 )nRet = IFCDA_ANY.DaSetFunction( hDeviceHandle, 3,IFCDA_ANY.DA_CN_EXTRG_IN )●Delphi 8nRet := IFCDA.DaSetFunction( hDeviceHandle, 3, DA_CN_EXTRG_IN );デバイスハンドル hDeviceHandle のデバイスに 対 して、CN3 を EXTRG IN に 設 定 します。© 2000, 2013 Interface Corporation. All rights reserved.- 102 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows32. DaGetFunction【 機 能 】デバイスの 外 部 出 力 信 号 の 状 態 を 取 得 します。【 書 式 】●Visual C# .NET(x86、x64 共 用 )[DllImport("FbiDa.dll")]public static extern int DaGetFunction (IntPtr hDeviceHandle,uint ulCnNo,out uint ulFunction);●Visual C# .NET(x86 用 )[DllImport("FbiDa.dll")]public static extern int DaGetFunction (uint hDeviceHandle,uint ulCnNo,out uint ulFunction);●Visual Basic .NET(x86、x64 共 用 )Declare Function DaGetFunction Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByVal ulCnNo As Integer,ByRef ulFunction As Integer)As Integer●Visual Basic .NET(x86 用 )Declare Function DaGetFunction Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByVal ulCnNo As Integer,ByRef ulFunction As Integer)As Integer●Delphi 8class function DaGetFunction (hDeviceHandle: THandle;ulCnNo:Integer;var ulFunction: Integer): Integer; static;【パラメータ】hDeviceHandleDaOpen 関 数 で 取 得 したデバイスハンドルを 指 定 してください。© 2000, 2013 Interface Corporation. All rights reserved.- 103 -


<strong>GPC</strong>-<strong>3300</strong> Help for WindowsulCnNo機 能 設 定 を 行 うコネクタ 番 号 を 指 定 します。 指 定 の 範 囲 は 以 下 の 通 りです。PCI-3525,CPZ-3525 の 場 合3 または 4 を 指 定 します。CPZ-360810 の 場 合識 別 子 値 説 明DA_EX_DIO1 1 CN4DA_EX_DIO2 2 CN5DA_EX_DIO3 3 CN6 10pinulFunctionulChNo で 指 定 したコネクタの 機 能 を 取 得 する 変 数 へのポインタを 指 定 します。設 定 機 能 は、 下 記 の 識 別 子 で 指 定 されます。PCI-3525,CPZ-3525 の 場 合識 別 子 値 説 明DA_CN_FREE 0 コネクタ 未 使 用DA_CN_EXTRG_IN 1 外 部 トリガ 入 力DA_CN_EXTRG_OUT 2 外 部 トリガ 出 力DA_CN_EXINT_IN 5 外 部 割 り 込 み 入 力DA_CN_DI 7 汎 用 デジタル 入 力DA_CN_DO 8 汎 用 デジタル 出 力CPZ-360810 の 場 合識 別 子 値 説 明DA_CN_FREE 0 コネクタ 未 使 用DA_CN_EXTRG_IN 1 外 部 トリガ 入 力DA_CN_EXINT_IN 5 外 部 割 り 込 み 入 力【 戻 り 値 】DaGetFunction 関 数 は 処 理 が 正 常 終 了 するとDA_ERROR_SUCCESSを 返 します。 正 常 に 処 理 が 終 了しなかった 場 合 DA_ERROR_SUCCESS 以 外 の 値 を 返 します。DA_ERROR_SUCCESS 以 外 の 値 が 返 された場 合 については『3.7 戻 り 値 一 覧 』を 参 照 してください。【 備 考 】DaSetFunction 関 数 で 機 能 設 定 を 行 う 前 に、 本 関 数 を 実 行 した 場 合 にはデフォルト 値 を 取 得 します。デフォルトでは 未 使 用 (DA_CN_FREE)の 状 態 になります。AD 側 でコネクタ 設 定 を AD_CN_FREE 以 外 にしている 場 合 には、 設 定 を 取 得 することはできず、戻 り 値 にエラーが 返 されます。本 関 数 は PCI-3525, CPZ-3525, CPZ-360810 でのみ 使 用 可 能 です。© 2000, 2013 Interface Corporation. All rights reserved.- 104 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows【 使 用 例 】●Visual C# .NET(x86、x64 共 用 )nRet = IFCDA_ANY.DaGetFunction ( hDeviceHandle, 3, &ulFunction);●Visual Basic .NET(x86、x64 共 用 )nRet = IFCDA_ANY.DaGetFunction ( hDeviceHandle, 3, ulFunction)●Delphi 8nRet := IFCDA.DaGetFunction ( hDeviceHandle, 3, ulFunction);デバイスハンドル hDeviceHandle のデバイスに 対 して、CN3 の 設 定 値 を 取 得 します。© 2000, 2013 Interface Corporation. All rights reserved.- 105 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows3.4. 関 数 個 別 説 明 (キャリブレーション 用 )33. DaCalibration【 機 能 】アナログ 出 力 デバイスのキャリブレーションを 行 います。電 子 ボリュームがサポートされないデバイスがあります。 電 子 ボリュームをサポートしていないデバイスを 指 定 した 場 合 、AD_ERROR_NOT_SUPPORTED が 返 ります。【 書 式 】●Visual C# .NET(x86、x64 共 用 )[DllImport("FbiDa.dll")]public static extern int DaCalibration (IntPtr hDeviceHandle,uint ulAdjustCh,uint ulRange);●Visual C# .NET(x86 用 )[DllImport("FbiDa.dll")]public static extern int DaCalibration (uint hDeviceHandle,uint ulAdjustCh,uint ulRange);●Visual Basic .NET(x86、x64 共 用 )Declare Function DaCalibration Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByVal ulAdjustCh As IntegerByVal ulRange As Integer)As Integer●Visual Basic .NET(x86 用 )Declare Function DaCalibration Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByVal ulAdjustCh As IntegerByVal ulRange As Integer)As Integer●Delphi 8class function DaCalibration (hDeviceHandle: Integer;ulAdjustCh: IntegerulRange:Integer© 2000, 2013 Interface Corporation. All rights reserved.- 106 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows): Integer; static;© 2000, 2013 Interface Corporation. All rights reserved.- 107 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows【パラメータ】hDeviceHandleDaOpen 関 数 で 取 得 したデバイスハンドルを 指 定 してください。ulAdjustCh調 整 を 行 うチャンネル 番 号 を 指 定 してください。ulRange調 整 を 行 うレンジを 指 定 します。レンジの 指 定 は、レンジ 識 別 子 のうちいずれか 1 つを 指 定 します。識 別 子 値 意 味DA_0_1V 0x00000001 電 圧 ユニポーラ 0~1VDA_0_2P5V 0x00000002 電 圧 ユニポーラ 0~2.5VDA_0_5V 0x00000004 電 圧 ユニポーラ 0~5VDA_0_10V 0x00000008 電 圧 ユニポーラ 0~10VDA_1_5V 0x00000010 電 圧 ユニポーラ 1~5VDA_0_20mA 0x00001000 電 流 ユニポーラ 0~20mADA_4_20mA 0x00002000 電 流 ユニポーラ 4~20mADA_1V 0x00010000 電 圧 バイポーラ ±1VDA_2P5V 0x00020000 電 圧 バイポーラ ±2.5VDA_5V 0x00040000 電 圧 バイポーラ ±5VDA_10V 0x00080000 電 圧 バイポーラ ±10VDA_20mA 0x01000000 電 流 バイポーラ ±20mA【 戻 り 値 】DaCalibratio 関 数 は 処 理 が 正 常 終 了 すると DA_ERROR_SUCCESS を 返 します。正 常 に 処 理 が 終 了 しなかった 場 合 DA_ERROR_SUCCESS 以 外 の 値 を 返 します。DA_ERROR_SUCCESS 以 外 の 値 が 返 された 場 合 については『3.7 戻 り 値 一 覧 』を 参 照 してください。【 備 考 】・ 本 関 数 は PCI-341016(±10V レンジ), PCI-341116(±10V レンジ)でのみ 使 用 可 能 です。【 使 用 例 】●Visual C# .NET(x86、x64 共 用 )nRet = IFCDA_ANY.DaCalibration( hDeviceHandle, 1, DA_10V);●Visual Basic .NET(x86、x64 共 用 )nRet = IFCDA_ANY.DaCalibration( hDeviceHandle, 1, DA_10V)●Delphi 8nRet := IFCDA.DaCalibration( hDeviceHandle, 1, DA_10V);デバイスハンドル hDeviceHandle のアナログ 出 力 デバイスのチャンネル 1 の±10V レンジのオートキャリブレーションを 行 います。© 2000, 2013 Interface Corporation. All rights reserved.- 108 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows3.5. 関 数 個 別 説 明 ( 電 流 出 力 系 用 )34. DaSetCurrentDir【 機 能 】電 流 出 力 方 向 の 設 定 を 行 います。【 書 式 】●Visual C# .NET(x86、x64 共 用 )[DllImport("FbiDa.dll")]public static extern int DaSetCurrentDir (IntPtr hDeviceHandle,uint Direction);●Visual C# .NET(x86 用 )[DllImport("FbiDa.dll")]public static extern int DaSetCurrentDir (uint hDeviceHandle,uint Direction);●Visual Basic .NET(x86、x64 共 用 )Declare Function DaSetCurrentDir Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByVal Direction As Integer)As Integer●Visual Basic .NET(x86 用 )Declare Function DaSetCurrentDir Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByVal Direction As Integer)As Integer【パラメータ】hDeviceHandleDaOpen 関 数 で 取 得 したデバイスハンドルを 指 定 してください。Direction各 チャンネルの 電 流 出 力 方 向 を 指 定 します。Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0CH8 CH7 CH6 CH5 CH4 CH3 CH2 CH1CH1CH1 の 電 流 出 力 方 向 の 設 定0:IOUT1→ICOM1( 順 方 向 )© 2000, 2013 Interface Corporation. All rights reserved.- 109 -


<strong>GPC</strong>-<strong>3300</strong> Help for WindowsCH2CH3CH4CH5CH6CH7CH81:ICOM1→IOUT1( 逆 方 向 )CH2 の 電 流 出 力 方 向 の 設 定0:IOUT2→ICOM2( 順 方 向 )1:ICOM2→IOUT2( 逆 方 向 )CH3 の 電 流 出 力 方 向 の 設 定0:IOUT3→ICOM3( 順 方 向 )1:ICOM3→IOUT3( 逆 方 向 )CH4 の 電 流 出 力 方 向 の 設 定0:IOUT4→ICOM4( 順 方 向 )1:ICOM4→IOUT4( 逆 方 向 )CH5 の 電 流 出 力 方 向 の 設 定0:IOUT5→ICOM5( 順 方 向 )1:ICOM5→IOUT5( 逆 方 向 )CH6 の 電 流 出 力 方 向 の 設 定0:IOUT6→ICOM6( 順 方 向 )1:ICOM6→IOUT6( 逆 方 向 )CH7 の 電 流 出 力 方 向 の 設 定0:IOUT7→ICOM7( 順 方 向 )1:ICOM7→IOUT7( 逆 方 向 )CH8 の 電 流 出 力 方 向 の 設 定0:IOUT8→ICOM8( 順 方 向 )1:ICOM8→IOUT8( 逆 方 向 )【 戻 り 値 】DaSetCurrentDir 関 数 は 処 理 が 正 常 終 了 すると DA_ERROR_SUCCESS を 返 します。正 常 に 処 理 が 終 了 しなかった 場 合 DA_ERROR_SUCCESS 以 外 の 値 を 返 します。DA_ERROR_SUCCESS 以 外 の 値 が 返 された 場 合 については『3.7 戻 り 値 一 覧 』を 参 照 してください。【 使 用 例 】●Visual C# .NET(x86、x64 共 用 )nRet = IFCDA_ANY.DaSetCurrentDir ( hDeviceHandle, 1 );●Visual Basic .NET(x86、x64 共 用 )nRet = IFCDA_ANY.DaSetCurrentDir ( hDeviceHandle, 1 )デバイスハンドル hDeviceHandle のデバイスに 対 して、チャンネル 1 を 逆 方 向 にします。© 2000, 2013 Interface Corporation. All rights reserved.- 110 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows35. DaGetCurrentDir【 機 能 】電 流 出 力 方 向 の 設 定 を 取 得 します。【 書 式 】●Visual C# .NET(x86、x64 共 用 )[DllImport("FbiDa.dll")]public static extern int DaGetCurrentDir (IntPtr hDeviceHandle,out uint Direction);●Visual C# .NET(x86 用 )[DllImport("FbiDa.dll")]public static extern int DaGetCurrentDir (uint hDeviceHandle,out uint Direction);●Visual Basic .NET(x86、x64 共 用 )Declare Function DaGetCurrentDir Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByRef Direction As Integer)As Integer●Visual Basic .NET(x86 用 )Declare Function DaGetCurrentDir Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByRef Direction As Integer)As Integer【パラメータ】hDeviceHandleDaOpen 関 数 で 取 得 したデバイスハンドルを 指 定 してください。Direction電 流 出 力 方 向 の 設 定 取 得 用 変 数 へのポインタです。Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0CH8 CH7 CH6 CH5 CH4 CH3 CH2 CH1CH1 CH1 の 電 流 出 力 方 向 の 設 定0:IOUT1→ICOM1( 順 方 向 )1:ICOM1→IOUT1( 逆 方 向 )CH2 CH2 の 電 流 出 力 方 向 の 設 定0:IOUT2→ICOM2( 順 方 向 )© 2000, 2013 Interface Corporation. All rights reserved.- 111 -


<strong>GPC</strong>-<strong>3300</strong> Help for WindowsCH3CH4CH5CH6CH7CH81:ICOM2→IOUT2( 逆 方 向 )CH3 の 電 流 出 力 方 向 の 設 定0:IOUT3→ICOM3( 順 方 向 )1:ICOM3→IOUT3( 逆 方 向 )CH4 の 電 流 出 力 方 向 の 設 定0:IOUT4→ICOM4( 順 方 向 )1:ICOM4→IOUT4( 逆 方 向 )CH5 の 電 流 出 力 方 向 の 設 定0:IOUT5→ICOM5( 順 方 向 )1:ICOM5→IOUT5( 逆 方 向 )CH6 の 電 流 出 力 方 向 の 設 定0:IOUT6→ICOM6( 順 方 向 )1:ICOM6→IOUT6( 逆 方 向 )CH7 の 電 流 出 力 方 向 の 設 定0:IOUT7→ICOM7( 順 方 向 )1:ICOM7→IOUT7( 逆 方 向 )CH8 の 電 流 出 力 方 向 の 設 定0:IOUT8→ICOM8( 順 方 向 )1:ICOM8→IOUT8( 逆 方 向 )【 戻 り 値 】DaGetCurrentDir 関 数 は 処 理 が 正 常 終 了 するとDA_ERROR_SUCCESSを 返 します。 正 常 に 処 理 が 終了 しなかった 場 合 DA_ERROR_SUCCESS 以 外 の 値 を 返 します。DA_ERROR_SUCCESS 以 外 の 値 が 返 された 場 合 については『3.7 戻 り 値 一 覧 』を 参 照 してください。【 使 用 例 】●Visual C# .NET(x86、x64 共 用 )uint Direction;nRet = IFCDA_ANY.DaGetCurrentDir( hDeviceHandle, out Direction);●Visual Basic .NET(x86、x64 共 用 )Dim Direction As IntegernRet = IFCDA_ANY.DaGetCurrentDir( hDeviceHandle, Direction)デバイスハンドル hDeviceHandle のアナログ 出 力 デバイスの 電 流 出 力 方 向 情 報 を 取 得 します。© 2000, 2013 Interface Corporation. All rights reserved.- 112 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows36. DaSetPowerSupply【 機 能 】外 部 電 源 の 供 給 / 遮 断 の 設 定 を 行 います。【 書 式 】●Visual C# .NET(x86、x64 共 用 )[DllImport("FbiDa.dll")]public static extern int DaSetPowerSupply (IntPtr hDeviceHandle,uint ExOnOff);●Visual C# .NET(x86 用 )[DllImport("FbiDa.dll")]public static extern int DaSetPowerSupply (uint hDeviceHandle,uint ExOnOff);●Visual Basic .NET(x86、x64 共 用 )Declare Function DaSetPowerSupply Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByVal ExOnOff As Integer)As Integer●Visual Basic .NET(x86 用 )Declare Function DaSetPowerSupply Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByVal ExOnOff As Integer)As Integer【パラメータ】hDeviceHandleDaOpen 関 数 で 取 得 したデバイスハンドルを 指 定 してください。ExOnOff各 チャンネルの 電 流 出 力 方 向 を 指 定 します。Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0EXON予 約EXON外 部 電 源 の 供 給 / 遮 断0: 供 給1: 遮 断© 2000, 2013 Interface Corporation. All rights reserved.- 113 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows【 備 考 】・ 電 源 ON 時 は 外 部 電 源 を 製 品 内 部 へ 供 給 します。・ 外 部 電 源 の 過 電 圧 が 検 出 されると 自 動 的 に 製 品 内 部 への 供 給 が 遮 断 されます【 戻 り 値 】DaSetPowerSupply 関 数 は 処 理 が 正 常 終 了 すると DA_ERROR_SUCCESS を 返 します。正 常 に 処 理 が 終 了 しなかった 場 合 DA_ERROR_SUCCESS 以 外 の 値 を 返 します。DA_ERROR_SUCCESS 以 外 の 値 が 返 された 場 合 については『3.7 戻 り 値 一 覧 』を 参 照 してください。【 使 用 例 】●Visual C# .NET(x86、x64 共 用 )nRet = IFCDA_ANY.DaSetPowerSupply( hDeviceHandle, 128 );●Visual Basic .NET(x86、x64 共 用 )nRet = IFCDA_ANY.DaSetPowerSupply( hDeviceHandle, 128)デバイスハンドル hDeviceHandle のアナログ 出 力 デバイスに 対 して、 外 部 電 源 を 遮 断 します。© 2000, 2013 Interface Corporation. All rights reserved.- 114 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows37. DaGetPowerSupply【 機 能 】外 部 電 源 の 供 給 / 遮 断 の 設 定 状 態 を 取 得 します。【 書 式 】●Visual C# .NET(x86、x64 共 用 )[DllImport("FbiDa.dll")]public static extern int DaGetPowerSupply (IntPtr hDeviceHandle,out uint ExOnOff);●Visual C# .NET(x86 用 )[DllImport("FbiDa.dll")]public static extern int DaGetPowerSupply (uint hDeviceHandle,out uint ExOnOff);●Visual Basic .NET(x86、x64 共 用 )Declare Function DaGetPowerSupply Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByRef ExOnOff As Integer)As Integer●Visual Basic .NET(x86 用 )Declare Function DaGetPowerSupply Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByRef ExOnOff As Integer)As Integer【パラメータ】hDeviceHandleDaOpen 関 数 で 取 得 したデバイスハンドルを 指 定 してください。ExOnOff電 流 出 力 方 向 の 設 定 取 得 用 変 数 へのポインタです。Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0EXON 予 約 VSEL EXOVH EXOVLEXON 外 部 電 源 の 供 給 / 遮 断0: 供 給1: 遮 断VSEL アナログ 電 源 の 供 給 源 を 確 認 します0:バス 電 源© 2000, 2013 Interface Corporation. All rights reserved.- 115 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows1: 外 部 電 源EXOVH 外 部 電 源 の 電 圧 状 態 を 確 認 します0: 過 電 圧 (+) 未 検 出1: 過 電 圧 (+) 検 出EXOVL 外 部 電 源 の 電 圧 状 態 を 確 認 します0: 過 電 圧 (-) 未 検 出1: 過 電 圧 (-) 検 出EXOVH, EXOVL は 現 在 の 状 態 を 取 得 します( 値 をラッチしません)。外 部 電 源 の 過 電 圧 状 態 が 検 出 されている 間 だけ’1’になります【 戻 り 値 】DaGetPowerSupply 関 数 は 処 理 が 正 常 終 了 するとDA_ERROR_SUCCESSを 返 します。 正 常 に 処 理 が 終了 しなかった 場 合 DA_ERROR_SUCCESS 以 外 の 値 を 返 します。DA_ERROR_SUCCESS 以 外 の 値 が 返 された 場 合 については『3.7 戻 り 値 一 覧 』を 参 照 してください。【 使 用 例 】●Visual C# .NET(x86、x64 共 用 )uint ExOnOff;nRet = IFCDA_ANY.DaGetPowerSupply ( hDeviceHandle, out ExOnOff);●Visual Basic .NET(x86、x64 共 用 )Dim ExOnOff As IntegernRet = IFCDA_ANY.DaGetPowerSupply ( hDeviceHandle, ExOnOff)デバイスハンドル hDeviceHandle のアナログ 出 力 デバイスの 外 部 電 源 の 供 給 / 遮 断 の 設 定 状 態を 取 得 します。© 2000, 2013 Interface Corporation. All rights reserved.- 116 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows38. DaSetExcessVoltage【 機 能 】外 部 電 源 の 供 給 / 遮 断 の 設 定 を 行 います。【 書 式 】●Visual C# .NET(x86、x64 共 用 )[DllImport("FbiDa.dll")]public static extern int DaSetExcessVoltage (IntPtr hDeviceHandle,uint ExOnOff);●Visual C# .NET(x86 用 )[DllImport("FbiDa.dll")]public static extern int DaSetExcessVoltage (uint hDeviceHandle,uint ExOnOff);●Visual Basic .NET(x86、x64 共 用 )Declare Function DaSetExcessVoltage Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByVal ExOnOff As Integer)As Integer●Visual Basic .NET(x86 用 )Declare Function DaSetExcessVoltage Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByVal ExOnOff As Integer)As Integer【パラメータ】hDeviceHandleDaOpen 関 数 で 取 得 したデバイスハンドルを 指 定 してください。ExOnOff各 チャンネルの 電 流 出 力 方 向 を 指 定 します。Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0予 約 EXOVEN OVENEXOVEN 過 電 圧 検 出 機 能 の 有 効 / 無 効0: 有 効1: 無 効OVEN 外 部 電 源 の 過 電 圧 検 出 機 能 の 有 効 / 無 効0: 有 効© 2000, 2013 Interface Corporation. All rights reserved.- 117 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows1: 無 効【 戻 り 値 】DaSetExcessVoltage 関 数 は 処 理 が 正 常 終 了 すると DA_ERROR_SUCCESS を 返 します。正 常 に 処 理 が 終 了 しなかった 場 合 DA_ERROR_SUCCESS 以 外 の 値 を 返 します。DA_ERROR_SUCCESS 以 外 の 値 が 返 された 場 合 については『3.7 戻 り 値 一 覧 』を 参 照 してください。【 使 用 例 】●Visual C# .NET(x86、x64 共 用 )nRet = IFCDA_ANY.DaSetExcessVoltage ( hDeviceHandle, 2 );●Visual Basic .NET(x86、x64 共 用 )nRet = IFCDA_ANY.DaSetExcessVoltage ( hDeviceHandle, 2)デバイスハンドル hDeviceHandle のアナログ 出 力 デバイスに 対 して、 過 電 圧 検 出 を 無 効 します。© 2000, 2013 Interface Corporation. All rights reserved.- 118 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows39. DaGetRelayStatus【 機 能 】出 力 リレーの 設 定 状 態 を 取 得 します。【 書 式 】●Visual C# .NET(x86、x64 共 用 )[DllImport("FbiDa.dll")]public static extern int DaGetRelayStatus (IntPtr hDeviceHandle,out uint Status);●Visual C# .NET(x86 用 )[DllImport("FbiDa.dll")]public static extern int DaGetRelayStatus (uint hDeviceHandle,out uint Status);●Visual Basic .NET(x86、x64 共 用 )Declare Function DaGetRelayStatus Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByRef Status As Integer)As Integer●Visual Basic .NET(x86 用 )Declare Function DaGetRelayStatus Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByRef Status As Integer)As Integer【パラメータ】hDeviceHandleDaOpen 関 数 で 取 得 したデバイスハンドルを 指 定 してください。Statusリレーの 設 定 状 態 取 得 用 変 数 へのポインタです。Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0CH8 CH7 CH6 CH5 CH4 CH3 CH2 CH1CH1 CH1 のリレーの 設 定0:OFF1:ONCH2 CH2 のリレーの 設 定0:OFF© 2000, 2013 Interface Corporation. All rights reserved.- 119 -


<strong>GPC</strong>-<strong>3300</strong> Help for WindowsCH3CH4CH5CH6CH7CH81:ONCH3 のリレーの 設 定0:OFF1:ONCH4 のリレーの 設 定0:OFF1:ONCH5 のリレーの 設 定0:OFF1:ONCH6 のリレーの 設 定0:OFF1:ONCH7 のリレーの 設 定0:OFF1:ONCH8 のリレーの 設 定0:OFF1:ON【 戻 り 値 】DaGetRelayStatus 関 数 は 処 理 が 正 常 終 了 するとDA_ERROR_SUCCESSを 返 します。 正 常 に 処 理 が 終了 しなかった 場 合 DA_ERROR_SUCCESS 以 外 の 値 を 返 します。DA_ERROR_SUCCESS 以 外 の 値 が 返 された 場 合 については『3.7 戻 り 値 一 覧 』を 参 照 してください。【 使 用 例 】●Visual C# .NET(x86、x64 共 用 )uint Status;nRet = IFCDA_ANY.DaGetRelayStatus( hDeviceHandle, out Status);●Visual Basic .NET(x86、x64 共 用 )Dim Status As IntegernRet = IFCDA_ANY.DaGetRelayStatus( hDeviceHandle, Status)デバイスハンドル hDeviceHandle のアナログ 出 力 デバイスの 出 力 リレーの 設 定 状 態 を 取 得 します。© 2000, 2013 Interface Corporation. All rights reserved.- 120 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows40. DaGetOVStatus【 機 能 】過 電 圧 検 出 信 号 の 状 態 を 取 得 します。【 書 式 】●Visual C# .NET(x86、x64 共 用 )[DllImport("FbiDa.dll")]public static extern int DaGetOVStatus (IntPtr hDeviceHandle,out uint LowStatus,out uint HighStatus);●Visual C# .NET(x86 用 )[DllImport("FbiDa.dll")]public static extern int DaGetOVStatus (uint hDeviceHandle,out uint LowStatus,out uint HighStatus);●Visual Basic .NET(x86、x64 共 用 )Declare Function DaGetOVStatus Lib "FbiDa.DLL"(ByVal hDeviceHandle As IntPtr,ByRef LowStatus As Integer,ByRef HighStatus As Integer)As Integer●Visual Basic .NET(x86 用 )Declare Function DaGetOVStatus Lib "FbiDa.DLL"(ByVal hDeviceHandle As Integer,ByRef LowStatus As Integer,ByRef HighStatus As Integer)As Integer【パラメータ】hDeviceHandleDaOpen 関 数 で 取 得 したデバイスハンドルを 指 定 してください。LowStatus過 電 圧 検 出 信 号 (-)の 状 態 取 得 用 変 数 へのポインタです。Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0CH8 CH7 CH6 CH5 CH4 CH3 CH2 CH1CH1CH1 の 過 電 圧 検 出© 2000, 2013 Interface Corporation. All rights reserved.- 121 -


<strong>GPC</strong>-<strong>3300</strong> Help for WindowsCH2CH3CH4CH5CH6CH7CH80: 過 電 圧 (-) 未 検 出1: 過 電 圧 (-) 検 出CH2 の 過 電 圧 検 出0: 過 電 圧 (-) 未 検 出1: 過 電 圧 (-) 検 出CH3 の 過 電 圧 検 出0: 過 電 圧 (-) 未 検 出1: 過 電 圧 (-) 検 出CH4 の 過 電 圧 検 出0: 過 電 圧 (-) 未 検 出1: 過 電 圧 (-) 検 出CH5 の 過 電 圧 検 出0: 過 電 圧 (-) 未 検 出1: 過 電 圧 (-) 検 出CH6 の 過 電 圧 検 出0: 過 電 圧 (-) 未 検 出1: 過 電 圧 (-) 検 出CH7 の 過 電 圧 検 出0: 過 電 圧 (-) 未 検 出1: 過 電 圧 (-) 検 出CH8 の 過 電 圧 検 出0: 過 電 圧 (-) 未 検 出1: 過 電 圧 (-) 検 出HighStatus過 電 圧 検 出 信 号 (+)の 状 態 取 得 用 変 数 へのポインタです。Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0CH8 CH7 CH6 CH5 CH4 CH3 CH2 CH1CH1CH2CH3CH4CH5CH6CH1 の 過 電 圧 検 出0: 過 電 圧 (+) 未 検 出1: 過 電 圧 (+) 検 出CH2 の 過 電 圧 検 出0: 過 電 圧 (+) 未 検 出1: 過 電 圧 (+) 検 出CH3 の 過 電 圧 検 出0: 過 電 圧 (+) 未 検 出1: 過 電 圧 (+) 検 出CH4 の 過 電 圧 検 出0: 過 電 圧 (+) 未 検 出1: 過 電 圧 (+) 検 出CH5 の 過 電 圧 検 出0: 過 電 圧 (+) 未 検 出1: 過 電 圧 (+) 検 出CH6 の 過 電 圧 検 出0: 過 電 圧 (+) 未 検 出© 2000, 2013 Interface Corporation. All rights reserved.- 122 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows1: 過 電 圧 (+) 検 出CH7 CH7 の 過 電 圧 検 出0: 過 電 圧 (+) 未 検 出1: 過 電 圧 (+) 検 出CH8 CH8 の 過 電 圧 検 出0: 過 電 圧 (+) 未 検 出1: 過 電 圧 (+) 検 出過 電 圧 検 出 信 号 の 状 態 は 現 在 の 状 態 を 取 得 します( 値 をラッチしません)。DA 出 力 端 子 の 過 電 圧 状 態 が 検 出 されている 間 だけ 1 になります。【 戻 り 値 】DaGetOVStatus 関 数 は 処 理 が 正 常 終 了 するとDA_ERROR_SUCCESSを 返 します。 正 常 に 処 理 が 終 了しなかった 場 合 DA_ERROR_SUCCESS 以 外 の 値 を 返 します。DA_ERROR_SUCCESS 以 外 の 値 が 返 された場 合 については『3.7 戻 り 値 一 覧 』を 参 照 してください。【 使 用 例 】●Visual C# .NET(x86、x64 共 用 )uint LowStatus;uint HighStatus;nRet = IFCDA_ANY.DaGetOVStatus ( hDeviceHandle, out LowStatus, out HighStatus);●Visual Basic .NET(x86、x64 共 用 )Dim Status As IntegerDim HighStatus As IntegernRet = IFCDA_ANY.DaGetOVStatus ( hDeviceHandle, LowStatus, HighStatus)デバイスハンドル hDeviceHandle のアナログ 出 力 デバイスの 過 電 圧 検 出 信 号 の 状 態 を 取 得 します。© 2000, 2013 Interface Corporation. All rights reserved.- 123 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows3.6. 構 造 体 定 義●DASMPLREQ 構 造 体アナログ 出 力 更 新 条 件 設 定 関 数 (DaSetSamplingConfig 関 数 )、データ 変 換 関 数 (DaDataConv 関数 )で 指 定 するアナログ 出 力 更 新 の 条 件 を 設 定 する 構 造 体 です。・Visual C# .NET[StructLayout(LayoutKind.Sequential)]public struct DASMPLREQ{public uint ulChCount;[MarshalAs(UnmanagedType.ByValArray, SizeConst=512)]public uint[] ulChNoRange;public uint ulSamplingMode;public float fSmplFreq;public uint ulSmplRepeat;public uint ulTrigMode;public uint ulTrigPoint;public uint ulTrigDelay;public uint ulEClkEdge;public uint ulTrigEdge;public uint ulTrigDI;public void InitializeArray(){ulChNoRange = new uint [512];}public void SetChNo(uint ulIndex , uint ulNumber){ulChNoRange[ulIndex * 2] = ulNumber;}public uint GetChNo(uint ulIndex){return(ulChNoRange[ulIndex * 2]);}public void SetChRange(uint ulIndex, uint ulRange){ulChNoRange[(ulIndex * 2) + 1] = ulRange;}public uint GetChRange(uint ulIndex){return(ulChNoRange[(ulIndex * 2) + 1]);}}© 2000, 2013 Interface Corporation. All rights reserved.- 124 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows・Visual Basic .NET _Structure DASMPLREQDim ulChCount As Integer _Dim ulChNoRange() As IntegerDim ulSamplingMode As IntegerDim fSmplFreq As SingleDim ulSmplRepeat As IntegerDim ulTrigMode As IntegerDim ulTrigPoint As IntegerDim ulTrigDelay As IntegerDim ulEClkEdge As IntegerDim ulTrigEdge As IntegerDim ulTrigDI As IntegerPublic Sub New(ByVal Dummy As Integer)ReDim ulChNoRange(511)End SubPublic Sub SetChNo(ByVal ulIndex As Integer, ByVal ulNumber As Integer)ulChNoRange(ulIndex * 2) = ulNumberEnd SubPublic Function GetChNo(ByVal ulIndex As Integer)GetChNo = ulChNoRange(ulIndex * 2)End FunctionPublic Sub SetChRange(ByVal ulIndex As Integer, ByVal ulRange As Integer)ulChNoRange((ulIndex * 2) + 1) = ulRangeEnd SubPublic Function GetChRange(ByVal ulIndex As Integer)GetChRange = ulChNoRange((ulIndex * 2) + 1)End FunctionEnd Structure© 2000, 2013 Interface Corporation. All rights reserved.- 125 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows・Delphi 8 for the Microsoft .NET Frameworktype[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Auto)]DASMPLREQ = recordulChCount : Cardinal;[MarshalAs(UnmanagedType.ByValArray, SizeConst = 512)]ulChNoRange : array of Integer;ulSamplingMode : Cardinal;fSmplFreq : Single;ulSmplRepeat : Cardinal;ulTrigMode : Cardinal;ulTrigPoint : Cardinal;ulTrigDelay : Cardinal;ulEClkEdge : Cardinal;ulTrigEdge : Cardinal;ulTrigDI : Cardinal;public constructor Create(var ulChNoRange : array of Integer);public procedure SetChNo( ulIndex: Integer; ulNumber: Integer);public function GetChNo( ulIndex: Integer): Integer;public procedure SetChRange( ulIndex: Integer; ulRange: Integer);public function GetChRange( ulIndex: Integer): Integer;end;メンバulChCountulChNoRange説 明アナログ 出 力 を 行 うチャンネル 数 を 1~その 製 品 の 提 供 する 最 大 チャンネル 数 の 範 囲 で 指 定 します。どのチャンネルを 使 用 するかは SetChNo で指 定 します。デフォルト:1各 チャンネル 毎 のアナログ 出 力 条 件 を 設 定 です。この 変 数 にアクセスするには 以 下 のメソッドを 利 用 します。メソッド内 容SetChNo出 力 チャンネルを 設 定 しますGetChNo出 力 チャンネル 設 定 を 取 得 しますSetChRange出 力 チャンネルのレンジを 設 定 しますGetChRange出 力 チャンネルのレンジを 設 定 を 取 得 します例 ) 出 力 チャンネル 1,2 をそれぞれ±5V、±10V レンジに 設 定DASMPLREQ config:config.SetChNo(0, 1)config.SetChNo(1, 2)config.SetChRange(0, AD_5V)config.SetChRange(1, AD_10V)© 2000, 2013 Interface Corporation. All rights reserved.- 126 -


<strong>GPC</strong>-<strong>3300</strong> Help for WindowsulSamplingModefSmplFrequlSmplRepeatulTrigModeulTrigPointulTrigDelayデータ 転 送 方 式 を 指 定 します。ulSamplingMode は 以 下 のデータ 転 送 方 式 識 別 子 を 指 定 します。使 用 する 製 品 により 設 定 できるデータ 転 送 方 式 が 異 なります。識 別 子 値 意 味DA_IO_SAMPLING 1 I/O 方 式DA _FIFO_SAMPLING 2 FIFO 方 式DA _MEM_SAMPLING 4 メモリ 方 式アナログ 出 力 更 新 レートを 0.01f 以 上 で、Hz を 単 位 として 設 定 します。外 部 クロックを 使 用 する 場 合 は、0.0f を 指 定 してください。デフォルト: 使 用 する 製 品 により 異 なります。デフォルト 値 はデバイスオープン 直 後 に DaGetSamplingConfig 関 数 を 実 行 することにより 取 得 できます。アナログ 出 力 更 新 動 作 の 繰 り 返 し 回 数 を 1~65535 の 範 囲 で 指 定 します。アナログ 出 力 更 新 を ulSmplRepeat で 指 定 した 回 数 だけ 繰 り 返 します。0 を 指 定 すると DaStopSampling 関 数 が 実 行 されるまでアナログ 出 力 更 新動 作 を 停 止 しません。デフォルト:1トリガを 指 定 します。ulTrigMode は、トリガ 指 定 識 別 子 のいずれか 1 つを 指 定 します。識 別 子 値 意 味DA_FREERUN 1 トリガなし(デフォルト)DA_EXTTRG 2 外 部 トリガDA_EXTTRG_DI 3 DI マスク 付 き 外 部 トリガトリガポイントを 指 定 します。ulTrigPoint は、トリガポイント 指 定 識 別 子 のいずれか 1 つを 指 定 します。識 別 子 値 意 味DA_TRIG_START 1 スタートトリガ(デフォルト)DA _TRIG_STOP 2 ストップトリガDA _TRIG_START_STOP 3 スタートストップトリガトリガディレイをアナログ 出 力 データ 数 を 単 位 として 指 定 します。ulTrigMode でトリガが 設 定 されている 場 合 に 有 効 です。ulTrigPoint で、DA_TRIG_START_STOP が 設 定 されている 場 合 には、トリガディレイを 指 定 することはできません。ulTrigDelay に 設 定 する 値 は 次 のようになります。ポストトリガディレイ 1 ~ 1G (1073741824)・ディレイを 使 用 しない 時 0デフォルト:0© 2000, 2013 Interface Corporation. All rights reserved.- 127 -


<strong>GPC</strong>-<strong>3300</strong> Help for WindowsulEClkEdgeulTrigEdgeulTrigDI外 部 クロック 入 力 のエッジ 極 性 を 極 性 指 定 識 別 子 のうちいずれか 1 つを指 定 します。fSmplFreq に 0.0f( 外 部 クロック)が 指 定 されている 場 合 に 有 効 です。外 部 クロック 極 性 指 定 識 別 子 は 以 下 の 通 りです。識 別 子 値 意 味AD_DOWN_EDGE 1 立 ち 下 がりエッジ(デフォルト)AD_UP_EDGE 2 立 ち 上 がりエッジ外 部 トリガのエッジ 極 性 を 極 性 指 定 識 別 子 のうちいずれか 1 つを 指 定 します。ulTrigMode に 外 部 トリガまたは DI マスク 付 き 外 部 トリガが 指 定 されている 場 合 に 有 効 です。外 部 トリガ 極 性 指 定 識 別 子 は 以 下 の 通 りです。識 別 子 値 意 味DA_DOWN_EDGE 1 立 ち 下 がりエッジ(デフォルト)DA_UP_EDGE 2 立 ち 上 がりエッジ汎 用 デジタル 入 力 端 子 による 外 部 トリガのマスクを 指 定 します。ulTrigDI の 16bit のうちいずれか 1bit を 1 にセットします。1 にセットされている bit に 対 応 した 汎 用 デジタル 入 力 端 子 の 状 態 が Low レベルになっている 間 、 外 部 トリガ 入 力 が 有 効 となります。1 をセットする bit の 位 置 は、 使 用 する 製 品 が 持 っている 汎 用 デジタル 入 力端 子 の 数 に 注 意 してください。ulTrigMode に DI マスク 付 き 外 部 トリガが 指 定 されている 場 合 に 有 効 です。ulTrigDI の 形 式 は、デジタル 入 力 データの 形 式 と 同 じ 形 式 です。(4.2 データ 形 式 参 照 )デフォルト:0© 2000, 2013 Interface Corporation. All rights reserved.- 128 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows●DASMPLCHREQ 構 造 体各 チャンネル 毎 のアナログ 出 力 条 件 を 設 定 する 構 造 体 です。DASMPLREQ 構 造 体 のメンバ、DaOutputDA 関 数 で 使 用 されます。・Visual C# .NET[StructLayout(LayoutKind.Sequential)]public struct DASMPLCHREQ{public uint ulChNo;public uint ulRange;}・Visual Basic .NET _Structure DASMPLCHREQDim ulChNo As IntegerDim ulRange As IntegerEnd Structure・Delphi 8 for the Microsoft .NET Frameworktype[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Auto)]DASMPLCHREQ = recordulChNo : Cardinal;ulRange : Cardinal;end;メンバulChNoulRange説 明アナログ 出 力 を 行 うチャンネルの 番 号 を 指 定 します。指 定 の 範 囲 は 以 下 の 通 りです。・ 1 ~ その 製 品 の 提 供 する 最 大 チャンネル 数ulChNo で 指 定 したチャンネルのレンジを 指 定 します。レンジの 指 定 は、レンジ 識 別 子 のうちいずれか 1 つを 指 定 します。識 別 子 値 意 味DA_0_1V 0x00000001 電 圧 ユニポーラ 0~1VDA_0_2P5V 0x00000002 電 圧 ユニポーラ 0~2.5VDA_0_5V 0x00000004 電 圧 ユニポーラ 0~5VDA_0_10V 0x00000008 電 圧 ユニポーラ 0~10VDA_1_5V 0x00000010 電 圧 ユニポーラ 1~5VDA_0_20mA 0x00001000 電 流 ユニポーラ 0~20mA© 2000, 2013 Interface Corporation. All rights reserved.- 129 -


<strong>GPC</strong>-<strong>3300</strong> Help for WindowsDA_4_20mA 0x00002000 電 流 ユニポーラ 4~20mADA_1V 0x00010000 電 圧 バイポーラ ±1VDA_2P5V 0x00020000 電 圧 バイポーラ ±2.5VDA_5V 0x00040000 電 圧 バイポーラ ±5VDA_10V 0x00080000 電 圧 バイポーラ ±10VDA_20mA 0x01000000 電 流 バイポーラ ±20mA© 2000, 2013 Interface Corporation. All rights reserved.- 130 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows●DABOARDSPEC 構 造 体製 品 の 仕 様 を 格 納 する 構 造 体 です。AdGetDeviceInfo 関 数 で 使 用 されます。・Visual C# .NET[StructLayout(LayoutKind.Sequential)]public struct DABOARDSPEC{public uint ulBoardType;public uint ulBoardID;public uint ulSamplingMode;public uint ulChCount;public uint ulResolution;public uint ulRange;public uint ulIsolation;public uint ulDi;public uint ulDo;} [StructLayout(LayoutKind.Sequential)]・Visual Basic .NET _Structure DABOARDSPECDim ulBoardType As IntegerDim ulBoardID As IntegerDim ulSamplingMode As IntegerDim ulChCount As IntegerDim ulResolution As IntegerDim ulRange As IntegerDim ulIsolation As IntegerDim ulDi As IntegerDim ulDo As IntegerEnd Structure・Delphi 8 for the Microsoft .NET Frameworktype[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Auto)]DABOARDSPEC = recordulBoardType : Cardinal;ulBoardID : Cardinal;ulSamplingMode : Cardinal;ulChCount : Cardinal;ulResolution : Cardinal;ulRange : Cardinal;ulIsolation : Cardinal;© 2000, 2013 Interface Corporation. All rights reserved.- 131 -


<strong>GPC</strong>-<strong>3300</strong> Help for WindowsulDi : Cardinal;ulDo : Cardinal;end;メンバ説 明ulBoardType デバイスの 型 式 番 号 を 格 納 します。例 :・PCI-3329 であれば、3329 が 格 納 されます。・CTP-3346 であれば、3346 が 格 納 されます。ulBoardIDulSamplingModeulChCountulResolutionulRangeデバイスの 識 別 番 号 (RSW1 の 値 )を 格 納 します。デバイスが 対 応 しているデータ 転 送 方 式 を 表 します。 下 記 のように 対 応 するビットが 1 になります。bit0 I/O 方 式bit1 FIFO 方 式bit2 メモリ 方 式bit3 ~ 予 約 ( 全 て 0)bit31・0: 未 サポート、1:サポートデバイスのチャンネル 数 を 格 納 します。デバイスの 分 解 能 を 格 納 します。・12bit DA デバイスの 場 合 :12 が 格 納 されます。デバイスが 対 応 しているレンジをビットマップで 格 納 します。ulIsolationbit0電 圧 ユニポーラ 0~1Vbit1電 圧 ユニポーラ 0~2.5Vbit2電 圧 ユニポーラ 0~5Vbit3電 圧 ユニポーラ 0~10Vbit4電 圧 ユニポーラ 1~5Vbit5~bit11 予 約 ( 全 て 0)bit12電 流 ユニポーラ 0~20mAbit13電 流 ユニポーラ 4~20mAbit14~bit15 予 約 ( 全 て 0)bit16 電 圧 バイポーラ ±1Vbit17電 圧 バイポーラ±2.5Vbit18 電 圧 バイポーラ ±5Vbit19 電 圧 バイポーラ ±10Vbit20~bit31 予 約 ( 全 て 0)・0: 未 サポート、1:サポートデバイスの 絶 縁 / 非 絶 縁 を 以 下 の 識 別 子 で 格 納 します。識 別 子 値 内 容DA_ISOLATION 1 絶 縁DA_NOT_ISOLATION 2 非 絶 縁© 2000, 2013 Interface Corporation. All rights reserved.- 132 -


<strong>GPC</strong>-<strong>3300</strong> Help for WindowsulDiulDoデバイスのデジタル 入 力 点 数 を 格 納 します。デバイスのデジタル 出 力 点 数 を 格 納 します。●DAMODEREQ 構 造 体製 品 固 有 のモード 設 定 / 取 得 関 数 (DaSetMode 関 数 、DaGetMode 関 数 )で 指 定 するアナログ 出 力更 新 条 件 を 設 定 する 構 造 体 です。・Visual C# .NET[StructLayout(LayoutKind.Sequential)]public struct DAMODEREQ{public uint ulRange1; //DAMODECHREQ.ulRangepublic float fVolt1; //DAMODECHREQ.fVoltpublic uint ulFilter1; //DAMODECHREQ.ulFilterpublic uint ulRange2; //DAMODECHREQ.ulRangepublic float fVolt2; //DAMODECHREQ.fVoltpublic uint ulFilter2; //DAMODECHREQ.ulFilterpublic uint ulPulseMode;public uint ulSyntheOut;public uint ulInterval;public float fIntervalCycle;public uint ulCounterClear;public uint ulDaLatch;public uint ulSamplingClock;public uint ulExControl;public uint ulExClock;}・Visual Basic .NET _Structure DAMODEREQDim ulRange1 As IntegerDim fVolt1 As SingleDim ulFilter1 As IntegerDim ulRange2 As IntegerDim fVolt2 As SingleDim ulFilter2 As IntegerDim ulPulseMode As IntegerDim ulSyntheOut As IntegerDim ulInterval As IntegerDim fIntervalCycle As SingleDim ulCounterClear As IntegerDim ulDaLatch As Integer© 2000, 2013 Interface Corporation. All rights reserved.- 133 -


<strong>GPC</strong>-<strong>3300</strong> Help for WindowsDim ulSamplingClock As IntegerDim ulExControl As IntegerDim ulExClock As IntegerEnd Structure© 2000, 2013 Interface Corporation. All rights reserved.- 134 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows・Delphi 8 for the Microsoft .NET Frameworktype[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Auto)]DAMODEREQ = recordulRange1 : Cardinal;fVolt1 : Single;ulFilter1 : Cardinal;ulRange2 : Cardinal;fVolt2 : Single;ulFilter2 : Cardinal;ulPulseMode : Cardinal;ulSyntheOut : Cardinal;ulInterval : Cardinal;fIntervalCycle : Single;ulCounterClear : Cardinal;ulDaLatch : Cardinal;ulSamplingClock : Cardinal;ulExControl : Cardinal;ulExClock : Cardinal;end;メンバ説 明ModeChReq 各 チャンネル 毎 のアナログ 出 力 条 件 を 設 定 します。(DAMODECHREQ 構 造 体 )[0]がチャンネル 1、[1]がチャンネル 2 に 対 応 します。常 に 2 チャンネル 分 の 条 件 を 設 定 する 必 要 があります。ulSyntheOutulPulseMode出 力 波 形 のモードを 指 定 します。ulPulseMode は 以 下 の 識 別 子 を 指 定 します。識 別 子 値 内 容DA_MODE_CUT 1 TBWG(Time Based Wave Generation)モード(デフォルト)DA_MODE_SYNTHE 2 FBWG(Frequency Based Wave Generation)モードFBWG モードにおける 出 力 間 隔 を 指 定 します。2 のべき 乗 (1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096,8192, 16384, 32768, 65536, 131072, 262144, 524288)で 指 定 します。デフォルト:1ulInterval繰 り 返 し 時 のインターバルを 指 定 します。ulInterval は 以 下 の 識 別 子 を 指 定 します。識 別 子 値 内 容© 2000, 2013 Interface Corporation. All rights reserved.- 135 -


<strong>GPC</strong>-<strong>3300</strong> Help for WindowsDA_REPEAT_NONINTERVAL 1 インターバルなしでリピート(デフォルト)DA_REPEAT_INTERVAL 2 インターバルありでリピートfIntervalCycleulCounterClearulDaLatchulSamplingClockulExControlインターバル 指 定 時 の 周 期 を 指 定 します。0.01f~2500000f(2.5MHz)の 範 囲 で、Hz を 単 位 として 設 定 します。デフォルト:1.0f(1Hz)アナログ 出 力 更 新 スタート 時 に、アナログ 出 力 カウンタをクリアするかしないかを 指 定 します。識 別 子 値 内 容DA_COUNTER_CLEAR 1 カウンタをクリアする(デフォルト)DA_COUNTER_NONCLEAR 2 カウンタをクリアしないDA ラッチ(アナログ 出 力 更 新 終 了 時 点 の 電 圧 をクリアするかしないか)を指 定 します。識 別 子 値 内 容DA_LATCH_CLEAR 1 DA ラッチをクリアする(デフォルト)DA_LATCH_NONCLEAR 2 DA ラッチをクリアしない内 部 のアナログ 出 力 更 新 レートを 選 択 します。内 部 タイマ(8254 相 当 )を 使 用 すると、 最 大 2.5MHz までのクロックでアナログ 出 力 更 新 を 行 うことができます。また、5MHz 固 定 の 内 部 タイマを 使 用することもできます。この 場 合 、クロックは 変 えられません。識 別 子 値 内 容DA_CLOCK_TIMER 1 タイマ(8254)2.5MHz を 使 用(デフォルト)DA_CLOCK_FIXED 2 5MHz 固 定 タイマを 使 用PCI-3305 の 場 合外 部 入 出 力 制 御 (CN3 の 入 出 力 仕 様 )を 選 択 します。識 別 子 値 内 容DA_EXTRG_IN 1 外 部 トリガ 入 力 (デフォルト)DA_EXTRG_OUT 2 外 部 トリガ 出 力PCI-3335, PCI-3337(PCI-3335, PCI-3337 は 13 版 以 降 )の 場 合EXTRG OUT 端 子 からのトリガ 出 力 状 態 を 選 択 します。識 別 子 値 内 容DA_EXTRG_IN 1 外 部 トリガ 出 力 停 止DA_EXTRG_OUT 2 外 部 トリガ 出 力 (デフォルト)© 2000, 2013 Interface Corporation. All rights reserved.- 136 -


<strong>GPC</strong>-<strong>3300</strong> Help for WindowsPCI-3335, PCI-3337 の 場 合EXTRG OUT 端 子 からのトリガ 出 力 の 極 性 を 選 択 します。この 設 定 は 外 部 トリガ 出 力 状 態 と OR で 指 定 します。識 別 子 値 内 容DA_EXTRG_DOWN_EDGE 0x10 立 ち 下 がりエッジでトリガする(デフォルト)DA_EXTRG_UP_EDGE 0x20 立 ち 上 がりエッジでトリガするPCI-3310, PCI-3335, PCI-3336, PCI-3337, PCI-3340CTP/CPZ-3340A, CTP/CPZ-3340B, CTP/CPZ-3340C, CTP/CPZ-3340DLPC-340216, LPC-340416, LPC-361316, LPC-361416PEX-340216, PEX -340416, PEX -361316, PEX -361416CSI-340212,CBI-340212, CBI-340212TR, CBI-340212TK, CBI-340212TL,CSI-340312,CBI-340312, 3 CBI-40312TR, CBI-340312TK, CBI-340312TLの 場 合外 部 リセット 入 力 の 極 性 を 選 択 します。PCI-3335, 3337 の 場 合 は、 外 部 トリガ 出 力 状 態 と 外 部 トリガ 出 力 極 性 と ORで 指 定 します識 別 子 値 内 容DA_RESET_DOWN_EDGE 0x04 立 ち 下 がりエッジでトリガする(デフォルト)DA_RESET_UP_EDGE 0x08 立 ち 上 がりエッジでトリガするulExClockPCI-3305 の 場 合外 部 クロック 入 出 力 (CN4 の 入 出 力 仕 様 )を 選 択 します。識 別 子 値 内 容DA_EXCLK_IN 1 外 部 クロック 入 力 (デフォルト)DA_EXCLK_OUT 2 外 部 クロック 出 力PCI-3310, PCI-3335, PCI-3336, PCI-3337, PCI-3340(PCI-3310, PCI-3336 は 12 版 以 降 、PCI-3335, PCI-3337 は 13 版 以 降 )CTP/CPZ-3340A, CTP/CPZ-3340B, CTP/CPZ-3340C, CTP/CPZ-3340DLPC-340216, LPC-340416, LPC-361316, LPC-361416PEX-340216, PEX -340416, PEX -361316, PEX -361416CSI-340212,CBI-340212, CBI-340212TR, CBI-340212TK, CBI-340212TL,CSI-340312,CBI-340312, CBI-340312TR, CBI-340312TK, CBI-340312TL の 場 合EXCLK OUT 端 子 からのクロック 出 力 状 態 を 選 択 します。識 別 子 値 内 容DA_EXCLK_IN 1 外 部 クロック 出 力 停 止DA_EXCLK_OUT 2 外 部 クロック 出 力 (デフォルト)© 2000, 2013 Interface Corporation. All rights reserved.- 137 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows© 2000, 2013 Interface Corporation. All rights reserved.- 138 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows●DAMODECHREQ 構 造 体各 チャンネル 毎 のアナログ 出 力 モードを 設 定 する 構 造 体 です。DAMODEREQ 構 造 体 のメンバ、DaSetMode 関 数 で 使 用 されます。・Visual C# .NET[StructLayout(LayoutKind.Sequential)]public struct DAMODECHREQ{public uint ulRange;public float fVolt;public uint ulFilter;}・Visual Basic .NET _Structure DAMODECHREQDim ulRange As IntegerDim fVolt As SingleDim ulFilter As IntegerEnd Structure・Delphi 8 for the Microsoft .NET Frameworktype[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Auto)]DAMODECHREQ = recordulRange : Cardinal;fVolt : Single;ulFilter : Cardinal;end;メンバulRangefVolt説 明レンジを 選 択 します。識 別 子 値 内 容DA_RANGE_UNIPOLAR 1 ユニポーラ(デフォルト)DA_RANGE_BIPOLAR 2 バイポーラulRange で 指 定 したレンジの 出 力 電 圧 最 高 値 を 指 定 します。1.024~10.0[V]の 範 囲 で 0.0025[V]おきに 指 定 できます。※ 小 数 点 以 下 4 桁 が 有 効デフォルト:5.0[V](ユニポーラ 設 定 の 場 合 には 0~5[V]、バイポーラ 設 定 の 場 合 には±5[V]となります)© 2000, 2013 Interface Corporation. All rights reserved.- 139 -


<strong>GPC</strong>-<strong>3300</strong> Help for WindowsulFilter出 力 波 形 のグリッジを 減 少 するためのローパスフィルタを 設 定 します。識 別 子 値 内 容DA_FILTER_ON 1 フィルタ 使 用DA_FILTER_OFF 2 フィルタ 未 使 用 (デフォルト)© 2000, 2013 Interface Corporation. All rights reserved.- 140 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows●DAFIFOREQ 構 造 体FIFO 方 式 アナログ 出 力 更 新 条 件 設 定 関 数 (DaSetFifoConfig 関 数 )で 指 定 するアナログ 出 力 更新 の 条 件 を 設 定 する 構 造 体 です。・Visual C# .NET[StructLayout(LayoutKind.Sequential)]public struct DAFIFOREQ{public uint ulChCount;[MarshalAs(UnmanagedType.ByValArray, SizeConst=512)]public uint[] ulChNoRange;public float fSmplFreq;public uint ulSmplRepeat;public uint ulSmplNum;public uint ulStartTrigCondition;public uint ulStopTrigCondition;public uint ulEClkEdge;public uint ulTrigEdge;public void InitializeArray(){ulChNoRange = new uint [512];}public void SetChNo(uint ulIndex , uint ulNumber){ulChNoRange[ulIndex * 2] = ulNumber;}public uint GetChNo(uint ulIndex){return(ulChNoRange[ulIndex * 2]);}public void SetChRange(uint ulIndex, uint ulRange){ulChNoRange[(ulIndex * 2) + 1] = ulRange;}public uint GetChRange(uint ulIndex){return(ulChNoRange[(ulIndex * 2) + 1]);}}© 2000, 2013 Interface Corporation. All rights reserved.- 141 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows・Visual Basic .NET _Structure DAFIFOREQDim ulChCount As Integer _Dim ulChNoRange() As IntegerDim fSmplFreq As SingleDim ulSmplRepeat As IntegerDim ulSmplNum As IntegerDim ulStartTrigCondition As IntegerDim ulStopTrigCondition As IntegerDim ulEClkEdge As IntegerDim ulTrigEdge As IntegerPublic Sub New(ByVal Dummy As Integer)ReDim ulChNoRange(511)End SubPublic Sub SetChNo(ByVal ulIndex As Integer, ByVal ulNumber As Integer)ulChNoRange(ulIndex * 2) = ulNumberEnd SubPublic Function GetChNo(ByVal ulIndex As Integer)GetChNo = ulChNoRange(ulIndex * 2)End FunctionPublic Sub SetChRange(ByVal ulIndex As Integer, ByVal ulRange As Integer)ulChNoRange((ulIndex * 2) + 1) = ulRangeEnd SubPublic Function GetChRange(ByVal ulIndex As Integer)GetChRange = ulChNoRange((ulIndex * 2) + 1)End FunctionEnd Structure© 2000, 2013 Interface Corporation. All rights reserved.- 142 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows・Delphi 8 for the Microsoft .NET Frameworktype[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Auto)]DAFIFOREQ = recordulChCount : Cardinal;[MarshalAs(UnmanagedType.ByValArray, SizeConst = 512)]ulChNoRange : array of Integer;fSmplFreq : Single;ulSmplRepeat : Cardinal;ulSmplNum : Cardinal;ulStartTrigCondition : Cardinal;ulStopTrigCondition : Cardinal;ulEClkEdge : Cardinal;ulTrigEdge : Cardinal;public constructor Create(var ulChNoRange : array of Integer);public procedure SetChNo( ulIndex: Integer; ulNumber: Integer);public function GetChNo( ulIndex: Integer): Integer;public procedure SetChRange( ulIndex: Integer; ulRange: Integer);public function GetChRange( ulIndex: Integer): Integer;end;うnulChCountulChNoRange()説 明アナログ 出 力 を 行 うチャンネル 数 を 1~その 製 品 の 提 供 する 最 大 チャンネル 数 の 範 囲 で 指 定 します。どのチャンネルを 使 用 するかはDASMPLCHREQ 構 造 体 の ulChNo メンバで 指 定 します。デフォルト:1各 チャンネル 毎 のアナログ 出 力 条 件 を 設 定 です。この 変 数 にアクセスするには 以 下 のメソッドを 利 用 します。メソッド内 容SetChNo出 力 チャンネルを 設 定 しますGetChNo出 力 チャンネル 設 定 を 取 得 しますSetChRange 出 力 チャンネルのレンジを 設 定 しますGetChRange 出 力 チャンネルのレンジを 設 定 を 取 得 します例 ) 出 力 チャンネル 1,2 をそれぞれ±5V、±10V レンジに 設 定DAFIFOREQ config・・config.SetChNo(0, 1)config.SetChNo(1, 2)config.SetChRange(0, AD_5V)config.SetChRange(1, AD_10V)・© 2000, 2013 Interface Corporation. All rights reserved.- 143 -


<strong>GPC</strong>-<strong>3300</strong> Help for WindowsfSmplFreqアナログ 出 力 更 新 レートを 0.01f 以 上 で、Hz を 単 位 として 設 定 します。外 部 クロックを 使 用 する 場 合 は、0.0f を 指 定 してください。PCI-341016, PCI-341116 では、 外 部 クロックは 使 用 できません。カウンタアップダウンクロックを 使 用 する 場 合 は、-1 を 指 定 してください。(※7)内 部 同 期 ラインを 使 用 する 場 合 には、 下 記 を 指 定 してください。PCI-341016, PCI-341116 でのみ 使 用 できます。内 容値内 部 同 期 トリガ 1 -1内 部 同 期 トリガ 2 -2デフォルト: 使 用 するデバイスにより 異 なります。デフォルト 値 はデバイスオープン 直 後 に DaGetSamplingConfig 関 数を 実 行 することにより 取 得 できます。ulSmplRepeatulSmplNumulStartTrigConditionアナログ 出 力 データの 繰 り 返 し 回 数 を 1~65,535 の 範 囲 で 指 定 します。0 を 指 定 すると 終 了 条 件 が 成 立 するか、DaStopSampling 関 数 が 実 行されるまでアナログ 出 力 更 新 動 作 を 停 止 しません。デフォルト:1ストップトリガ 条 件 (ulStopTrigCondition)を DA_TRG_SMPLNUM に設 定 した 場 合 のアナログ 出 力 終 了 件 数 を、1~16,777,215 の 範 囲 で指 定 します。デフォルト:1スタートトリガ 条 件 を 指 定 します。ulStartTrgCondition は、トリガ 指 定 識 別 子 のいずれか 1 つを 指 定します。PCI-341016, PCI-341116 では、DA_TRG_EXTTRG は 使 用 できません。識 別 子 値 内 容DA_TRG_FREERUN 0 トリガなし(デフォルト)DA_TRG_EXTTRG 1 外 部 トリガDA_TRG_SIGTIMER 3 インターバルタイマ以 下 のスタートトリガ 条 件 は PCI-3525, CTP/CPZ-3525 のみ 対 応 しています。(※1)(※6)識 別 子 値 内 容DA_TRG_ATRG 2 アナログトリガDA_TRG_AD_START 5 AD スタートDA_TRG_AD_STOP 6 AD ストップDA_TRG_AD_PRETRG 7 AD プリトリガDA_TRG_AD_POSTTRG 8 AD ポストトリガ© 2000, 2013 Interface Corporation. All rights reserved.- 144 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows以 下 のスタートトリガ 条 件 は 以 下 の 型 式 のみ 対 応 しています。LPC-340216,LPC-340416,LPC-361316,LPC-361416PEX-340216,PEX-340416,PEX-361316,PEX-361416識 別 子 値 内 容DA_TRG_CNT_EQ 4 カウンタ 一 致 トリガ(※7)DA_TRG_Z_CLR 5 Z 相 入 力 トリガ(※8)以 下 のスタートトリガ 条 件 は 以 下 の 型 式 のみ 対 応 しています。PCI-341016, PCI-341116識 別 子 値 内 容DA_TRG_SYNC1 14 内 部 同 期 トリガ 1DA_TRG_SYNC2 15 内 部 同 期 トリガ 2ulStopTrigConditionストップトリガ 条 件 とリトリガ 設 定 を 指 定 します。 ※1ulStopTrgCondition は、トリガ 指 定 識 別 子 のいずれか 1 つを 指 定 します。PCI-341016, PCI-341116 では、DA_TRG_EXTTRG は 使 用 できません。識 別 子 値 内 容DA_TRG_FREERUN 0 トリガなしDA_TRG_EXTTRG 1 外 部 トリガDA_TRG_SIGTIMER 3 インターバルタイマDA_TRG_SMPLNUM 9 DA 指 定 件 数 終 了DA_TRG_FIFO_EMPTY 10 FIFO エンプティ(デフォルト) ※2以 下 のストップトリガ 条 件 は PCI-3525, CTP/CPZ-3525 のみ 対 応 しています。(※1)(※6)識 別 子 値 内 容DA_TRG_ATRG 2 アナログトリガDA_TRG_AD_START 5 AD スタートDA_TRG_AD_STOP 6 AD ストップDA_TRG_AD_PRETRG 7 AD プリトリガDA_TRG_AD_POSTTRG 8 AD ポストトリガ下 記 の 識 別 子 はストップトリガ 条 件 との OR で 指 定 します。 ※5識 別 子内 容DA_RETRG 4 リトリガ ※3DA_FIFO_RESET 5 FIFO リセット ※4以 下 のストップトリガ 条 件 は 以 下 の 型 式 のみ 対 応 しています。LPC-340216,LPC-340416,LPC-361316,LPC-361416PEX-340216,PEX-340416,PEX-361316,PEX-361416識 別 子 値 内 容DA_TRG_CNT_EQ 4 カウンタ 一 致 トリガ(※7)DA_TRG_Z_CLR 5 Z 相 入 力 トリガ(※8)© 2000, 2013 Interface Corporation. All rights reserved.- 145 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows以 下 のストップトリガ 条 件 は 以 下 の 型 式 のみ 対 応 しています。PCI-341016, PCI-341116識 別 子 値 内 容DA_TRG_SYNC1 14 内 部 同 期 トリガ 1DA_TRG_SYNC2 15 内 部 同 期 トリガ 2ulEClkEdgeulTrigEdge外 部 クロック 入 力 のエッジ 極 性 を 極 性 指 定 識 別 子 のうちいずれか 1つを 指 定 します。fSmplFreq に 0.0f( 外 部 クロック)が 指 定 されている 場 合 に 有 効 です。外 部 クロック 極 性 指 定 識 別 子 は 以 下 の 通 りです。識 別 子 値 内 容DA_DOWN_EDGE 1 立 ち 下 がりエッジでトリガする(デフォルト)DA_UP_EDGE 2 立 ち 上 がりエッジでトリガする外 部 トリガのエッジ 極 性 を 極 性 指 定 識 別 子 の 中 から、スタートトリガ 使 用 時 の 極 性 とストップトリガ 使 用 時 の 極 性 をそれぞれ 選 択 して、2 つの 識 別 子 を OR で 指 定 します。 ※5ulStartTrigCondition/ulStopTrigCondition にそれぞれ 外 部 トリガ(DA_TRG_EXTTRG)が 指 定 されている 場 合 に 有 効 です。識 別 子 値 内 容DA_START_DOWN_EDGE 1 立 ち 下 がりエッジでトリガする(デフォルト)DA_START_UP_EDGE 2 立 ち 上 がりエッジでトリガする識 別 子 値 内 容DA_STOP_DOWN_EDGE 4 立 ち 下 がりエッジでトリガする(デフォルト)DA_STOP_UP_EDGE 8 立 ち 上 がりエッジでトリガする※1 スタートストップトリガ 条 件ulStartTrigCondition 及 び ulStopTrigCondition に 同 じトリガ 条 件を 指 定 した 場 合 には、 設 定 完 了 後 の 最 初 のトリガ 条 件 成 立 時 にアナログ 出 力 をスタートし、 次 のトリガ 条 件 成 立 時 に 出 力 を 停 止 します。リトリガ 設 定 (※3)を 行 っている 場 合 には、それ 以 降 のトリガ 条 件 成立 時 にはアナログ 出 力 更 新 スタートとストップを 交 互 に 繰 り 返 します。© 2000, 2013 Interface Corporation. All rights reserved.- 146 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows※2 FIFO エンプティ 終 了 条 件 を FIFO エンプティに 設 定 した 場 合 、 出 力 データがなくなった 時 点 で 出 力 更 新 を 停 止 し、 次 のデータをセットしてもアナログ 出力 を 再 開 しません。終 了 条 件 を FIFO エンプティ 以 外 に 設 定 した 場 合 、 出 力 データがなくなると、 次 のデータがセットされるまで 最 終 データを 出 力 し 続 け、次 のデータがセットされるとアナログ 出 力 を 再 開 します。また、FIFO エンプティ 終 了 とリトリガを 同 時 に 設 定 している 場 合 には、アナログ 出 力 終 了 後 に 再 度 データをセットしないと、アナログ出 力 を 再 開 できません。※3 リトリガ 終 了 条 件 成 立 後 に 再 度 開 始 条 件 が 成 立 すると、アナログ 出 力 が 再 開されます。開 始 終 了 条 件 にトリガなし(DA_TRG_FREERUN)を 指 定 した 場 合 にはリトリガを 指 定 することはできません。※4 FIFO リセット DA_FIFO_RESET を 指 定 した 場 合 には、 停 止 後 にアナログ 出 力 を 再 開する 際 に、 再 びデータの 先 頭 からアナログ 出 力 を 開 始 します。FIFO リセットを 指 定 していない 場 合 には、 停 止 後 にアナログ 出 力 を再 開 すると、 前 回 のデータの 続 きからアナログ 出 力 を 開 始 します。※5 複 数 識 別 子 の 指 定 ulStopTrigCondition と ulTrigEdge は 複 数 の 識 別 子 を 下 記 の 設 定 例の 様 に OR で 指 定 します。( 設 定 例 )DAFIFOREQ FifoConfig;FifoConfig.ulStopTrigCondition= DA_TRG_SIGTIMER | DA_RETRG | DA_FIFO_RESET;FifoConfig.ulTrigEdge= DA_START_DOWN_EDGE | DA_STOP_UP_EDGE;※1 スタートストップトリガ 条 件ulStartTrigCondition 及 び ulStopTrigCondition に 同 じトリガ 条 件 を 指 定 した 場 合 には、 設 定完 了 後 の 最 初 のトリガ 条 件 成 立 時 にアナログ 出 力 をスタートし、 次 のトリガ 条 件 成 立 時 に 出 力 を停 止 します。リトリガ 設 定 (※3)を 行 っている 場 合 には、それ 以 降 のトリガ 条 件 成 立 時 には、アナログ 出 力 更 新 スタートとストップを 交 互 に 繰 り 返 します。※2 FIFO エンプティ終 了 条 件 を FIFO エンプティに 設 定 した 場 合 、 出 力 データがなくなった 時 点 で 出 力 更 新 を 停 止 し、次 のデータをセットしてもアナログ 出 力 を 再 開 しません。終 了 条 件 を FIFO エンプティ 以 外 に 設 定 した 場 合 、 出 力 データがなくなると、 次 のデータがセットされるまで 最 終 データを 出 力 し 続 け、 次 のデータがセットされるとアナログ 出 力 を 再 開 します。また、FIFO エンプティ 終 了 とリトリガを 同 時 に 設 定 している 場 合 には、アナログ 出 力 終 了 後 に再 度 データをセットしないと、アナログ 出 力 を 再 開 できません。※3 リトリガ終 了 条 件 成 立 後 に 再 度 開 始 条 件 が 成 立 すると、アナログ 出 力 が 再 開 されます。開 始 終 了 条 件 にトリガなし(DA_TRG_FREERUN)を 指 定 した 場 合 には、リトリガを 指 定 することは© 2000, 2013 Interface Corporation. All rights reserved.- 147 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windowsできません。※4 FIFO リセットDA_FIFO_RESET を 指 定 した 場 合 には、 停 止 後 にアナログ 出 力 を 再 開 する 際 に、 再 びデータの 先 頭からアナログ 出 力 を 開 始 します。FIFO リセットを 指 定 していない 場 合 には、 停 止 後 にアナログ 出 力 を 再 開 すると、 前 回 のデータの 続 きからアナログ 出 力 を 開 始 します。※5 複 数 識 別 子 の 指 定ulStopTrigCondition と ulTrigEdge は、 複 数 の 識 別 子 を 下 記 の 設 定 例 の 様 に OR で 指 定 します。( 設 定 例 )DAFIFOREQ FifoConfig:FifoConfig.ulStopTrigCondition = DA_TRIG_SIGTIMER | DA_RETRG | DA_FIFO_RESET:FifoConfig.ulTrigEdge = DA_START_DOWN_EDGE | DA_STOP_UP_EDGE:※6 PCI-3525, CPZ-3525 では、ulStartTrigCondition( 開 始 条 件 )と ulStopTrigCondition( 終了 条 件 )で、PCI-3525, CPZ-3525 に 搭 載 されているアナログ 出 力 のトリガでサンプリングを 開 始させたり 終 了 させたりすることができます。設 定 例 1: 開 始 条 件 を DA 指 定 件 数 出 力 にし、 終 了 条 件 を 指 定 件 数 に 設 定 した 場 合ulStartTrigCondition= DA_TRG_EXTTRGulStopTrigCondition= DA_TRG_AD_START※7 LPC-340216, LPC-340416, LPC-361316, LPC-361416PEX-340216, PEX-340416, PEX-361316, PEX-361416カウンタのカウントアップ/ダウンに 同 期 して DA 出 力 を 行 います。※8 LPC-340216, LPC-340416, LPC-361316, LPC-361416PEX-340216, PEX-340416, PEX-361316, PEX-361416カウンタのカウンタ 値 が 指 定 したカウンタ 値 と 一 致 した 場 合 にサンプリングの 開 始 / 終 了 が行 えます。※9 LPC-340216, LPC-340416, LPC-361316, LPC-361416PEX-340216, PEX-340416, PEX-361316, PEX-361416カウンタの Z 相 入 力 によりサンプリングの 開 始 / 終 了 が 行 えます。© 2000, 2013 Interface Corporation. All rights reserved.- 148 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows3.7. 戻 り 値 一 覧エラー 識 別 子 値 意 味 対 処 方 法DA_ERROR_SUCCESS 0x00000000 正 常 終 了 -DA_ERROR_NOT_DEVICE 0xC0000001 ドライバが 呼 び 出せません。指 定 されたデバイスが 見 つかりませんでした。 指定 しているデバイス 名 が 存 在 するかどうかを 確認 してください。DA_ERROR_NOT_OPEN 0xC0000002 ドライバが OPEN できません。DA_ERROR_INVALID_HANDLE 0xC0000003 デバイスハンドルが 不 正 です。DA_ERROR_ALREADY_OPEN 0xC0000004 既 に OPEN されているデバイスを OPENしようとしました。DA_ERROR_NOT_SUPPORTED 0xC0000009 製 品 がサポートしていない 関 数 です。DA_ERROR_NOW_SAMPLING 0xC0001001 アナログ 出 力 更 新中 です。DA_ERROR_STOP_SAMPLING 0xC0001002 アナログ 出 力 更 新が 停 止 中 です。DA_ERROR_START_SAMPLING 0xC0001003 アナログ 出 力 更 新を 開 始 できませんでした。© 2000, 2013 Interface Corporation. All rights reserved.デバイスのオープン 時 に 何 らかのエラーが 発 生しました。ドライバ 内 部 作 業 領 域の 確 保 に 失 敗 したなど。既 に OPEN されているデバイスです。製 品 がサポートしていない 機 能を 制 御 です。指 定 件 数 のアナログ 出 力 更 新 が完 了 する 前 に 再度 、アナログ 出 力更 新 開 始 を 実 行しようとしました。指 定 件 数 のアナログ 出 力 更 新 中に 実 行 できない関 数 を 呼 び 出 そうとしました。アナログ 出 力 更新 停 止 中 に 実 行できない 関 数 を呼 び 出 そうとしました。アナログ 出 力 バッファにまだアナログ 出 力 データがセットされていないため、アナログ 出 力 を 行うことができませんでした。- 149 -


<strong>GPC</strong>-<strong>3300</strong> Help for WindowsDA_ERROR_INVALID_PARAMETER 0xC0001021 パラメータが 不 正です。DA_ERROR_ILLEGAL_PARAMETER 0xC0001022 アナログ 出 力 設 定が 正 しくありません。DA_ERROR_NULL_POINTER 0xC0001023 NULL ポインタを 指定 しました。DA_ERROR_SET_DATA 0xC0001024 アナログ 出 力 データのセットができません。DA_ERROR_USED_AD 0xC0001025 AD ドライバで 使 用中 です。DA_ERROR_FILE_OPEN 0xC0001041 ファイルのオープンに 失 敗 しました。DA_ERROR_FILE_CLOSE 0xC0001042 ファイルのクローズに 失 敗 しました。DA_ERROR_FILE_READ 0xC0001043 ファイルの 読 み 込みに 失 敗 しまし© 2000, 2013 Interface Corporation. All rights reserved.引 数 の 値 が 不 正です。引 数 の 値 の 範 囲が 指 定 範 囲 外 です。アナログ 出 力 設定 値 が 正 しくありません。アナログ 出 力 設定 に 矛 盾 があります。アナログ 出 力 データ 領 域 の 指 定に NULL を 指 定 しました。データ 変 換 APIにおいて、データ変 換 元 となるデータへのポインタが NULL で 指 定された。変 換 後 のデータを 返 すためのポインタが NULL で指 定 された。既 にセットされているアナログ出 力 データとの連 結 後 のデータ長 がバッファの最 大 長 を 越 えているため、データのセットを 行 うことができませんでした。AD 側 で 使 用 中 の機 能 を 停 止 してから、 関 数 を 実 行しなおしてください。ファイルのパス名 が 存 在 しません。存 在 しないドライブを 指 定 しました。ファイルアクセス 時 に 何 らかのエラーが 発 生 しました。データファイルに 異 常 がないか 確 認 してください。ファイルアクセス 時 に 何 らかの- 150 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows© 2000, 2013 Interface Corporation. All rights reserved.た。 エラーが 発 生 しました。データファイルに 異 常 がないか 確 認 してください。DA_ERROR_FILE_WRITE 0xC0001044 ファイルの 書 き 込みに 失 敗 しました。DA_ERROR_INVALID_DATA_FORMAT 0xC0001061 データ 形 式 が 無 効です。DA_ERROR_INVALID_AVERAGE_OR_SMOOTHING 0xC0001062 平 均 またはスムージングの 指 定 が 正しくありません。DA_ERROE_INVALID_SOURCE_DATA 0xC0001063 データ 変 換 元 として 指 定 されたデータが 正 しくありません。DA_ERROR_NOT_ALLOCATE_MEMORY 0xC0001081 メモリが 確 保 できません。DA_ERROR_NOT_LOAD_DLL 0xC0001082 DLL がロードできませんでした。DA_ERROR_CALL_DLL 0xC0001083 DLL の 呼 び 出 しに失 敗 しました。DA_ERROR_USBIO_FAILED 0xC0001085 USB デバイスの 実行 に 失 敗 しました。ファイルアクセス 時 に 何 らかのエラーが 発 生 しました。データファイルに 異 常 がないか 確 認 してください。データ 形 式 をご確 認 ください。平 均 またはスムージングの 回 数が、0 またはデータ 件 数 を 越 えている。平 均 またはスムージングの 件 数が 0 で 指 定 された。データ 変 換 元 のアドレス 指 定 箇所 などに 間 違 いがないか 確 認 してください。ドライバ 内 部 で作 業 するためのメモリの 確 保 に失 敗 しました。DLL のロードに 失敗 しました。DLL が 見 つかりませんでした。DLL 呼 び 出 し 時に、 呼 び 出 したDLL でエラーが 発生 しました。再 起 動 を 行 なうか、DPC-0401 の「 IfUsbDevicePowerCtl」 関 数 を 使用 し、USB デバイスの 電 源 を OFF→ON して 下 さい。「 IfUsbDevicePowerCtl」 関 数 の 使用 方 法 は 、DPC-0401 の Helpを 参 照 してください。DA_ERROR_USBIO_TIMEOUT 0xC0001086 USB デバイスとの 再 起 動 を 行 なう- 151 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows通 信 がタイムアウトしました。か、DPC-0401 の「 IfUsbDevicePowerCtl」 関 数 を 使用 し、USB デバイスの 電 源 を OFF→ON して 下 さい。「 IfUsbDevicePowerCtl」 関 数 の 使用 方 法 は 、DPC-0401 の Helpを 参 照 してください。© 2000, 2013 Interface Corporation. All rights reserved.- 152 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows3.8. プログラム 例/* ====================================================================== /* プログラム説 明 *//* チャンネル 1,2 で 512 件 のデータの 連 続 アナログ 出 力 を 行 います *//* ====================================================================== */using System;using System.Drawing;using System.Collections;using System.ComponentModel;using System.Windows.Forms;using System.Data;using InterfaceCorpDllWrap; // 名 前 空 間 の 追 加namespace Ex01{/// /// Form1 の 概 要 の 説 明 です。/// public class Form1 : System.Windows.Forms.Form{/// /// 必 要 なデザイナ 変 数 です。/// private System.ComponentModel.Container components = null;public int nRet; // 関 数 戻 り 値public uint hDeviceHandle; // デバイスハンドルpublic uint ulSmplBufferSize;// アナログ 出 力 バッファサイズpublic uint i; // くり 返 し 用 カウンタpublic ushort[] wSmplData = new ushort [512]; // 出 力 データバッファpublic IFCDA_ANY.DASMPLREQ SmplConfig; // アナログ 出 力 更 新 条 件 設 定 の 構 造 体public Form1(){//// Windows フォーム デザイナ サポートに 必 要 です。//InitializeComponent();//// TODO: InitializeComponent 呼 び 出 しの 後 に、コンストラクタ コードを 追 加 してください。//// デバイス 名 "FBIAD1"のデバイスの 初 期 化 を 行 います。hDeviceHandle = IFCDA_ANY.DaOpen( "FBIDA1");© 2000, 2013 Interface Corporation. All rights reserved.- 153 -


<strong>GPC</strong>-<strong>3300</strong> Help for WindowsulSmplBufferSize = 512;nRet = IFCDA_ANY.DaSetBoardConfig(hDeviceHandle, ulSmplBufferSize, NULL, NULL, 0);// サンプリング 条 件 の 取 得nRet = IFCDA_ANY.DaGetSamplingConfig(hDeviceHandle, out SmplConfig);// アナログ 出 力 チャンネル 数 を2チャンネル(チャンネル1,2)に 変 更SmplConfig.ulChCount = 2;SmplConfig.SetChNo(0, 1);SmplConfig.SetChNo(1, 2);nRet = IFCDA_ANY.DaSetSamplingConfig(hDeviceHandle, ref SmplConfig);// アナログ 出 力 データの 作 成for (i = 0; i < 256; i++) {wSmplData[i*2] = i;wSmplData[i*2+1] = 256 - i;}// アナログ 出 力 データセットnRet = IFCDA_ANY.DaSetSamplingData(hDeviceHandle, wSmplData, 512);}// 同 期 でアナログ 出 力 更 新 開 始nRet = IFCDA_ANY.DaStartSampling(hDeviceHandle, IFCDA_ANY.FLAG_SYNC);/// /// 使 用 されているリソースに 後 処 理 を 実 行 します。/// protected override void Dispose( bool disposing ){// 終 了 処 理IFCDA_ANY.DaClose( hDeviceHandle );}if( disposing ) {if (components != null) {components.Dispose();}}base.Dispose( disposing );#region Windows フォーム デザイナで 生 成 されたコード/// /// デザイナ サポートに 必 要 なメソッドです。このメソッドの 内 容 を/// コード エディタで 変 更 しないでください。/// private void InitializeComponent()© 2000, 2013 Interface Corporation. All rights reserved.- 154 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows{}//// Form1//this.AutoScaleBaseSize = new System.Drawing.Size(5, 12);this.ClientSize = new System.Drawing.Size(552, 173);this.Name = "Form1";this.Text = "Form1";#endregion}}/// /// アプリケーションのメイン エントリ ポイントです。/// [STAThread]static void Main(){Application.Run(new Form1());}© 2000, 2013 Interface Corporation. All rights reserved.- 155 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows' ======================================================================' プログラム 説 明' チャンネル 1,2 で 512 件 のデータの 連 続 アナログ 出 力 を 行 います' ======================================================================' 名 前 空 間 の 追 加Imports InterfaceCorpDllWrapPublic Class Form1Inherits System.Windows.Forms.Form' 変 数 定 義Public hDeviceHandle As Longに 定 義 します。'デバイスハンドル 格 納 用 変 数 標 準 モジュール 定 義 ファイル#Region " Windows フォーム デザイナで 生 成 されたコード "Public Sub New()MyBase.New()End Sub' この 呼 び 出 しは Windows フォーム デザイナで 必 要 です。InitializeComponent()' InitializeComponent() 呼 び 出 しの 後 に 初 期 化 を 追 加 します。' Form は、コンポーネント 一 覧 に 後 処 理 を 実 行 するために dispose をオーバーライドします。Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)If disposing ThenIf Not (components Is Nothing) Thencomponents.Dispose()End IfEnd IfMyBase.Dispose(disposing)End Sub' Windows フォーム デザイナで 必 要 です。Private components As System.ComponentModel.IContainer' メモ : 以 下 のプロシージャは、Windows フォーム デザイナで 必 要 です。'Windows フォーム デザイナを 使 って 変 更 してください。' コード エディタを 使 って 変 更 しないでください。 Private Sub InitializeComponent()''Form1© 2000, 2013 Interface Corporation. All rights reserved.- 156 -


<strong>GPC</strong>-<strong>3300</strong> Help for WindowsEnd Sub#End Region'Me.AutoScaleBaseSize = New System.Drawing.Size(5, 12)Me.ClientSize = New System.Drawing.Size(376, 237)Me.Name = "Form1"Me.Text = "Form1"Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) HandlesMyBase.Load'フォームのロード 時 に 初 期 化 します。Dim nRet As Integer' 戻 り 値 格 納 用 変 数Dim SmplData(511) As Short ' アナログ 出 力 データ 格 納 領 域Dim i As Short' くり 返 し 用 カウンタDim SmplConfig As IFCDA_ANY.DASMPLREQ ' アナログ 出 力 更 新 条 件 設 定 構 造 体Dim ulSmplBufferSize As Long ' アナログ 出 力 バッファサイズ' デバイス 名 "FBIDA1"のデバイスの 初 期 化 を 行 います。hDeviceHandle = IFCDA_ANY.DaOpen("FBIDA1", 0)' アナログ 出 力 バッファサイズを512 件 に 変 更ulSmplBufferSize = 512nRet = IFCDA_ANY.DaSetBoardConfig(hDeviceHandle, ulSmplBufferSize, 0, 0, 0)' アナログ 出 力 更 新 条 件 の 取 得nRet = IFCDA_ANY.DaGetSamplingConfig(hDeviceHandle, SmplConfig)' アナログ 出 力 チャンネル 数 を2チャンネル(チャンネル1,2)に 変 更SmplConfig.ulChCount = 2SmplConfig.SetChNo(0, 1)SmplConfig.SetChNo(1, 2)nRet = IFCDA_ANY.DaSetSamplingConfig(hDeviceHandle, SmplConfig)' アナログ 出 力 データの 作 成For i = 0 To 255wSmplData(i*2) = iwSmplData(i*2+1) = 255 - iNext End Sub' アナログ 出 力 データセットnRet = IFCDA_ANY.DaSetSamplingData(hDeviceHandle, wSmplData(0), 512)' 同 期 で 連 続 アナログ 出 力 開 始nRet = IFCDA_ANY.DaStartSampling(hDeviceHandle, IFCDA_ANY.FLAG_SYNC)© 2000, 2013 Interface Corporation. All rights reserved.- 157 -


<strong>GPC</strong>-<strong>3300</strong> Help for WindowsPrivate Sub Form_Unload(ByVal Cancel As Integer)Dim nRet As Integer' 戻 り 値 格 納 用 変 数End Class‘ 終 了 処 理IFCDA_ANY.DaClose(hDeviceHandle)End Sub© 2000, 2013 Interface Corporation. All rights reserved.- 158 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows// ======================================================================/* プログラム 説 明 *//* チャンネル 1,2 で 512 件 のデータの 連 続 アナログ 出 力 を 行 います */// ======================================================================unit Unit1;interfaceusesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs,InterfaceCorpDllWrap; //クラスライブラリの 名 前 空 間 使 用 宣 言typeTForm1 = class(TForm)procedure FormCreate(Sender: TObject);private{ Private 宣 言 }public{ Public 宣 言 }end;varForm1: TForm1;implementation{$R *.nfm}procedure TForm1.FormCreate(Sender: TObject); //プログラム 起 動 時 に 実 行 されるコードvarhDeviceHandle:Integer;nRet:Integer;SmplConfig :IFCAD.DASMPLREQ;wSmplData :array[0..1024] of WORD;begin// デバイス 名 "FBIDA1"のデバイスの 初 期 化 を 行 います。hDeviceHandle:= IFCDA.DaOpen(‘FBIDA1’);// アナログ 出 力 バッファサイズを512 件 に 変 更ulSmplBufferSize:= 512;nRet := IFCDA.DaSetBoardConfig(hDeviceHandle, ulSmplBufferSize, 0, 0, 0);// アナログ 出 力 更 新 条 件 の 取 得nRet := IFCDA.DaGetSamplingConfig(hDeviceHandle, SmplConfig);© 2000, 2013 Interface Corporation. All rights reserved.- 159 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows// アナログ 出 力 チャンネル 数 を2チャンネル(チャンネル1,2)に 変 更SmplConfig.ulChCount := 2;SmplConfig.SetChNo(0, 1);SmplConfig.SetChNo(1, 2);nRet := IFCDA.DaSetSamplingConfig(hDeviceHandle, SmplConfig);// アナログ 出 力 データの 作 成for i:= 1 to 255 do beginwSmplData[i*2] := i;wSmplData[i*2+1] := 255 – i;end;// アナログ 出 力 データセットnRet := DaSetSamplingData(hDeviceHandle, wSmplData[0], 512);// 同 期 モードで 連 続 アナログ 出 力 開 始nRet := IFCDA.DaStartSampling(hDeviceHandle, FLAG_SYNC);// 終 了 処 理nRet := IFCDA.DaClose(hDeviceHandle);end;end.© 2000, 2013 Interface Corporation. All rights reserved.- 160 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows第 3 章 サンプルプログラム.NET 各 言 語 用 に 用 意 したサンプルプログラムの 概 要 を 説 明 します。4.1. 実 行 手 順「Visual C# .NET」、「Visual Basic .NET」、「Delphi 8」 用 のサンプルプログラムを 用 意 しています。「Visul C++ .NET」については「Visual C++」のサンプルプログラムを 使 用 することができます。サンプルプログラムは「Visual Studio .NET 2003」で 作 成 しています。(「Visual Studio .NET2002」では 使 用 できませんが、“How to”として 使 用 方 法 を 公 開 しています。 弊 社 Web サイトを 参照 してください。)【 実 行 手 順 】サンプルプログラムには 実 行 形 式 のファイルが 付 属 していません。ソースコードをコンパイルして 実 行 ファイルを 生 成 してから、 動 作 させてください。・ Visual C++の 場 合Visual Studio を 起 動 し、「ファイル」メニューから「 開 く」→「プロジェクト」を 選 び、プロジェクトファイル「*.vcproj」を 開 き、ビルドしてください。・ Visual C# .NET の 場 合Visual Studio を 起 動 し、「ファイル」メニューから「 開 く」→「プロジェクト」を 選 び、プロジェクトファイル「*.csproj」を 開 き、ビルドしてください。・ Visual Basic .NET の 場 合Visual Studio を 起 動 し、「ファイル」メニューから「 開 く」→「プロジェクト」を 選 び、プロジェクトファイル「*.vbproj」を 開 き、ビルドしてください。・ Delphi 8 の 場 合Delphi を 起 動 し、「ファイル」メニューから「プロジェクトを 開 く」を 選 びプロジェクトファイル「*.dpr」を 開 き、ビルドしてください。作 成 後 、 生 成 された 実 行 ファイル*.exe を 起 動 してください。© 2000, 2013 Interface Corporation. All rights reserved.- 161 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows4.2. サンプルプログラム 一 覧各 サンプルプログラムの 概 要 は、 下 記 の 様 になります。(Visual C# .NET 用 )サンプルプログラム 名DaSmpl_Cs概 要11 件 出 力 の 実 行2 連 続 出 力 の 実 行 ( 同 期 処 理 )3 連 続 出 力 の 実 行 ( 非 同 期 処 理 )4 複 数 枚 同 期 サンプリングの 実 行 (マスタモード)5 複 数 枚 同 期 サンプリングの 実 行 (スレーブモード)(Visual Basic .NET 用 )サンプルプログラム 名DaSmpl_B_NET概 要11 件 出 力 の 実 行2 連 続 出 力 の 実 行 ( 同 期 処 理 )3 連 続 出 力 の 実 行 ( 非 同 期 処 理 )4 複 数 枚 同 期 サンプリングの 実 行 (マスタモード)5 複 数 枚 同 期 サンプリングの 実 行 (スレーブモード)(Delphi 8 用 )サンプルプログラム 名DaSmpl_D_NET概 要11 件 出 力 の 実 行2 連 続 出 力 の 実 行 ( 同 期 処 理 )3 連 続 出 力 の 実 行 ( 非 同 期 処 理 )4 複 数 枚 同 期 サンプリングの 実 行 (マスタモード)5 複 数 枚 同 期 サンプリングの 実 行 (スレーブモード)© 2000, 2013 Interface Corporation. All rights reserved.- 162 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows第 4 章 重 要 な 情 報保 証 の 内 容 と 制 限弊 社 は 本 ドキュメントに 含 まれるソースプログラムの 実 行 が 中 断 しないこと、またはその 実 行 に誤 りが 無 いことを 保 証 していません。本 製 品 の 品 質 や 使 用 に 起 因 する、 性 能 に 起 因 するいかなるリスクも 使 用 者 が 負 うものとします。弊 社 はドキュメント 内 の 情 報 の 正 確 さに 万 全 を 期 しています。 万 一 、 誤 記 または 誤 植 などがあった 場 合 、 弊 社 は 予 告 無 く 改 訂 する 場 合 があります。ドキュメントまたはドキュメント 内 の 情 報 に起 因 するいかなる 損 害 に 対 しても 弊 社 は 責 任 を 負 いません。ドキュメント 内 の 図 や 表 は 説 明 のためであり、ユーザ 個 別 の 応 用 事 例 により 変 化 する 場 合 があります。著 作 権 、 知 的 所 有 権弊 社 は 本 製 品 に 含 まれるおよび 本 製 品 に 対 する 権 利 や 知 的 所 有 権 を 保 持 しています。本 製 品 はコンピュータ ソフトウェア、 映 像 / 音 声 ( 例 えば 図 、 文 章 、 写 真 など)を 含 んでいます。医 療 機 器 / 器 具 への 適 用 における 注 意弊 社 の 製 品 は 人 命 に 関 わるような 状 況 下 で 使 用 される 機 器 に 用 いられる 事 を 目 的 として 設 計 、 製造 された 物 では 有 りません。弊 社 の 製 品 は 人 体 の 検 査 などに 使 用 するに 適 する 信 頼 性 を 確 保 する 事 を 意 図 された 部 品 や 検 査 機器 と 共 に 設 計 された 物 では 有 りません。医 療 機 器 、 治 療 器 具 などの 本 製 品 の 適 用 により、 製 品 の 故 障 、ユーザ、 設 計 者 の 過 失 などにより、損 傷 / 損 害 を 引 き 起 こす 場 合 が 有 ります。複 製 の 禁 止弊 社 の 許 可 なく、 本 ドキュメントの 全 て、または 一 部 に 関 わらず、 複 製 、 改 変 などを 行 うことはできません。責 任 の 制 限弊 社 は、 弊 社 または 再 販 売 者 の 予 見 の 有 無 にかかわらず 発 生 したいかなる 特 別 損 害 、 偶 発 的 損 害 、間 接 的 な 損 害 、 重 大 な 損 害 について、 責 任 を 負 いません。本 製 品 (ハードウェア,ソフトウェア)のシステム 組 み 込 み、 使 用 、ならびに 本 製 品 から 得 られる結 果 に 関 する 一 切 のリスクについては、 本 製 品 の 使 用 者 に 帰 属 するものとします。本 製 品 に 含 まれるバグ、あるいは 本 製 品 の 供 給 ( 納 期 遅 延 )、 性 能 もしくは 使 用 に 起 因 する 付 帯 的損 害 もしくは 間 接 的 損 害 に 対 して、 弊 社 に 全 面 的 に 責 がある 場 合 でも、 弊 社 はその 製 品 に 対 する改 良 ( 正 常 に 動 作 する)、 代 品 交 換 までとし、 金 銭 面 での 賠 償 の 責 任 は 負 わないものとしますので、予 めご 了 承 ください。本 製 品 (ソフトウェアを 含 む)は、 日 本 国 内 仕 様 です。 本 製 品 を 日 本 国 外 で 使 用 された 場 合 、 弊社 は 一 切 責 任 を 負 いかねます。また、 弊 社 は 本 製 品 に 関 し、 海 外 での 保 守 サービスおよび 技 術 サポート 等 は 行 っておりません。© 2000, 2013 Interface Corporation. All rights reserved.- 163 -


<strong>GPC</strong>-<strong>3300</strong> Help for Windows商 標 / 登 録 商 標本 書 に 掲 載 されている 会 社 名 、 製 品 名 は、それぞれ 各 社 の 商 標 または 登 録 商 標 です。© 2000, 2013 Interface Corporation. All rights reserved.- 164 -

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!