Считайте двоичные данные из инструмента
A = fread(obj)
A
= fread(obj,size)
A = fread(obj,size,'precision
')
[A,count] = fread(...)
[A,count,msg] = fread(...)
[A,count,msg,datagramaddress] = fread(obj,...)
[A,count,msg,datagramaddress,datagramport]
= fread(obj,...)
| Интерфейсный объект. |
| Количество значений, чтобы читать. |
| Количество битов, считанных из каждого значения и интерпретации битов как символ, целое число или значения с плавающей точкой. |
| Двоичные данные возвращены в инструмент. |
| Количество чтения значений. |
| Сообщение, указывающее, была ли операция чтения неудачна. |
| Адрес дейтаграммного отправителя. |
| Порт дейтаграммного отправителя. |
A = fread(obj)
и A
= fread(obj,size)
считайте двоичные данные из инструмента, соединенного с obj
, и возвращает данные в A
. Максимальное количество значений, чтобы читать задано size
. Если size
не задан, максимальное количество значений, чтобы читать определяется InputBufferSize
объекта свойство. Допустимые опции для
size
:
| Читайте в большей части |
| Читайте в большинстве значений m на n, заполняющих матрицу m на n в порядке следования столбцов. |
size
не может быть inf
, и ошибка возвращена, если конкретное количество значений не может храниться во входном буфере. Вы задаете размер, в байтах, входного буфера с InputBufferSize
свойство. Значение задано как байт, умноженный на precision
(см. ниже).
Если obj
объект UDP и DatagramTerminateMode
off
, size
значение соблюдается. Если size
меньше длины дейтаграммы, только size
значения читаются. Если size
больше длины дейтаграммы, предупреждение выдано, утвердив, что полная дейтаграмма была считана перед size
значения были достигнуты.
A = fread(obj,size,'
считывает двоичные данные с точностью, заданной precision
')precision
.
precision
управляет количеством битов, считанных из каждого значения и интерпретации тех битов как целое число, или символьные значения с плавающей точкой. Если precision
не задан, uchar
(8-битный символ без знака), используется. По умолчанию числовые значения возвращены в массивах с двойной точностью. Поддерживаемые значения для precision
описаны ниже в Советах.
[A,count] = fread(...)
возвращает количество чтения значений к count
.
[A,count,msg] = fread(...)
возвращает предупреждающее сообщение в msg
если операция чтения была неудачна.
[A,count,msg,datagramaddress] = fread(obj,...)
возвращает дейтаграммный адрес в datagramaddress
если obj
объект UDP. Если больше чем одна дейтаграмма читается, datagramaddress
''.
[A,count,msg,datagramaddress,datagramport]
= fread(obj,...)
возвращает дейтаграммный порт в datagramport
если obj
объект UDP. Если больше чем одна дейтаграмма читается, datagramport
[].
Прежде чем можно будет считать данные из инструмента, они должны быть соединены с obj
с fopen
функция. Связанный интерфейсный объект имеет Status
значение свойства open
. Ошибка возвращена, при попытке выполнить операцию чтения в то время как obj
не соединяется с инструментом.
Если msg
не включен как выходной аргумент, и операция чтения не была успешна, затем предупреждающее сообщение возвращено в командную строку.
ValuesReceived
значение свойства увеличено на количество чтения значений, каждый раз fread
выпущен.
Примечание
Чтобы получить список опций, можно использовать на функции, нажать клавишу Tab после ввода функции на командной строке MATLAB®. Список расширяется, и можно прокрутить, чтобы выбрать свойство или значение. Для получения информации об использовании этой функции завершения вкладки "Дополнительно" смотрите Используя Заполнение клавишей Tab для Функций.
Операция чтения с fread
блокирует доступ к командному окну MATLAB до
Конкретное количество значений читается. Для объектов UDP, DatagramTerminateMode
должен быть off
.
Время задано Timeout
передачи свойства.
Дейтаграмма получена (для объектов UDP только, когда DatagramTerminateMode
on
).
Входной буфер заполнен.
Линия EOI утверждается (только GPIB и инструменты VXI).
EOSCharCode
получен (только GPIB и инструменты VXI).
EOSCharCode
значение свойства распознано только когда EOSMode
свойство сконфигурировано к read
или read&write
. Например, если EOSMode
сконфигурирован к read
и EOSCharCode
сконфигурирован к LF
, затем один из способов, которыми завершает работу операция чтения, - когда символ перевода строки получен.
Если EOSMode
none
или write
, затем нет никакого терминатора строки, заданного для операций чтения. В этом случае, fread
завершит выполнение и возвратит управление в команду, когда другому критерию, такому как тайм-аут, будут соответствовать.
Поддерживаемые значения для precision
описаны ниже.
Тип данных | Точность | Интерпретация |
---|---|---|
Символ |
| 8-битный символ без знака |
| 8-битный символ со знаком | |
| 8-битный символ без знака или со знаком | |
Целое число |
| 8-битное целое число |
| 16-битное целое число | |
| 32-битное целое число | |
| 8-битное беззнаковое целое | |
| 16-битное беззнаковое целое | |
| 32-битное беззнаковое целое | |
| 16-битное целое число | |
| 32-битное целое число | |
| 32-или 64-битное целое число | |
| 16-битное беззнаковое целое | |
| 32-битное беззнаковое целое | |
| 32-или 64-битное беззнаковое целое | |
С плавающей точкой |
| 32-битная плавающая точка |
| 32-битная плавающая точка | |
| 32-битная плавающая точка | |
| 64-битная плавающая точка | |
| 64-битная плавающая точка |