24小时热门版块排行榜    

CyRhmU.jpeg
查看: 893  |  回复: 5

jiashaoxiong

木虫 (正式写手)

[交流] 【求助】VB问题

VB的一段程序
CODE:
DoEvents
        
        DoEvents
        For j = 1 To hnum
        Sleep (300)
        cmd = "HARM" + str(Harmset(j)) + Chr(13)
        flag = ibwrt(8, cmd, Len(cmd))
        Sleep (300)
        cmd = "SENS " + str(senset(1, j)) + Chr(13)
        flag = ibwrt(8, cmd, Len(cmd))
        Sleep (1000)
        cmd = "OFLT 7" + Chr(10)
        flag = ibwrt(8, cmd, Len(cmd))
        Call stab
        For i = 1 To fnum
        Sleep (500)
        cmd = "SENS " + str(senset(i, j)) + Chr(13)
        flag = ibwrt(8, cmd, Len(cmd))
        Sleep (500)
        cmd = "FREQ" + str(Freqset(i)) + Chr(13)
        flag = ibwrt(8, cmd, Len(cmd))
        Call stab
        cmd = "OUTP ? 3" + Chr(13)
        flag = ibwrt(8, cmd, Len(cmd))
        Sleep (1000)
        flag = ibrd(8, cmd, 48)
        Sleep (500)
        r(i, j) = Val(cmd)
        Sleep (500)
        cmd = "OUTP ? 4" + Chr(13)
        flag = ibwrt(8, cmd, Len(cmd))
        Sleep (1000)
        flag = ibrd(8, cmd, 48)
        Sleep (500)
        th(i, j) = Val(cmd)
     
        If r(i, j) > 0.8 * range(senset(i, j)) Then
         senset(i, j) = senset(i, j) + 1
         ElseIf r(i, j) < 0.1 * range(senset(i, j)) Then
         If senset(i, j) > 11 Then
            senset(i, j) = senset(i, j) - 1
         End If
        End If
        
    Next i
  
    Next j
    cmd = "temp?    " + Chr(10)
        Sleep (300)
        flag = ibwrt(7, cmd, Len(cmd))
        Sleep (300)
        flag = ibrd(7, cmd, 48)
        v = Val(cmd)

可否解释一下这程序是啥意思?

[ Last edited by nono2009 on 2010-10-30 at 15:28 ]
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

gcssg1

金虫 (小有名气)

jiashaoxiong(金币+1): 2010-12-11 09:36:49
我是初学者,无能为力啊
心事浩茫连广宇,于无声处听惊雷
2楼2010-10-28 21:02:07
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

recen

木虫 (文坛精英)

宅!宅!宅!宅出韭菜来

优秀版主


nono2009(金币+1):鼓励交流 2010-10-30 15:29:39
jiashaoxiong(金币+5): 2010-12-11 09:37:13
这个类似于伸出一条腿让别人猜自己的名字了.(这只是可能)
这里有以下自定义的函数或过程:

函数:共 6 个,如下;
Harmset、ibwrt、senset、Freqset、ibrd、range

过程:共 1 个,如下;
stab

常量:8、7、0.8、0.1、11

不知道这些东西的意思,还不敢乱猜
3楼2010-10-29 12:40:09
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

jiashaoxiong

木虫 (正式写手)

nono2009:编辑内容 2010-10-30 15:29
nono2009:建议通使用“引用回复该帖”,不然别人收不到你的回复提示。 2010-10-30 15:29:30
这个确实是一个程序的一部分,不过整个的太多。
CODE:
Declare Function ibinit Lib "gpib.dll" (ByVal ioport As Long, ByVal myaddr As Long, ByVal syscfg As Long) As Long
Declare Function ibwrt Lib "gpib.dll" (ByVal nAddr As Long, ByVal str As String, ByVal ustrlen As Long) As Long
Declare Function ibrd Lib "gpib.dll" (ByVal nAddr As Long, ByVal str As String, ByVal ustrlen As Long) As Long
Declare Function ibifc Lib "gpib.dll" () As Long
Declare Function ibeol Lib "gpib.dll" (ByVal nAddr As Long, ByVal nOEolMode As Long, ByVal pOEolStr As String, ByVal nOEolStrLen As Long, ByVal nIEolMode As Long, ByVal nIEolByte As Long) As Long
Declare Function ibdclr Lib "gpib.dll" (ByVal nAddr As Long) As Long
Declare Function ibllo Lib "gpib.dll" () As Long
Declare Function iblocal Lib "gpib.dll" (ByVal nAddr As Long) As Long
Declare Function ibppl Lib "gpib.dll" () As Long
Declare Function ibpplc Lib "gpib.dll" (ByVal nAddr As Long, ByVal nCfg As Long) As Long
Declare Function ibpplu Lib "gpib.dll" (ByVal nAddr As Long) As Long
Declare Function ibren Lib "gpib.dll" (ByVal nAddr As Long) As Long
Declare Function ibspl Lib "gpib.dll" (ByVal nAddr As Long) As Long
Declare Function ibsts Lib "gpib.dll" (ByVal nCfg As Long) As Long
Declare Function ibtout Lib "gpib.dll" (ByVal uTimeIntvl As Long) As Long
Declare Function ibtrg Lib "gpib.dll" (ByVal nAddr As Long) As Long
Declare Function ibcmd Lib "gpib.dll" (ByVal str As String, ByVal leng As Long) As Long
Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

Public temperature As Single
Public tstart As Single
Public tstop As Single
Public tstep As Single
Public timestart As Single
Public timenow As Single

Public cmd As String * 96
Public r(1 To 4, 1 To 4) As Single
Public th(1 To 4, 1 To 4) As Single
Public range(0 To 25) As Single
Public Freqset(1 To 4) As Single
Public Harmset(1 To 4) As Integer
Public fnum As Integer
Public hnum As Integer
Public senset(1 To 4, 1 To 4) As Integer
这是一些函数声明。
这是一个过程:
Sub stab()

Sleep (300)
cmd = "OFLT 9" + Chr(10)
flag = ibwrt(8, cmd, Len(cmd))
Sleep (2000)
Sleep (2000)
Sleep (2000)

End Sub

这个是一个通过GPIB控制电流表测电流的一部分程序。

[ Last edited by nono2009 on 2010-10-30 at 15:29 ]
4楼2010-10-29 16:02:28
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lhj1987

金虫 (小有名气)

jiashaoxiong(金币+1): 2010-12-11 09:37:19
是个事件吧
呵呵
5楼2010-11-06 19:24:53
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

刘昭然

新虫 (小有名气)

加油!

jiashaoxiong(金币+1): 2010-12-11 09:37:23
我也是新手,学习啦
6楼2010-12-11 08:42:22
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 jiashaoxiong 的主题更新
普通表情 高级回复(可上传附件)
信息提示
请填处理意见