3

简单的程序:

import visa
rm = visa.ResourceManager()
list=rm.list_resources()
print(list) # list[0] is RS-232 reference
my_instrument = rm.open_resource(list[0])
print(my_instrument.query('*IDN?'))
#it works fine until this point, asking for one line of text only.
print(my_instrument.query('CURVE?'))
#After this oscilloscope is sending lots of data (1000 digits formatted as strings). 

我得到:

在蟒蛇 3.4

“VI_ERROR_TMO (-1073807339):在操作完成之前超时。”

在蟒蛇 3.6

VI_ERROR_ASRL_OVERRUN "传输过程中发生溢出错误。在下一个字符到达之前未从硬件读取字符。

据我所知,与数据发送速度相比,pyVisa 的读取速度太慢了。当我使用 pyVisa/GPIB 或 pySerial/COM 时,相同的程序正在工作。

我怎样才能让它更快,或者我能做些什么来通过 pyVisa/COM 获取这些数据?

4

0 回答 0