ReadAsyncMode

Задайте, является ли асинхронная операция чтения непрерывной или ручной

Описание

Можно сконфигурировать ReadAsyncMode, чтобы быть continuous или manual. Если ReadAsyncMode является continuous, объект последовательного порта постоянно запрашивает устройство, чтобы определить, доступны ли данные, чтобы быть считанными. Если данные доступны, они автоматически читаются и хранятся во входном буфере. Если выпущено, функция readasync проигнорирована.

Если ReadAsyncMode является manual, объект не запрашивает устройство, чтобы определить, доступны ли данные, чтобы быть считанными. Вместо этого необходимо вручную выпустить функцию readasync, чтобы выполнить асинхронную операцию чтения. Поскольку проверки readasync на терминатор строки, эта функция может быть медленной. Чтобы увеличить скорость, сконфигурируйте ReadAsyncMode к continuous.

Примечание

Если устройство будет готово передать данные, оно сделает так независимо от значения ReadAsyncMode. Поэтому, если ReadAsyncMode является manual, и операция чтения не происходит, данные могут быть потеряны. Чтобы гарантировать, что все передаваемые данные хранятся во входном буфере, необходимо сконфигурировать ReadAsyncMode к continuous.

Чтобы определить объем данных, доступный во входном буфере, используйте свойство BytesAvailable. Или для значения ReadAsyncMode, можно принести данные в рабочую область MATLAB® с одной из синхронных функций чтения, таких как fscanf, fgetl, fgets или для fread.

Характеристики

Только для чтения

Никогда

Тип данных

Строка

Значения

{continuous}

Постоянно запрашивайте устройство, чтобы определить, доступны ли данные, чтобы быть считанными.

manual

Вручную считайте данные из устройства с помощью функции readasync.