GPIBを用いたVBによるFFT制御
- 3 名前: 流れ者 投稿日:2006/02/02(木) 18:13 ID:eV0VJk8A
- 匿名488さんお返事ありがとうございます。
バイナリデータの取得の仕方がうまくいっていないと思った理由ですが
送信データはきちんと送れていて、FFTは処理を行っているおり、
トーカーにもきちんと切り替わってデータを送信しているみたいなのですが
データが受信できていませんというメッセージが出てしまうからです。
受信のプログラムは以下のとおりです。
Dim ulLength As Long
Dim bRecvBuff(1612) As Byte
'データ受信
For i = 0 To 1612
bRecvBuff(i) = 0
Next
ulLength = 1612
nRet = GpibReceive(nBoardNo, lAdrTbl(0), ulLength, bRecvBuff(0))
If nRet <> 0 Then
nRet = MsgBox("データ受信に失敗しました", (vbOKOnly + vbCritical), "GpibReceive")
nRet = GpibClose(ulBoardNo) ' ボード番号0のボードを使用終了
Unload Me ' ダイアログを閉じる
End If
' 受信文字列の表示
Text1.Text = ""
For i = 0 To 1612
If bRecvBuff(i) = 0 Then Exit For
Text1.SelText = Chr(bRecvBuff(i))
Next
データ送信がString形式で、
受信のByte形式と異なっているので、
送信もByte形式にするためにMID関数を用いたのですが
それでも受信はうまくいかないのです・・・。
Dim lngStrLength As Long
Dim bSendData(1612) As Byte
lngStrLength = Len("SMS2")
'送信バッファに文字列(アスキーコード)を設定します。
For I = 1 To lngStrLength
bSendData(I - 1) = Asc(Mid("SMS2", I, 1))
Next
nRet = GpibSend(ulBoardNo, lAdrTbl(0), lngStrLength, bSendData(0))
このようにしているのですが、改善しなければならないところが
わかりましたらご指南の方よろしくお願いいたします。
新着レスの表示