This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English version of the page.

Note: This page has been translated by MathWorks. Please click here
To view all translated materials including this page, select Japan from the country navigator on the bottom of this page.


Read binblock data from instrument


A = binblockread(obj)
A = binblockread(obj,'precision')
[A,count] = binblockread(...)
[A,count,msg] = binblockread(...)



An interface object.


The number of bits read for each value, and the interpretation of the bits as character, integer, or floating-point values.


Binblock data returned from the instrument.


The number of values read.


A message indicating if the read operation was unsuccessful.


A = binblockread(obj) reads binary-block (binblock) data from the instrument connected to obj and returns the values to A. The binblock format is described in the binblockwrite reference pages.

A = binblockread(obj,'precision') reads binblock data translating the MATLAB® values to the precision specified by precision. By default the uchar precision is used and numeric values are returned in double-precision arrays. Refer to the fread function for a list of supported precisions.

[A,count] = binblockread(...) returns the number of values read to count.

[A,count,msg] = binblockread(...) returns a warning message to msg if the read operation did not complete successfully.


Create the GPIB object g associated with a National Instruments® GPIB controller with board index 0, and a Tektronix® TDS 210 oscilloscope with primary address 2.

g = gpib('ni',0,2);
g.InputBufferSize = 3000;

Connect g to the instrument, and write string commands that configure the scope to transfer binary waveform data from memory location A.

fprintf(g,'DATA:ENCDG SRPbinary');
fprintf(g,'DATA:WIDTH 1');
fprintf(g,'DATA:START 1');

Write the CURVE? command, which prepares the scope to transfer data, and read the data using the binblock format.

data = binblockread(g);


Before you can read data from the instrument, it must be connected to obj with the fopen function. A connected interface object has a Status property value of open. An error is returned if you attempt to perform a read operation while obj is not connected to the instrument.

binblockread blocks the MATLAB Command Window until one of the following occurs:

  • The data is completely read.

  • The time specified by the Timeout property passes.

If msg is not included as an output argument and the read operation was not successful, then a warning message is returned to the command line.

Each time binblockread is issued, the ValuesReceived property value is increased by the number of values read.

Some instruments may send a terminating character after the binblock. binblockread will not read the terminating character. You can read the terminating character with the fread function. Additionally, if obj is a GPIB, VISA-GPIB, VISA-VXI, VISA-USB, or VISA-RSIB object, you can use the clrdevice function to remove the terminating character.


If you do not set the terminator property to '' (null) before you execute fprintf or fwrite, binblockread may return incomplete data.


To get a list of options you can use on a function, press the Tab key after entering a function on the MATLAB command line. The list expands, and you can scroll to choose a property or value. For information about using this advanced tab completion feature, see Using Tab Completion for Functions.

Introduced before R2006a

Was this topic helpful?