Visual Basic .NET

Visual Basic .NETでのプログラム例です。変換データやエラー内容は、デバッグウィンドウに表示されます。
AioSingleAoを使用したプログラム例

AioMultiAoを使用したプログラム例


AioSingleAoを使用したプログラム例

'---------------------------
' 変数宣言
'---------------------------

Dim Ret As Integer '関数の戻り値
Dim Id As Short 'ID
Dim ErrorString As String = Space(256) 'エラー文字列格納用配列

'---------------------------
' デバイスの初期化
' デバイス名:Aio000
'---------------------------

Ret = AioInit("Aio000", Id)
If Ret <> 0 Then
    AioGetErrorString(Ret, ErrorString)
    System.Diagnostics.Trace.WriteLine("AioInit : " + ErrorString)
    Exit Sub
End If

'---------------------------
' アナログ出力レンジの設定
' レンジ:±10V
'---------------------------

Ret = AioSetAoRangeAll(Id, PM10)
If Ret <> 0 Then
    AioGetErrorString(Ret, ErrorString)
    System.Diagnostics.Trace.WriteLine("AioSetAoRangeAll : " + ErrorString)
    Ret = AioExit(Id)
    Exit Sub
End If

'---------------------------
' 指定チャネルを1回アナログ出力
' 出力チャネル:0
' 出力データ:800H
'---------------------------

Ret = AioSingleAo(Id, 0, &H800)
If Ret <> 0 Then
    AioGetErrorString(Ret, ErrorString)
    System.Diagnostics.Trace.WriteLine("AioSingleAo : " + ErrorString)
    Ret = AioExit(Id)
    Exit Sub
End If
System.Diagnostics.Trace.WriteLine("チャネル0 : &H800")

'---------------------------
' デバイスの終了
'---------------------------

Ret = AioExit(Id)
If Ret <> 0 Then
    AioGetErrorString(Ret, ErrorString)
    System.Diagnostics.Trace.WriteLine("AioExit : " + ErrorString)
    Exit Sub
End If


AioMultiAoを使用したプログラム例

'---------------------------
' 変数宣言
'---------------------------

Dim Ret As Integer '関数の戻り値
Dim Id As Short 'ID
Dim ErrorString As String = Space(256) 'エラー文字列格納用配列
Dim AoData(8) As Integer '変換データ
Dim i As Short

'---------------------------
' デバイスの初期化
' デバイス名:Aio000
'---------------------------

Ret = AioInit("Aio000", Id)
If Ret <> 0 Then
    AioGetErrorString(Ret, ErrorString)
    System.Diagnostics.Trace.WriteLine("AioInit : " + ErrorString)
    Exit Sub
End If

'---------------------------
' アナログ出力レンジの設定
' レンジ:±10V
'---------------------------

Ret = AioSetAoRangeAll(Id, PM10)
If Ret <> 0 Then
    AioGetErrorString(Ret, ErrorString)
    System.Diagnostics.Trace.WriteLine("AioSetAoRangeAll : " + ErrorString)
    Ret = AioExit(Id)
    Exit Sub
End If

'---------------------------
' 複数チャネルを1回アナログ出力
' 入力チャネル数:8
'---------------------------

For i = 0 To 7
    AoData(i) = i * 100
    System.Diagnostics.Trace.WriteLine("チャネル" + i + " : " + AoData(i))
Next i

Ret = AioMultiAo(Id, 8, AoData(0))
If Ret <> 0 Then
    AioGetErrorString(Ret, ErrorString)
    System.Diagnostics.Trace.WriteLine("AioMultiAo : " + ErrorString)
    Ret = AioExit(Id)
    Exit Sub
End If

'---------------------------
' デバイスの終了
'---------------------------

Ret = AioExit(Id)
If Ret <> 0 Then
    AioGetErrorString(Ret, ErrorString)
    System.Diagnostics.Trace.WriteLine("AioExit : " + ErrorString)
    Exit Sub
End If