Регистрация строения подключения
Зарегистрируйте строение подключения в 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, смотрите: