Регистрация строения подключения
Зарегистрируйте строение подключения в MATLAB® или Simulink®.
config = rtw.connectivity.ConfigRegistry
возвращает указатель на rtw.connectivity.ConfigRegistry
объект.
Чтобы создать этот класс:
Для MATLAB используйте rtwTargetInfo.m
файл, который необходимо поместить в путь поиска файлов MATLAB. В rtwTargetInfo.m
файл, вызов registerTargetInfo
регистрирует строение подключения.
Для Simulink используйте sl_customization.m
файл, который необходимо поместить в путь поиска файлов MATLAB. Когда Simulink запускается, он читает файл и регистрирует ваше строение подключения через вызов к registerTargetInfo
в файле.
Через первые два свойства этого класса можно задать для вашего строения подключения:
Уникальное имя.
Связанный класс реализации связности, который является подклассом rtw.connectivity.Config
.
Через оставшиеся свойства можно задать:
Для MATLAB - код, который совместим с классом реализации connectivity.
Для Simulink - набор моделей, которые совместимы с классом реализации связности.
Сравнение объединения этих свойств с настройками MATLAB Coder™ строением или параметрами модели Simulink определяет совместимость. Для примера с Simulink, является ли SystemTargetFile
, TemplateMakefile
, и HardwareBoard
свойства совместно соответствуют соответствующим параметрам модели.
rtwTargetInfo.m
ФайлЭтот код является примером rtwTargetInfo.m
файл. Используйте синтаксис функции в точности как показано на рисунке.
function rtwTargetInfo(tr) % Register PIL connectivity config: mypil.ConnectivityConfig tr.registerTargetInfo(@loc_createConfig); % local function function config = loc_createConfig % Create object for connectivity configuration config = rtw.connectivity.ConfigRegistry; % Assign connectivity configuration name config.ConfigName = 'My PIL Example'; % Associate the connectivity configuration with the connectivity % API implementation config.ConfigClass = 'mypil.ConnectivityConfig'; % Specify toolchains for host-based PIL config.Toolchain = rtw.connectivity.Utils.getHostToolchainNames; % Through the HardwareBoard and TargetHWDeviceType properties, % define compatible code for the target connectivity configuration config.HardwareBoard = {}; config.TargetHWDeviceType = {'Generic->32-bit x86 compatible' ... 'Generic->Custom' ... 'Intel->x86-64 (Windows64)', ... 'Intel->x86-64 (Mac OS X)', ... 'Intel->x86-64 (Linux 64)'};
Функция выполняет следующие шаги:
Создание образца rtw.connectivity.ConfigRegistry
класс. Для примера:
config = rtw.connectivity.ConfigRegistry;
Присваивает имя строения подключения ConfigName
свойство объекта. Для примера:
config.ConfigName = 'My PIL Example';
Связывает строение подключения с реализацией API подключения, созданной на шаге 1. Для примера:
config.ConfigClass = 'mypil.ConnectivityConfig';
Определяет совместимый код для этого целевого строения подключения путем установки HardwareBoard
и TargetHWDeviceType
свойства объекта. Для примера:
config.HardwareBoard = {}; % Any hardware board config.TargetHWDeviceType = {'Generic->32-bit x86 compatible' ... 'Generic->Custom' ... 'Intel->x86-64 (Windows64)', ... 'Intel->x86-64 (Mac OS X)', ... 'Intel->x86-64 (Linux 64)'};
sl_customization.m
ФайлЭтот код является примером sl_customization.m
файл. Используйте sl_customization.m
структуру файла и вызов registerTargetInfo
функция точно как показано.
function sl_customization(cm) % SL_CUSTOMIZATION for PIL connectivity config:... % mypil.ConnectivityConfig % Copyright 2008 The MathWorks, Inc. cm.registerTargetInfo(@loc_createConfig); % local function function config = loc_createConfig config = rtw.connectivity.ConfigRegistry; config.ConfigName = 'My PIL Example'; config.ConfigClass = 'mypil.ConnectivityConfig'; % Match only ert.tlc config.SystemTargetFile = {'ert.tlc'}; % If you use a toolchain to build your generated code, % specify the config.Toolchain property to match your % Simulink model toolchain setting. Otherwise, for a % non-toolchain approach, match the TMF config.TemplateMakefile = {'ert_default_tmf' ... 'ert_unix.tmf', ... 'ert_vcx64.tmf', ... 'ert_lcc.tmf'}; % Match hardware boards and hardware device types config.HardwareBoard = {}; % Any hardware board config.TargetHWDeviceType = {'Generic->32-bit x86 compatible' ... 'Generic->Custom' ... 'Intel->x86-64 (Windows64)', ... 'Intel->x86-64 (Mac OS X)', ... 'Intel->x86-64 (Linux 64)'};
Необходимо сконфигурировать файл для выполнения следующих шагов при запуске Simulink:
Создайте образец rtw.connectivity.ConfigRegistry
класс. Для примера:
config = rtw.connectivity.ConfigRegistry;
Присвойте имя строения подключения ConfigName
свойство объекта. Для примера:
config.ConfigName = 'My PIL Example';
Связать строение подключения с реализацией API подключения (созданной на шаге 1). Для примера:
config.ConfigClass = 'mypil.ConnectivityConfig';
Задайте совместимые модели для этого целевого строения связи, задав эти свойства свойств объекта:
SystemTargetFile
Toolchain
или TemplateMakefile
HardwareBoard
TargetHWDeviceType
Для примера:
config.SystemTargetFile = {'ert.tlc'}; config.TemplateMakefile = {'ert_default_tmf' ... 'ert_unix.tmf', ... 'ert_vcx64.tmf', ... 'ert_lcc.tmf'}; config.HardwareBoard = {}; config.TargetHWDeviceType = {'Generic->32-bit x86 compatible' ... 'Generic->Custom' ... 'Intel->x86-64 (Windows64)', ... 'Intel->x86-64 (Mac OS X)', ... 'Intel->x86-64 (Linux 64)'};
rtw.connectivity.ConfigRegistry
в PIL ConnectivityДля примера, который показывает, как использовать этот объект при настройке связи PIL, смотрите: