exponenta event banner

Отладка функции MATLAB, вызываемой C Engine

При создании функций MATLAB ® для использования в приложениях движка рекомендуется запускать функции в MATLAB перед вызовом их через функции библиотеки движка.

После интеграции функции MATLAB в приложение механизма можно использовать dbstop и другие команды отладки MATLAB для отладки функции, вызываемой приложением ядра. Возможно, потребуется добавить код в приложение для приостановки обработки, чтобы можно было ввести команду debug, если приложение не присоединено к существующему сеансу MATLAB.

Приложение модуля отладки в Windows

Предположим, что имеется приложение механизма, вызывающее функцию MATLAB myfcn в Windows ®. Добавьте следующую инструкцию к коду обработчика перед вызовом myfcn. Этот код ожидает ввода пользователем.

fgetc(stdin);

Запустите приложение двигателя. Приложение открывает рабочий стол MATLAB и консольное приложение Windows MATLAB. В командной строке рабочего стола введите следующую команду. Убедитесь, что функция находится на пути MATLAB.

dbstop("myfcn")

В окне консоли нажмите Enter. MATLAB переходит в режим отладки; введите команды debug в окне команд рабочего стола.

Приложение модуля отладки, подключенное к существующему сеансу MATLAB

Сведения об использовании существующей сессии MATLAB см. в разделе Присоединение к существующим сессиям MATLAB. Отладка функции myfcn вызывается приложением ядра, сначала запустите MATLAB как сервер автоматизации с помощью одной из следующих команд.

  • Из системного запроса:

    matlab.exe -automation
  • В командной строке MATLAB:

    state = enableservice('AutomationServer',true);

В командной строке MATLAB введите:

dbstop("myfcn")

Запустите приложение двигателя. MATLAB переходит в режим отладки; введите команды debug в окне команд MATLAB.