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