exponenta event banner

вопрос

Запись текста в прибор и считывание данных с прибора

Синтаксис

out = query(obj,'cmd')
out = query(obj,'cmd','wformat')
out = query(obj,'cmd','wformat','rformat')
[out,count] = query(...)
[out,count,msg] = query(...)
[out,count,msg,datagramaddress,datagramport] = query(...)

Аргументы

obj

Объект интерфейса.

'cmd'

Строка, записанная на инструмент.

'wformat'

Формат для записанных данных.

'rformat'

Формат для чтения данных.

out

Содержит данные, считанные из прибора.

count

Число прочитанных значений.

msg

Сообщение, указывающее, не удалась ли операция чтения.

datagramaddress

Адрес дейтаграммы.

datagramport

Порт дейтаграммы.

Описание

out = query(obj,'cmd') записывает строку cmd к прибору, подключенному к obj. Данные, считанные с прибора, возвращаются в out. По умолчанию %s\n формат используется для cmd, и %c используется для возвращенных данных.

out = query(obj,'cmd','wformat') записывает строку cmd используя формат, указанный в wformat.

wformat - спецификация преобразования языка Си. Спецификации преобразования включают % и символы преобразования d, i, o, u, x, X, f, e, E, g, G, c и s. См. sprintf спецификации формата ввода-вывода файла или руководство C для получения дополнительной информации.

out = query(obj,'cmd','wformat','rformat') записывает строку cmd используя формат, указанный в wformat. Данные, считанные с прибора, возвращаются в out используя формат, указанный в rformat.

rformat - спецификация преобразования языка Си. Поддерживаемые спецификации преобразования идентичны спецификациям, поддерживаемым wformat.

[out,count] = query(...) возвращает число значений, считанных с count.

[out,count,msg] = query(...) возвращает предупреждающее сообщение msg если операция чтения не была успешно завершена.

[out,count,msg,datagramaddress,datagramport] = query(...) возвращает удаленный адрес и порт, из которого была создана дейтаграмма. Эти значения возвращаются только при использовании объекта UDP.

Примеры

В этом примере создается объект GPIB g, подключает g в осциллограф Tektronix ® TDS 210, записывает и считывает текстовые данные с помощьюquery, а затем отключает g от инструмента.

g = gpib('ni',0,1);
fopen(g)
idn = query(g,'*IDN?')
idn =
TEKTRONIX,TDS 210,0,CF:91.1CT FV:v1.16 TDS2CM:CMV:v1.04
fclose(g)

Совет

Прежде чем можно будет записать или прочитать данные, obj должны быть подключены к прибору с помощью fopen функция. Подключенный объект интерфейса имеет Status значение свойства open. При попытке выполнить операцию запроса во время obj не подключен к прибору.

query работает только в синхронном режиме и блокирует командную строку до завершения выполнения операций записи и чтения.

Используя query эквивалентно использованию fprintf и fgets функции. Правила выполнения операции записи описаны в fprintf справочные страницы. Правила выполнения операции чтения описаны в fgets справочные страницы.

Примечание

Чтобы получить список опций, которые можно использовать для функции, нажмите клавишу Tab после ввода функции в командной строке MATLAB ®. Список расширяется, и можно выполнить прокрутку для выбора свойства или значения. Сведения об использовании этой расширенной функции завершения вкладки см. в разделе Использование функции завершения вкладки для функций.

Вопросы совместимости

развернуть все

Не рекомендуется начинать с R2019b

Не рекомендуется начинать с R2020b

Не рекомендуется начинать с R2020b

Не рекомендуется начинать с R2020b

Не рекомендуется начинать с R2021a

См. также

Функции

Свойства

Представлен до R2006a