fread (serial)

(Не рекомендуемый) Считанные двоичные данные из устройства

Этот serial объектная функция не рекомендуется. Использование 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 не включен как выходной аргумент, и операция чтения не была успешна, затем предупреждающее сообщение возвращено в командную строку.

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

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

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

  • Конкретное количество значений читается.

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

    Примечание

    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