DataAvailable

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

Описание

пример

lh = addlistener(session,'DataAvailable',callbackfct); создает прослушиватель для DataAvailable событие. Когда данные доступны для процесса, коллбэк выполняется. Коллбэк может быть любой функцией MATLAB® с (src,event) подпись.

Совет

Частота, с который DataAvailable событие запущено, управляется NotifyWhenDataAvailableExceeds

пример

lh = addlistener(session,'DataAvailable',@(src,event) expr) создает прослушиватель для DataAvailable событие и огни анонимная функция обратного вызова. Анонимная функция требует заданных входных параметров и выполняет операцию, заданную в выражении expr. Анонимные функции обеспечивают быстрые средние значения создания простых функций, не храня вашу функцию в отдельном файле. Для получения дополнительной информации см. Анонимные функции (MATLAB).

Коллбэк имеет два обязательных параметра: src и eventsrc объект сеанса для прослушивателя и event daq.DataAvailableInfo объект, содержащий сопоставленные данные и время выполнения. Свойства daq.DataAvailableInfo :

Данные

m- n матрица удваивается где m количество сканирований, полученных, и n количество входных каналов на сеансе.

TimeStamps

Метки времени относительно TriggerTime в m- 1 массив, где m количество полученных сканирований.

TriggerTime

MATLAB последовательная метка времени даты, представляющая абсолютное время триггер приобретения, происходит.

Примеры

свернуть все

В этом примере показано, как создать событие, которое инициировало функцию обратного вызова, чтобы отобразить данные на графике.

Создайте сеанс, добавьте канал аналогового входа и измените длительность приобретения.

s = daq.createSession('ni');
addAnalogInputChannel(s,'cDAQ1Mod1','ai0','Voltage');
s.DurationInSeconds = 5;

Добавьте прослушиватель для DataAvailable событие, чтобы инициировать коллбэк графического вывода.

lh = addlistener(s,'DataAvailable',@plotData);

Создайте функцию, которая отображает данные на графике, когда событие имеет место.

 function plotData(src,event)
     plot(event.TimeStamps,event.Data)
end

Запустите приобретение и ожидайте.

startBackground(s);
wait(s)

Удалите прослушиватель.

delete(lh)

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

Создайте сеанс, добавьте канал аналогового входа и измените длительность приобретения.

s = daq.createSession('ni');
addAnalogInputChannel(s,'cDAQ1Mod1','ai0','Voltage');
s.DurationInSeconds = 5;

Добавьте слушать с вызовом анонимной функции.

lh = s.addlistener('DataAvailable', ...
          @(src,event) plot(event.TimeStamps, event.Data));

Получите данные.

s.startBackground();

Удалите прослушиватель.

delete(lh)

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

свернуть все

Сеанс сбора данных, заданный как объект сеанса. Создайте объект сеанса использование daq.createSession. Используйте сеанс сбора данных в операциях приобретения и генерации. Создайте один сеанс на поставщика и используйте тот сеанс поставщика, чтобы выполнить все операции сбора данных.

Функция обратного вызова, определенный функцией указатель.

Анонимная функция обратного вызова, заданная как операция MATLAB. Выражение выполняется, когда триггер происходит.

Представленный в R2010b

Для просмотра документации необходимо авторизоваться на сайте