主要内容

使用VISA读写二进制数据

本示例探讨使用Tektronix对VISA对象进行二进制读写操作®TDS210示波器。

VISA对象支持7个接口:ser万博1manbetxial、GPIB、VXI、PXI、USB、serial、TCP/IP和Socket。本例探讨了使用VISA-GPIB对象的二进制读写操作。但是,所有接口的二进制读写操作都是相同的。因此,您可以使用相同的命令。唯一的区别是VISA构造函数中指定的资源名visadev

VISA-Serial对象的二进制读写操作与串口对象的二进制读写操作相同。因此,要了解如何对VISA-Serial对象执行二进制读写操作,请参见读写串口数据

连接到仪器

使用如下所示的VISA资源字符串创建一个VISA- gpib对象。

V = visadev(“GPIB0:: 2:: INSTR”
v =带有属性的GPIB: ResourceName: "GPIB0::2::INSTR"别名:"OSCOPE"供应商:"TEKTRONIX"型号:"TDS 210" BoardIndex: 0 PrimaryAddress: 1 SecondaryAddress: 0显示所有属性,函数

写入二进制数据

使用函数将二进制数据写入仪器。以下命令配置并向仪器发送一个正弦波。

writeline (v,“数据:目的地RefB”);writeline (v,“数据:Encdg SRPbinary”);writeline (v,“数据:宽度2”;writeline (v,“数据:开始1”);T = (0:499) .* 8 * PI / 500;数据=整数(sin(t) * 90 + 127);writeline (v,“曲线# 3500”);写(v、数据“int16”

函数挂起MATLAB®方法所指定的超时发生之前,一直执行超时的属性visadev对象。

默认情况下,函数将二进制数据写入为uint8数据。有关指定其他数据类型的详细信息,请参见

请注意

在执行写操作时,应该从值而不是字节的角度考虑传输的数据。一个值由一个或多个字节组成。例如,一个uint32Value由四个字节组成。

读取二进制数据

使用函数从仪器读取二进制数据。使用以下命令从仪器读取正弦波。

writeline (v,“数据:CH1源”);writeline (v,“数据:Encdg SRIbinary”);writeline (v,“数据:宽度2”);writeline (v,“数据:开始1”);writeline (v,“曲线?”)数据=读取(v,1200,“int16”);

函数暂停MATLAB的执行,直到发生以下情况之一:

  • 方法指定的超时发生超时财产

  • 输入缓冲区已填满

  • 读取指定数量的值

  • EOI线被断言

  • 方法指定的结束符接收《终结者》财产

默认情况下,函数读取二进制数据为uint8数据。有关指定其他数据类型的详细信息,请参见

请注意

在执行读取操作时,应该从值而不是字节的角度考虑接收到的数据。一个值由一个或多个字节组成。例如,一个uint32Value由四个字节组成。

清理

当您完成VISA-GPIB对象的处理后,清除它。

清晰的v

另请参阅

||

相关的话题