Уведомите, когда связанные с устройством ошибки произойдут
lh = addlistener(session,'ErrorOccurred',callbackfct);
lh = addlistener(session,'ErrorOccurred',@(src,event)
expr);
lh = addlistener(
создает прослушиватель для события session
,'ErrorOccurred',callbackfct
);ErrorOccurred
. Когда ошибка происходит, коллбэк выполняется. Коллбэк может быть любой функцией MATLAB® с подписью (src,event)
.
В фоновом режиме ошибки и исключения не отображены по умолчанию. Используйте прослушиватель события ErrorOccurred
, чтобы отобразить ошибки.
lh = addlistener(
создает прослушиватель для события session
,'ErrorOccurred',@(src,event)
expr
);ErrorOccurred
и запускает анонимную функцию. Анонимная функция требует заданных входных параметров и выполняет операцию, заданную в выражении expr
. Анонимные функции обеспечивают быстрые средние значения создания простых функций, не требуя что ваша функция быть сохраненными в отдельном файле. Для получения дополнительной информации см. Анонимные функции (MATLAB).
Коллбэк имеет два обязательных параметра: src
и event
. src
является объектом сеанса для прослушивателя, и event
является объектом daq.ErrorOccurredInfo
. Объект daq.ErrorOccurredInfo
содержит свойство Error
, которое является MException
, сопоставленным с ошибкой. Можно использовать метод MException.getReport
, чтобы возвратить форматированное сообщение, которое использует тот же формат в качестве ошибок, выданных внутренним кодом MATLAB.
Создайте сеанс и добавьте канал аналогового входа.
s = daq.createSession('ni'); addAnalogInputChannel(s,'cDAQ1Mod1','ai0','Voltage');
Получите отформатированный отчет ошибки.
lh = addlistener(s,'ErrorOccurred',@(src,event) disp(getReport(event.Error)));
Получите данные, ожидайте и удалите прослушиватель.
startBackground(s); wait(s) delete(lh)