計測制御技術ラウンジ >> GPIB技術ラウンジ 全部 1- 最新50

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))

このようにしているのですが、改善しなければならないところが
わかりましたらご指南の方よろしくお願いいたします。

新着レスの表示

名前 : E-mail(省略可) :

文責:計測制御技術ラウンジ, Powered by ©タカヒロ@みちのく掲示板 [12ch BBS 2.03]