(Не рекомендуемый) Считанные двоичные данные из устройства
Этот 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
:
| Читайте в большей части |
| Читайте в большинстве значений 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
описаны ниже.
Тип данных | Точность | Интерпретация |
---|---|---|
Символ |
| 8-битный символ без знака |
| 8-битный символ со знаком | |
| 8-битный символ без знака или со знаком | |
Целое число |
| 8-битное целое число |
| 16-битное целое число | |
| 32-битное целое число | |
| 8-битное беззнаковое целое | |
| 16-битное беззнаковое целое | |
| 32-битное беззнаковое целое | |
| 16-битное целое число | |
| 32-битное целое число | |
| 32-или 64-битное целое число | |
| 16-битное беззнаковое целое | |
| 32-битное беззнаковое целое | |
| 32-или 64-битное беззнаковое целое | |
С плавающей точкой |
| 32-битная плавающая точка |
| 32-битная плавающая точка | |
| 32-битная плавающая точка | |
| 64-битная плавающая точка | |
| 64-битная плавающая точка |