Visual C#でのプログラム例です。変換データやエラー内容は、アウトプットウィンドウに表示されます。
AioSingleAoを使用したプログラム例
AioMultiAoを使用したプログラム例
AioSingleAoを使用したプログラム例
//---------------------------
// 変数宣言
//---------------------------
int Ret; //関数の戻り値
short Id; //ID
string ErrorString; //エラー文字列格納用配列
//---------------------------
// デバイスの初期化
// デバイス名:Aio000
//---------------------------
Ret = aio.Init( "Aio000" , out Id );
if( Ret != 0 )
{
aio.GetErrorString( Ret , out ErrorString );
System.Diagnostics.Trace.WriteLine("aio.Init : "
+ ErrorString);
return;
}
//---------------------------
// アナログ出力レンジの設定
// レンジ:±10V
//---------------------------
Ret = aio.SetAoRangeAll( Id , (short)CaioConst.PM10 );
if( Ret != 0 )
{
aio.GetErrorString( Ret , out ErrorString );
System.Diagnostics.Trace.WriteLine("aio.SetAoRangeAll
: " + ErrorString);
Ret = aio.Exit( Id );
return;
}
//---------------------------
// 指定チャネルを1回アナログ出力
// 出力チャネル:0
// 出力データ:800H
//---------------------------
Ret = aio.SingleAo( Id , 0 , 0x800 );
if( Ret != 0 )
{
aio.GetErrorString( Ret , out ErrorString );
System.Diagnostics.Trace.WriteLine("aio.SingleAo : "
+ ErrorString);
Ret = aio.Exit( Id );
return;
}
System.Diagnostics.Trace.WriteLine("チャネル0 : 0x800");
//---------------------------
// デバイスの終了
//---------------------------
Ret = aio.Exit( Id );
if( Ret != 0 )
{
aio.GetErrorString( Ret , out ErrorString );
System.Diagnostics.Trace.WriteLine("aio.Exit : "
+ ErrorString);
return;
}
AioMultiAoを使用したプログラム例
//---------------------------
// 変数宣言
//---------------------------
int Ret; //関数の戻り値
short Id; //ID
string ErrorString; //エラー文字列格納用配列
int[] AoData = new int[8]; //変換データ
short i;
//---------------------------
// デバイスの初期化
// デバイス名:Aio000
//---------------------------
Ret = aio.Init( "Aio000" , out Id );
if( Ret != 0 )
{
aio.GetErrorString( Ret , out ErrorString );
System.Diagnostics.Trace.WriteLine("aio.Init : "
+ ErrorString);
return;
}
//---------------------------
// アナログ出力レンジの設定
// レンジ:±10V
//---------------------------
Ret = aio.SetAoRangeAll( Id , (short)CaioConst.PM10 );
if( Ret != 0 )
{
aio.GetErrorString( Ret , out ErrorString );
System.Diagnostics.Trace.WriteLine("aio.SetAoRangeAll
: " + ErrorString);
Ret = aio.Exit( Id );
return;
}
//---------------------------
// 複数チャネルを1回アナログ出力
// 出力チャネル数:8
//---------------------------
for( i = 0 ; i < 8 ; i++ )
{
AoData[ i ] = i * 100;
System.Diagnostics.Trace.WriteLine("チャネル" +
i + " : " + AoData[ i ].ToString() );
}
Ret = aio.MultiAo( Id , 8 , AoData );
if( Ret != 0 )
{
aio.GetErrorString( Ret , out ErrorString );
System.Diagnostics.Trace.WriteLine("aio.MultiAo
: " + ErrorString);
Ret = aio.Exit( Id );
return;
}
//---------------------------
// デバイスの終了
//---------------------------
Ret = aio.Exit( Id );
if( Ret != 0 )
{
aio.GetErrorString( Ret , out ErrorString );
System.Diagnostics.Trace.WriteLine("aio.Exit : "
+ ErrorString);
return;
}