Считайте данные бинблока из инструмента
A = binblockread(obj)
A = binblockread(obj,'precision
')
[A,count] = binblockread(...)
[A,count,msg] = binblockread(...)
| Объект интерфейса. |
| Количество бит, считанных для каждого значения, и интерпретация бит как символов, целого числа или значений с плавающей точкой. |
| Данные binblock, возвращенные с инструмента. |
| Количество считанных значений. |
| Сообщение, указывающее, была ли операция чтения неудачной. |
A = binblockread(obj)
считывает данные двоичного блока (binblock) из инструмента, подключенного к obj
и возвращает значения в A
. Формат бинблока описан в binblockwrite
страницы с описанием.
A = binblockread(obj,'
считывает данные бинблока, преобразовывая MATLAB® значения к точности, заданной precision
')precision
. По умолчанию uchar
используется точность, и числовые значения возвращаются в массивах двойной точности. См. fread
функция для списка поддерживаемых прецизий.
[A,count] = binblockread(...)
возвращает количество значений, считанных в count
.
[A,count,msg] = binblockread(...)
возвращает предупреждающее сообщение в msg
если операция чтения не завершилась успешно.
Создайте объект GPIB g
связанные с National Instruments ™® Контроллер GPIB с индексом платы 0 и Tektronix® Осциллограф TDS 210 с первичным адресом 2.
g = gpib('ni',0,2); g.InputBufferSize = 3000;
Соедините g
и записывайте строковые команды, которые конфигурируют возможности для передачи двоичных данных формы волны из места А памяти.
fopen(g) fprintf(g,'DATA:DESTINATION REFA'); fprintf(g,'DATA:ENCDG SRPbinary'); fprintf(g,'DATA:WIDTH 1'); fprintf(g,'DATA:START 1');
Напишите CURVE?
команда, которая подготавливает возможности для передачи данных и считывает данные с помощью формата binblock.
fprintf(g,'CURVE?') data = binblockread(g);
Если возможности отправляют завершающий символ после бинблока, binblockread
не считывает завершающий символ. Прочтите его при помощи fread
. В этом примере count
количество байтов оконечного символа и может быть 1
или 2
.
if g.BytesAvailable == count fread(g,count,'uint8'); end
Прежде чем вы сможете считать данные с прибора, он должен быть подключен к obj
с fopen
функция. Связанный объект интерфейса имеет Status
значение свойства open
. Ошибка возвращается, если вы пытаетесь выполнить операцию чтения во время obj
не соединяется с прибором.
binblockread блокирует Командное Окно MATLAB до тех пор, пока не произойдет одно из следующих событий:
Данные считываются полностью.
Время, заданное как Timeout
проходит свойство.
Если msg
не включен в качестве выходного аргумента и операция чтения не была успешной, затем в командную строку возвращается предупреждающее сообщение.
Каждый раз, когда binblockread выдается, ValuesReceived
значение свойства увеличивается на количество считанных значений.
Некоторые инструменты могут послать завершающий символ после бинблока. binblockread не будет считать завершающий символ. Вы можете считать завершающий символ с fread
функция. Дополнительно, если obj
является объектом GPIB, VISA-GPIB, VISA-VXI, VISA-USB или VISA-RSIB, можно использовать clrdevice
функция для удаления оконечного символа.
Примечание
Чтобы получить список опций, которые можно использовать для функции, нажмите клавишу Tab после ввода функции в командной строке MATLAB. Список расширяется, и можно прокрутить, чтобы выбрать свойство или значение. Для получения информации об использовании этой расширенной функции заполнения клавишей Tab, смотрите Использование заполнения клавишей Tab для функций.