getFunction

Получите информацию о отображении AUTOSAR для функции точки входа Simulink

Описание

пример

arRunnableName = getFunction(slMap,slEntryPointFunction) возвращает имя выполняемой функции AUTOSAR arRunnableName сопоставлен с Simulink® функции точки входа slEntryPointFunction.

пример

[arRunnableName,arRunnableSwAddrMethod,arInternalDataSwAddrMethod] = getFunction(slMap,slEntryPointFunction) возвращает имена функций и внутренних методов адреса программного обеспечения данных (SwAddrMethods), заданный для сопоставленной выполняемой функции AUTOSAR. Если a SwAddrMethod не определен, функция возвращается '<None>'.

Примеры

свернуть все

Получите имя выполняемой функции AUTOSAR, сопоставленной с функцией точки входа Simulink в модели примера autosar_swc. Модель имеет инициализирующую функцию точки входа с именем Runnable_Init и периодические функции точки входа с именем Runnable_1s и Runnable_2s.

hModel = 'autosar_swc';
addpath(fullfile(matlabroot,'/examples/autosarblockset/main'));
open_system(hModel);
slMap=autosar.api.getSimulinkMapping(hModel);
arRunnableName=getFunction(slMap,'Initialize')
arRunnableName =
    'Runnable_Init'

Получите SwAddrMethod AUTOSAR имена для функции точки входа Simulink в модели примера autosar_swc_counter. Модель имеет однозадачную периодическую функцию точки входа.

hModel = 'autosar_swc_counter';
addpath(fullfile(matlabroot,'/examples/autosarblockset/main'));
open_system(hModel);

% Add SwAddrMethods myCODE and myVAR to the AUTOSAR component
arProps = autosar.api.getAUTOSARProperties(hModel);
addPackageableElement(arProps,'SwAddrMethod',...
    '/Company/Powertrain/DataTypes/SwAddrMethods','myCODE',...
    'SectionType','Code')
swAddrPaths = find(arProps,[],'SwAddrMethod','PathType','FullyQualified',...
    'SectionType','Code')
addPackageableElement(arProps,'SwAddrMethod',...
    '/Company/Powertrain/DataTypes/SwAddrMethods','myVAR',...
    'SectionType','Var')
swAddrPaths = find(arProps,[],'SwAddrMethod','PathType','FullyQualified',...
    'SectionType','Var')

% Set code generation parameter for runnable internal data SwAddrMethods
set_param(hModel,'GroupInternalDataByFunction','on')

% Map periodic function and internal data to myCODE and myVAR SwAddrMethods
slMap = autosar.api.getSimulinkMapping(hModel);
mapFunction(slMap,'Periodic','Runnable_Step',...
    'SwAddrMethod','myCODE','SwAddrMethodForInternalData','myVAR')

% Return AUTOSAR mapping information for periodic function
[arRunnableName,arRunnableSwAddrMethod,arInternalDataSwAddrMethod] = ...
    getFunction(slMap,'Periodic')
swAddrPaths =
  1×2 cell array
    {'/Company/Powertrain/DataTypes/SwAddrMethods/CODE'}
    {'/Company/Powertrain/DataTypes/SwAddrMethods/myCODE'}

swAddrPaths =
  1×2 cell array
    {'/Company/Powertrain/DataTypes/SwAddrMethods/VAR'}
    {'/Company/Powertrain/DataTypes/SwAddrMethods/myVAR'}

arRunnableName =
    'Runnable_Step'

arRunnableSwAddrMethod =
    'myCODE'

arInternalDataSwAddrMethod =
    'myVAR'

Входные параметры

свернуть все

Отображение Simulink и AUTOSAR для модели, ранее возвращенная slMap = autosar.api.getSimulinkMapping (model). model - указатель, вектор символов или строковый скаляр, представляющий имя модели.

Пример: slMap

Функция точки входа Simulink, для которой можно вернуть информацию отображения AUTOSAR. Формат значения основан на типе функции.

Тип функцииЗначение
Инициализировать'Initialize'.
Сброс'Сброс: slIdentifier', где slIdentifier - имя функции сброса в модели.
Конечный'Terminate'.
Однозадачный периодический'Periodic'.
Периодический (неявная задача)'Периодический: slIdentifier', где slIdentifier - соответствующая аннотация периода, отображаемая в легенде по времени. Для примера, 'Periodic:D1'.
Раздел (явная задача)'Разделение: slIdentifier', где slIdentifier - имя раздела, отображаемое в редакторе спецификаций. Для примера, 'Partition:P1'.
Экспортируемый

'ExportedFunction: slIdentifier', где slIdentifier - имя блока Inport, который управляет портом управления подсистемы вызова функций. Для примера:

  • 'ExportedFunction:Trigger_1s' в примере модели autosar_swc_slfcns

  • 'ExportedFunction:FunctionTrigger' в примере модели autosar_swc_fcncalls

Функция Simulink в строении клиент-сервер'SimulinkFunction: slIdentifier', где slIdentifier - имя глобальной функции Simulink в модели. Для примера, 'SimulinkFunction:readData' в модели примера в Configure AUTOSAR Server.

Пример: 'Periodic:D1'

Выходные аргументы

свернуть все

Переменная, которая возвращает имя runnable AUTOSAR, сопоставленное с заданным объектом функции точки входа Simulink.

Пример: arRunnableName

Переменная, которая возвращает имя SwAddrMethod определено для функции AUTOSAR runnable.

Пример: arRunnableSwAddrMethod

Переменная, которая возвращает имя SwAddrMethod определено для внутренних данных с возможностью выполнения AUTOSAR.

Пример: arInternalDataSwAddrMethod

Введенный в R2013b