Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SCPI命令VB.net在循环中显示值_Vb.net_Visual Studio_Gpib - Fatal编程技术网

SCPI命令VB.net在循环中显示值

SCPI命令VB.net在循环中显示值,vb.net,visual-studio,gpib,Vb.net,Visual Studio,Gpib,我通过GPIB-USB向信号发生器发送SCPI命令。我正在发送一个改变频率的命令,这个命令是循环的,所以频率会一直改变,直到循环完成。这是成功的。我还发送了一个命令来读取频率。我希望能够读取每一步的频率 我用它作为从信号发生器读写的参考 我遇到的问题是,在我完成循环之前,频率不会显示在我的文本框中。然后,我看到最后一个频率,是500。我在VisualStudio中插入了一个断点,我确实看到频率值正在更改,但是我的文本框(应该显示该值)没有正确更新。信号发生器上的值也在变化。我甚至尝试只显示F而不

我通过GPIB-USB向信号发生器发送SCPI命令。我正在发送一个改变频率的命令,这个命令是循环的,所以频率会一直改变,直到循环完成。这是成功的。我还发送了一个命令来读取频率。我希望能够读取每一步的频率

我用它作为从信号发生器读写的参考

我遇到的问题是,在我完成循环之前,频率不会显示在我的文本框中。然后,我看到最后一个频率,是500。我在VisualStudio中插入了一个断点,我确实看到频率值正在更改,但是我的文本框(应该显示该值)没有正确更新。信号发生器上的值也在变化。我甚至尝试只显示F而不是sig gen的值。我的程序只是不想在我创建的文本框中显示频率,直到循环完成。 为什么我不能一步一步地阅读每个频率?我如何解决这个问题

Dim F As Integer
Dim Frequency As Integer
Dim dblData As Double
Dim strReply As String

For F = 30 To 500 'MHz 30 to 500
    System.Threading.Thread.Sleep(100) 'delay of 100 ms
    Frequency = F
    instrument.WriteString("FREQ" & Str$(F) & "MHZ") 'send SCPI command, with F being converted to string
    System.Threading.Thread.Sleep(100)
    instrument.WriteString("FREQ?") 'ask signal generator what frequency is
    System.Threading.Thread.Sleep(100)
    strReply = instrument.ReadString()
    dblData = Val(strReply)
    SigGenFreqValueLabel.Text = dblData 'display frequency from signal generator in text box
    Console.WriteLine("Frequency" & F) 'Testing if this portion of the for loop is reached
Next
决议: 我在SigGenFreqValueLabel.Text=dblData下面插入了Application.DoEvents()