YdxAoSetDataVolt¶
機能¶
データを電圧値で設定します。
書式¶
INT YdxAoSetDataVolt(
INT id,
INT sampleNum,
FLOAT* volt
);
パラメータ¶
id¶
YdxOpen関数 で取得したIDを指定します。
言語 | C# | VB(.NET2002以降) | VB6.0 | C++/CLI | C/C++ |
---|---|---|---|---|---|
型 | int | Integer | Long | int | INT |
sampleNum¶
データを設定するサンプル数を指定します。
データ数ではなく、サンプル数で指定してください。
言語 | C# | VB(.NET2002以降) | VB6.0 | C++/CLI | C/C++ |
---|---|---|---|---|---|
型 | int | Integer | Long | int | INT |
volt¶
データを格納した変数へのポインタを指定します。
(sampleNum * 有効なチャネル 数)個分の配列を指定してください。
(例)サンプル数=1000、有効チャネル=CH0・CH1・CH3の場合、データは以下の順番で格納してください。
データ | CH0 | CH1 | CH3 | CH0 | CH1 | CH3 | ・・・ | CH0 | CH1 | CH3 | CH0 | CH1 | CH3 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
サンプル数 | 1 | 1 | 1 | 2 | 2 | 2 | ・・・ | 999 | 999 | 999 | 1000 | 1000 | 1000 |
データ数 | 1 | 2 | 3 | 4 | 5 | 6 | ・・・ | 2995 | 2996 | 2997 | 2998 | 2999 | 3000 |
単位は「V」です。
データの値の範囲は、-10~10 [V]です。
言語 | C# | VB(.NET2002以降) | VB6.0 | C++/CLI | C/C++ |
---|---|---|---|---|---|
型 | float[] | Single | Single | float* | FLOAT* |
戻り値¶
関数が正常に終了した場合は、0(YDX_RESULT_SUCCESS)が返ります。
正常に終了しなかった場合は、0以外が返ります。
詳細は、戻り値一覧 を参照してください。
言語 | C# | VB(.NET2002以降) | VB6.0 | C++/CLI | C/C++ |
---|---|---|---|---|---|
型 | int | Integer | Long | int | INT |
備考¶
データバッファにデータが残った状態のまま、本関数を実行した場合
- データバッファがリングバッファ形式に設定されている時は、残っていたデータは破棄されます。
- データバッファがFIFOバッファ形式に設定されている時は、残っていたデータの後に追加されます。
データバッファにデータが残った状態のまま、YdxAoSetBuffer関数 ・ YdxAoSetChannel関数 により設定が変更された場合、データはクリアされます。
設定を変更する場合は本関数の実行前におこなってください。
本関数は、データバッファがリングバッファ形式に設定されている時は、アナログ出力が 動作中 は実行できません。
(データバッファがFIFOバッファ形式に設定されている時は、アナログ出力が動作中でも実行できます)
使用例¶
1000サンプリング分のデータを設定します。
(有効なチャネル数は4チャネル、データは5.6Vの場合)
C#¶
int result;
float[] volt = new float[4000];
int i;
for (i = 0; i < 4000; i++)
{
volt[i] = 5.6F;
}
result = Ydx.AoSetDataVolt(id, 1000, volt);
VB(.NET2002以降)¶
Dim result As Integer
Dim volt(3999) As Single
Dim i As Integer
For i = 0 To 3999
volt(i) = 5.6
Next
result = YdxAoSetDataVolt(id, 1000, volt)
VB6.0¶
Dim result As Long
Dim volt(3999) As Single
Dim i As Long
For i = 0 To 3999
volt(i) = 5.6
Next
result = YdxAoSetDataVolt(id, 1000, volt(0))
C++/CLI¶
int result;
float volt[4000];
int i;
for (i = 0; i < 4000; i++)
{
volt[i] = 5.6;
}
result = YdxAoSetDataVolt(id, 1000, volt);
C/C++¶
INT result;
float volt[4000];
INT i;
for (i = 0; i < 4000; i++)
{
volt[i] = 5.6;
}
result = YdxAoSetDataVolt(id, 1000, volt);