Считайте binblock данные из инструмента
A = binblockread(obj)
A = binblockread(obj,'precision
')
[A,count] = binblockread(...)
[A,count,msg] = binblockread(...)
| Интерфейсный объект. |
| Количество битов, считанных из каждого значения и интерпретации битов как символ, целое число или значения с плавающей точкой. |
| Данные Binblock возвращены в инструмент. |
| Количество чтения значений. |
| Сообщение, указывающее, была ли операция чтения неудачна. |
A = binblockread(obj)
бинарный блок чтений (binblock) данные из инструмента, соединенного с obj
и возвращает значения к A
. binblock формат описан в binblockwrite
страницы с описанием.
A = binblockread(obj,'
чтения binblock данные, переводящие значения MATLAB® в точность, заданы precision
')precision
. По умолчанию uchar
точность используется, и числовые значения возвращены в массивах с двойной точностью. Обратитесь к fread
функция для списка поддерживаемой точности.
[A,count] = binblockread(...)
возвращает количество чтения значений к count
.
[A,count,msg] = binblockread(...)
возвращает предупреждающее сообщение в msg
если операция чтения не завершалась успешно.
Создайте объект GPIB g
сопоставленный с Национальным контроллером Instruments® GPIB с параметром плат 0 и осциллографом Tektronix® TDS 210 с первичным адресом 2.
g = gpib('ni',0,2); g.InputBufferSize = 3000;
Соедините g
к инструменту и записи представляют в виде строки команды, которые конфигурируют осциллограф, чтобы передать данные о сигнале в двоичной форме из ячейки памяти A.
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);
Если осциллограф отправляет оконечный знак после binblock, 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
значение свойства увеличено на количество чтения значений.
Некоторые инструменты могут отправить оконечный знак после binblock. binblockread не считает оконечный знак. Можно считать оконечный знак с fread
функция. Кроме того, если obj
GPIB, VISA-GPIB, VISA-VXI, VISA-USB или объект VISA-RSIB, можно использовать clrdevice
функция, чтобы удалить оконечный знак.
Чтобы получить список опций, можно использовать на функции, нажать клавишу Tab после ввода функции на командной строке MATLAB. Список расширяется, и можно прокрутить, чтобы выбрать свойство или значение. Для получения информации об использовании этой функции завершения вкладки "Дополнительно" смотрите Используя Заполнение клавишей Tab для Функций.