YdxAoOutput¶
機能¶
アナログ出力端子を制御します。
データは、バイナリ値で指定します。
書式¶
INT YdxAoOutput(
INT id,
INT start,
INT num,
INT mode,
INT* data
);
パラメータ¶
id¶
YdxOpen関数 で取得したIDを指定します。
言語 | C# | VB(.NET2002以降) | VB6.0 | C++/CLI | C/C++ |
---|---|---|---|---|---|
型 | int | Integer | Long | int | INT |
start¶
出力開始チャネルを指定します。
設定範囲は0~3です。
言語 | C# | VB(.NET2002以降) | VB6.0 | C++/CLI | C/C++ |
---|---|---|---|---|---|
型 | int | Integer | Long | int | INT |
num¶
出力をするチャネル数を指定します。
言語 | C# | VB(.NET2002以降) | VB6.0 | C++/CLI | C/C++ |
---|---|---|---|---|---|
型 | int | Integer | Long | int | INT |
mode¶
動作モードを指定します。
値 | 意味 |
---|---|
0 | 出力の更新を、すぐにおこないます。 |
1 | 出力の更新を、次のサンプリング周期でおこないます。 (アナログ出力のサンプリングが停止中・待機中は、出力は更新されません) ただし、出力が更新されるのは、チャネル設定 で無効になっているチャネルのみです。 (有効になっているチャネルは、データバッファからのデータで更新されます) アナログ出力が 動作中 に実行する場合は、1を指定してください。 |
言語 | C# | VB(.NET2002以降) | VB6.0 | C++/CLI | C/C++ |
---|---|---|---|---|---|
型 | int | Integer | Long | int | INT |
data¶
出力データを格納した変数へのポインタを指定します。
データの値の範囲は、-32768~32767です。
電圧値からの換算式は以下のとおりです。
data = 電圧値 * 32767 / 10
言語 | C# | VB(.NET2002以降) | VB6.0 | C++/CLI | C/C++ |
---|---|---|---|---|---|
型 | int[] | Integer | Long | int* | INT* |
戻り値¶
関数が正常に終了した場合は、0(YDX_RESULT_SUCCESS)が返ります。
正常に終了しなかった場合は、0以外が返ります。
詳細は、戻り値一覧 を参照してください。
言語 | C# | VB(.NET2002以降) | VB6.0 | C++/CLI | C/C++ |
---|---|---|---|---|---|
型 | int | Integer | Long | int | INT |
備考¶
本関数は、modeに0を指定する場合は、アナログ出力が 動作中 には実行できません。
(modeに1を指定する場合は、アナログ出力が動作中でも実行できます)
使用例¶
アナログ出力チャネル0~3(AOUT0~AOUT3)に、15000を出力します。
C#¶
int result;
int[] data = new int[4];
int i;
for (i = 0; i < 4; i++)
{
data[i] = 15000;
}
result = Ydx.AoOutput(id, 0, 4, 0, data);
VB(.NET2002以降)¶
Dim result As Integer
Dim data(3) As Integer
Dim i As Integer
For i = 0 To 3
data(i) = 15000
Next
result = YdxAoOutput(id, 0, 4, 0, data)
VB6.0¶
Dim result As Long
Dim data(3) As Long
For i = 0 To 3
data(i) = 15000
Next
result = YdxAoOutput(id, 0, 4, 0, data(0))
C++/CLI¶
int result;
int data[4];
int i;
for (i = 0; i < 4; i++)
{
data[i] = 15000;
}
result = YdxAoOutput(id, 0, 4, 0, data);
C/C++¶
INT result;
INT data[4];
INT i;
for (i = 0; i < 4; i++)
{
data[i] = 15000;
}
result = YdxAoOutput(id, 0, 4, 0, data);