Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/8.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
python visa/gpib模块中的等效函数ibwrtfW和ibwrtfA_Python_Visa_Gpib - Fatal编程技术网

python visa/gpib模块中的等效函数ibwrtfW和ibwrtfA

python visa/gpib模块中的等效函数ibwrtfW和ibwrtfA,python,visa,gpib,Python,Visa,Gpib,我正在使实验室仪器自动化。 我有一个要求,如功能将通过VISA GPIB从主机PC发送文件/二进制数据到仪器 在Ni4882.h中,有以下函数可以在VisualStudio2010中传输文件/二进制数据,并且可以正常工作。我很熟悉作为GPIB字符串发送命令 但我从未遇到过通过GPIB命令发送文件的情况 这些是我在C++中尝试的函数。我使用了ni4882.obj文件(具有这些函数的定义)并创建了一个应用程序,因此我能够将文件PC传输到instruments。但我无法在python中找到等价的函数

我正在使实验室仪器自动化。 我有一个要求,如功能将通过VISA GPIB从主机PC发送文件/二进制数据到仪器

在Ni4882.h中,有以下函数可以在VisualStudio2010中传输文件/二进制数据,并且可以正常工作。我很熟悉作为GPIB字符串发送命令

但我从未遇到过通过GPIB命令发送文件的情况

这些是我在C++中尝试的函数。我使用了ni4882.obj文件(具有这些函数的定义)并创建了一个应用程序,因此我能够将文件PC传输到instruments。但我无法在python中找到等价的函数

unsigned long NI488CC ibwrtfA  (int ud, const char * filename);
unsigned long NI488CC ibwrtfW  (int ud, const wchar_t * filename);
有人能告诉我pyvisa或visa-python包中的等效函数吗--或者——任何与此替代方案等效的模块

我浏览了pyvisa和visa的所有函数,但没有找到等价的函数

提前谢谢

你可以试试这个方法。请尝试以下代码:

import visa
rm = visa.ResourceManager()

rm.list_resources() # ('ASRL1::INSTR', 'ASRL2::INSTR', 'GPIB0::12::INSTR')
ud = rm.open_resource('GPIB0::12::INSTR') #You need to specify your device here.

#Read the file into data
f = open('file.dat', 'rb')
data = list(f.read())

#Write file into device
ud.write_raw(data)

作为
write_raw
的替代方法,您可以尝试或。如果需要,两者都提供了更多设置。

Sandy,您是否有C/C++中用于处理此任务的工作代码?如果您有,如果您在问题中包含它,您得到有用答案的机会就会增加。@ArtonDorneles我有来自驱动程序standrad NI安装的ni4882.h和ni4882.obj对象文件。请访问链接你尝试过我的答案吗?如果我能为您做任何其他事情,请给我写一行。@ArtonDorneles我尝试了这个选项,但得到了类型错误例外。您能在这里发布错误输出吗?也许我能帮你解决这个问题。