Запишите двоичные данные в инструмент
fwrite(obj,A)
fwrite(obj,A,'precision')
fwrite(obj,A,'mode')
fwrite(obj,A,'precision','mode')
| Интерфейсный объект. |
| Двоичные данные записаны в инструмент. |
| Количество битов, записанных для каждого значения и интерпретации битов как символ, целое число или значения с плавающей точкой. |
| Задает, записаны ли данные синхронно или асинхронно. |
fwrite(obj,A) пишут двоичные данные A в инструмент, соединенный с obj.
fwrite(obj,A,' двоичные данные записей с точностью, заданной precision').precision
управляет количеством битов, записанных для каждого значения и интерпретации тех битов как целое число, или символьные значения с плавающей точкой. Если precision не задан, precisionuchar (8-битный символ без знака) используется. Значения поддержки для перечислены в Поддерживаемой Точности.precision
fwrite(obj,A,' двоичные данные записей с доступом к командной строке, заданным mode')mode. Если mode является sync, A записан синхронно, и командная строка блокируется. Если mode является async, A записан асинхронно, и командная строка не блокируется. Если mode не задан, операция записи синхронна.
fwrite(obj,A,' двоичные данные записей с точностью, заданной precision','mode') и доступом из коммандной строки, заданы precision.mode
Прежде чем можно будет записать данные к инструменту, он должен быть соединен с obj с функцией fopen. Связанный интерфейсный объект имеет значение свойства Status open. Ошибка возвращена, при попытке выполнить операцию записи, в то время как obj не соединяется с инструментом.
Значение свойства ValuesSent увеличено количеством значений, записанных каждый раз, когда fwrite выпущен.
Ошибка происходит, если буфер вывода не может содержать все данные, которые будут записаны. Можно задать размер буфера вывода со свойством OutputBufferSize.
fwrite возвратит сообщение об ошибке, если вы установите свойство FlowControl на hardware на последовательном объекте, и аппаратная связь не обнаруживается. Это происходит, если устройство не соединяется, или подключенное устройство не утверждает, что это готово получить данные. Проверяйте вас состояние удаленного устройства и настройки управления потоками, чтобы видеть, вызывает ли аппаратное управление потоками ошибки в MATLAB®.
Если вы хотите проверять, чтобы видеть, утверждает ли устройство, что это готово получить данные, установите FlowControl на none. Если вы соединяете с проверкой устройства структуру PinStatus для ClearToSend. Если ClearToSend является off, на стороне удаленного устройства существует проблема. Если ClearToSend является on, существует оборудование, устройство FlowControl подготовилось получать данные, и можно выполнить fwrite.
Чтобы получить список опций, можно использовать на функции, нажать клавишу Tab после ввода функции на командной строке MATLAB. Список расширяется, и можно прокрутить, чтобы выбрать свойство или значение. Для получения информации об использовании этой функции завершения вкладки "Дополнительно" смотрите Используя Заполнение клавишей Tab для Функций.
По умолчанию данные записаны в инструмент синхронно, и командная строка блокируется, пока операция не завершается. Можно выполнить асинхронную запись путем конфигурирования входного параметра mode, чтобы быть async. Для асинхронных записей,
Значение свойства BytesToOutput постоянно обновляется, чтобы отразить количество байтов в буфере вывода.
Функция обратного вызова, заданная для свойства OutputEmptyFcn, выполняется, когда буфер вывода пуст.
Можно определить, происходит ли асинхронная операция записи со свойством TransferStatus.
Синхронные и асинхронные операции записи обсуждены более подробно в Синхронном По сравнению с Асинхронными Операциями записи.
Бинарная операция записи с помощью fwrite завершается когда
Заданные данные записаны.
Прошло время, заданное как свойство Timeout.
Свойства Terminator и EOSCharCode не используются с бинарными операциями записи.
Поддерживаемые значения для precision описаны ниже.
Тип данных | Точность | Интерпретация |
|---|---|---|
Символ |
| 8-битный символ без знака |
| 8-битный символ со знаком | |
| 8-битный символ без знака или со знаком | |
Целое число |
| 8-битное целое число |
| 16-битное целое число | |
| 32-битное целое число | |
| 8-битное беззнаковое целое | |
| 16-битное беззнаковое целое | |
| 32-битное беззнаковое целое | |
| 16-битное целое число | |
| 32-битное целое число | |
| 32-или 64-битное целое число | |
| 16-битное беззнаковое целое | |
| 32-битное беззнаковое целое | |
| 32-или 64-битное беззнаковое целое | |
С плавающей точкой |
| 32-битная плавающая точка |
| 32-битная плавающая точка | |
| 32-битная плавающая точка | |
| 64-битная плавающая точка | |
| 64-битная плавающая точка |
OutputBufferSize | OutputEmptyFcn | Status | Timeout | TransferStatus | ValuesSent | fopen | fprintf | instrhelp