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