In an AUTOSAR software component model, you can set the
DisabledMode
property of a runnable event to potentially prevent
a runnable from running in certain modes.
Given a model containing a mode receiver port and defined mode values, you can
programmatically get and set the DisabledMode
property of a
TimingEvent
, DataReceivedEvent
,
ModeSwitchEvent
, OperationInvokedEvent
,
DataReceiveErrorEvent
, or
ExternalTriggerOccurredEvent
. The property is not supported for
an InitEvent
.
The value of the DisabledMode
property is either
''
(no disabled modes) or one or more
mode values of the form
'
.
To set the mrPortName
.modeName
'DisabledMode
property of a runnable event in your model,
use the AUTOSAR property function set
.
The following example sets the DisabledMode
property for a timing
event named Event_t_1tic_B
. The set
function
call potentially disables the event for modes STARTUP
and
SHUTDOWN
, which are defined on mode-receiver port
myMRPort
.
hModel = 'mAutosarMsConfigAfter'; addpath(fullfile(matlabroot,'/help/toolbox/autosar/examples')); open_system(hModel) arProps = autosar.api.getAUTOSARProperties(hModel); eventPaths = find(arProps,[],'TimingEvent')
eventPaths = {'ASWC/Behavior/Event_t_1tic_B'} {'ASWC/Behavior/Event_t_10tic'}
dsblModes = get(arProps,eventPaths{1},'DisabledMode')
dsblModes = 1×0 empty cell array
set(arProps,eventPaths{1},'DisabledMode',{'myMRPort.STARTUP','myMRPort.SHUTDOWN'}); dsblModes = get(arProps,eventPaths{1},'DisabledMode')
dsblModes = {'myMRPort.STARTUP'} {'myMRPort.SHUTDOWN'}
When you export ARXML files for the model, the timing event
description for Event_t_1tic_B
includes a
DISABLED-MODE-IREFS
section that references the mode-receiver
port, the mode declaration group, and each disabled mode.
The software preserves the DisabledMode
property of a runnable
event across round trips between an AUTOSAR authoring tool (AAT) and Simulink®.