configureCallback

Установите функцию обратного вызова и условие триггера для связи с устройством последовательного порта

Описание

пример

configureCallback(device,"terminator",callbackFcn) устанавливает функцию обратного вызова callbackFcn запускается каждый раз, когда терминатор строки доступен для чтения с заданного последовательного порта. Синтаксис устанавливает BytesAvailableFcnMode свойство device на "terminator" и BytesAvailableFcn свойство к callbackFcn.

Установите символ терминатора строки используя.

пример

configureCallback(device,"byte",count,callbackFcn) устанавливает функцию обратного вызова callbackFcn запускать каждый раз, когда новая count Доступно количество байтов для чтения. Синтаксис устанавливает BytesAvailableFcnMode свойство device на "byte", а BytesAvailableFcnCount свойство к count, и BytesAvailableFcn свойство к callbackFcn.

пример

configureCallback(device,"off") отключает коллбэки. Синтаксис устанавливает BytesAvailableFcnMode свойство device на "off".

Примеры

свернуть все

Создайте соединение с устройством последовательного порта.

device = serialport("COM3",9600)
device = 

  Serialport with properties:

                 Port: "COM3"
             BaudRate: 9600
    NumBytesAvailable: 0

  Show all properties, functions

Установите коллбэк, чтобы срабатывать, когда терминатор строки доступен для чтения.

configureCallback(device,"terminator",@callbackFcn)

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

device.BytesAvailableFcnMode
device.BytesAvailableFcn
ans = 

    "terminator"


ans =

  function_handle with value:

    @callbackFcn

Отключите коллбэк.

configureCallback(device,"off")

Проверьте, что коллбэк отключен.

device.BytesAvailableFcnMode
ans = 

    "off"

Создайте соединение с устройством последовательного порта.

device = serialport("COM3",9600)
device = 

  Serialport with properties:

                 Port: "COM3"
             BaudRate: 9600
    NumBytesAvailable: 0

  Show all properties, functions

Установите коллбэк, чтобы инициировать каждый раз, когда доступно 50 новых байтов данных для чтения.

configureCallback(device,"byte",50,@callbackFcn)

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

device.BytesAvailableFcnMode
device.BytesAvailableFcnCount
device.BytesAvailableFcn
ans = 

    "byte"


ans =

    50


ans =

  function_handle with value:

    @callbackFcn

Отключите коллбэк.

configureCallback(device,"off")

Проверьте, что коллбэк отключен.

device.BytesAvailableFcnMode
ans = 

    "off"

Создайте соединение с устройством последовательного порта.

device = serialport("COM3",9600)
device = 

  Serialport with properties:

                 Port: "COM3"
             BaudRate: 9600
    NumBytesAvailable: 0

  Show all properties, functions

Создайте функцию обратного вызова, которая считывает ASCII-оконечные строки данные и сохраняет их в UserData свойство device.

function readSerialData(src,evt)
    data = readline(src);
    src.UserData = data;
end

Установите коллбэк, чтобы срабатывать, когда терминатор строки доступен для чтения.

configureCallback(device,"terminator",@readSerialData)

Входные параметры

свернуть все

Последовательное соединение портов, заданное как a serialport объект.

Пример: configureCallback(device,"byte",128,@callbackFcn) устанавливает callbackFcn коллбэк, чтобы инициировать каждый раз, когда 128 байтов новых данных доступны для чтения с последовательного порта device.

Количество байтов доступных данных для запуска коллбэка, заданное в виде положительного целого значения. Установите BytesAvailableFcnCount свойство, использующее этот аргумент.

Пример: configureCallback(device,"byte",128,@callbackFcn) устанавливает callbackFcn коллбэк, чтобы инициировать каждый раз, когда доступно 128 байтов новых данных для чтения.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Функция обратного вызова, которая запускается при выполнении условия триггера, задается как указатель на функцию. Указатель на функцию может быть именованным указателем на функцию или анонимной функцией с входными параметрами. Установите BytesAvailableFcn свойство, использующее этот аргумент.

Пример: configureCallback(device,"terminator",@callbackFcn) устанавливает callbackFcn Коллбэк для запуска, когда терминатор строки доступен для чтения.

Типы данных: function_handle

См. также

Функции

Введенный в R2019b