GPIB的WRITE/READ範例程式,但是VB5.0的,想改成VB.NET的 |
尚未結案
|
alex20733
一般會員 發表:2 回覆:2 積分:0 註冊:2005-04-04 發送簡訊給我 |
下面是GPIB的WRITE/READ範例程式,但是VB5.0的,想改成VB.NET的
可以幫我改一下,謝謝
Option Explicit Const BDINDEX = 0 ' Board Index
Const PRIMARY_ADDR_OF_PPS = 1 ' Primary address of device
Const NO_SECONDARY_ADDR = 0 ' Secondary address of device
Const TIMEOUT = T10s ' Timeout value = 10 seconds
Const EOTMODE = 1 ' Enable the END message
Const EOSMODE = 0 ' Disable the EOS mode Const ARRAYSIZE = 1024 ' Size of read buffer Dim ErrorMnemonic
Dim ErrMsg As String * 100
Dim Dev As Integer
Dim ValueStr As String * ARRAYSIZE
'--------------------------------------------------------
Private Sub GPIBCleanup(ByVal msg$)
ErrorMnemonic = Array("EDVR", "ECIC", "ENOL", "EADR", "EARG", _
"ESAC", "EABO", "ENEB", "EDMA", "", _
"EOIP", "ECAP", "EFSO", "", "EBUS", _
"ESTB", "ESRQ", "", "", "", "ETAB")
ErrMsg$ = msg$ & Chr(13) & "ibsta = &H" & Hex(ibsta) & Chr (13) & "iberr = " & iberr & " <" & ErrorMnemonic(iberr) & ">"
MsgBox(ErrMsg$, vbCritical, "Error")
ilonl(Dev%, 0)
End
End Sub
'---------------------------------------------------------------- Private Sub RunCmd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RunCmd.Click Dim DisplayStr As String
ilwrt(Dev%, PPSCommand.Text, Len(PPSCommand.Text))
If (ibsta And EERR) Then
Call GPIBCleanup("Unable to request data from PowerSupply")
End If
ilrd(Dev%, ValueStr$, Len(ValueStr$))
If (ibsta And EERR) Then
Call GPIBCleanup("Unable to read from device")
End If
DisplayStr = Left$(ValueStr, ibcntl - 1)
ReadingsList.AddItem(DisplayStr)
ReadingsList.Refresh()
End Sub
'---------------------------------------------------
Private Sub QuitCmd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles QuitCmd.Click
ilonl(Dev%, 0)
End
End Sub '----------------------------------------------------
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Dev% = ildev(BDINDEX, PRIMARY_ADDR_OF_PPS, NO_SECONDARY_ADDR, _
TIMEOUT, EOTMODE, EOSMODE)
If (ibsta And EERR) Then
ErrMsg = "Unable to open device" & Chr(13) & "ibsta = &H"& Hex(ibsta) & Chr(13) & "iberr = " & iberr
MsgBox(ErrMsg, vbCritical, "Error")
End
End If
ilclr(Dev%)
If (ibsta And EERR) Then
Call GPIBCleanup("Unable to clear device")
End If
PPSCommand.Text = "*IDN?"
End Sub
End Class
|
alex20733
一般會員 發表:2 回覆:2 積分:0 註冊:2005-04-04 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |