fread (serial)

(Будет удален) Считать двоичные данные с устройства

Этот serial функция object будет удалена в следующем релизе. Использовать serialport вместо этого функции объекта. См. Вопросы совместимости.

Синтаксис

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

Описание

A = fread(obj) и A = fread(obj,size) считайте двоичные данные с устройства, подключенного к объекту последовательного порта, obj, и возвращает данные в A. Максимальное количество значений для чтения определяется size. Если size не задан, максимальное количество считываемых значений определяется InputBufferSize объекта свойство. Допустимые опции для size являются:

n

Читать самое большее n значения в вектор-столбец.

[m,n]

Считайте самое большее значения m на n, заполняя матрицу m на n в порядке столбца.

size невозможно infи возвращается ошибка, если указанное количество значений не может быть сохранено в вход буфере. Вы задаете размер, в байтах, входе буфера с InputBufferSize свойство. Значение определяется как байт, умноженный на precision (см. ниже).

A = fread(obj,size,'precision') считывает двоичные данные с точностью, заданной precision.

precision управляет количеством бит, считанных для каждого значения, и интерпретацией этих бит как целое число, с плавающей точкой или значения символов. Если precision не задан, uchar (используется 8-битный беззнаковый символ). По умолчанию числовые значения возвращаются в массивах двойной точности. Поддерживаемые значения для precision перечислены ниже в советах.

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

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

Совет

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

Если msg не включен в качестве выходного аргумента и операция чтения не была успешной, затем в командную строку возвращается предупреждающее сообщение.

The ValuesReceived значение свойства увеличивается на количество считанных значений каждый раз fread выдается.

Правила завершения операции двоичного чтения

Операция чтения с fread блокирует доступ к MATLAB® командная строка до:

  • Считалось указанное количество значений.

  • Время, заданное как Timeout проходит свойство.

    Примечание

    The Terminator свойство не используется для двоичных операций чтения.

Поддерживаемые точности

Поддерживаемые значения для precision перечислены ниже.

Тип данных

Точность

Интерпретация

Символ

uchar

8-битный беззнаковый символ

schar

8-битный символ со знаком

char

8-битный символ со знаком или без знака

Целое число

int8

8-битное целое число

int16

16-битное целое число

int32

32-битное целое число

uint8

8-битное беззнаковое целое число

uint16

16-битное беззнаковое целое число

uint32

32-битное беззнаковое целое число

short

16-битное целое число

int

32-битное целое число

long

32- или 64-битное целое число

ushort

16-битное беззнаковое целое число

uint

32-битное беззнаковое целое число

ulong

32- или 64-разрядное беззнаковое целое число

С плавающей точкой

single

32-битная плавающая точка

float32

32-битная плавающая точка

float

32-битная плавающая точка

double

64-битная плавающая точка

float64

64-битная плавающая точка

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

расширить все

Не рекомендуемый запуск в R2019b

См. также

Функции

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