Autosar Sws Canstatemanager
Autosar Sws Canstatemanager
Autosar Sws Canstatemanager
AUTOSAR CP R19-11
Disclaimer
This work (specification and/or software implementation) and the material contained
in it, as released by AUTOSAR, is for the purpose of information only. AUTOSAR
and the companies that have contributed to it shall not be liable for any use of the
work.
The material contained in this work is protected by copyright and other types of
intellectual property rights. The commercial exploitation of the material contained in
this work requires a license to such intellectual property rights.
This work may be utilized or reproduced without any modification, in any form or by
any means, for informational purposes only. For any other purpose, no part of the
work may be utilized or reproduced, in any form or by any means, without permission
in writing from the publisher.
The work has been developed for automotive applications only. It has neither been
developed, nor tested for non-automotive applications.
The word AUTOSAR and the AUTOSAR logo are registered trademarks.
Table of Contents
CAN NM
CAN Transport
Protocol
CAN Interface
3 Related documentation
AUTOSAR_SWS_ECUStateManager.pdf
Thus, the specification SWS BSW General shall be considered as additional and
required specification for CAN State Manager.
4.1 Limitations
The CanSM module can be used for CAN communication only. Its task is to operate
with the CanIf module to control one or multiple underlying CAN Controllers and CAN
Transceiver Drivers. Other protocols than CAN (i.e. LIN or FlexRay) are not
supported.
«realize» «mandatory»
«realize» «realize»
«optional» «realize»
«use» «realize»
ComM_BusSM CanSM_EcuMWakeUpValidation BswM_CanSM_CurrentIcomConfiguration
Dem_SetEventStatus
«module»
CanSM
CanSM_Cbk CanSM_TxTimeoutException
«module» «module»
CanIf CanNm
For details refer to the chapter 5.1.6 “Code file structure” in SWS_BSWGeneral
6 Requirements traceability
SWS_CanSM_00440, SWS_CanSM_00441,
SWS_CanSM_00442, SWS_CanSM_00443,
SWS_CanSM_00444, SWS_CanSM_00445,
SWS_CanSM_00446, SWS_CanSM_00447,
SWS_CanSM_00448, SWS_CanSM_00449,
SWS_CanSM_00450, SWS_CanSM_00451,
SWS_CanSM_00452, SWS_CanSM_00453,
SWS_CanSM_00454, SWS_CanSM_00455,
SWS_CanSM_00456, SWS_CanSM_00457,
SWS_CanSM_00458, SWS_CanSM_00459,
SWS_CanSM_00460, SWS_CanSM_00461,
SWS_CanSM_00462, SWS_CanSM_00464,
SWS_CanSM_00465, SWS_CanSM_00466,
SWS_CanSM_00467, SWS_CanSM_00468,
SWS_CanSM_00469, SWS_CanSM_00470,
SWS_CanSM_00471, SWS_CanSM_00472,
SWS_CanSM_00473, SWS_CanSM_00474,
SWS_CanSM_00475, SWS_CanSM_00476,
SWS_CanSM_00477, SWS_CanSM_00478,
SWS_CanSM_00479, SWS_CanSM_00483,
SWS_CanSM_00484, SWS_CanSM_00485,
SWS_CanSM_00486, SWS_CanSM_00487,
SWS_CanSM_00488, SWS_CanSM_00489,
SWS_CanSM_00490, SWS_CanSM_00491,
SWS_CanSM_00492, SWS_CanSM_00493,
SWS_CanSM_00494, SWS_CanSM_00496,
SWS_CanSM_00497, SWS_CanSM_00499,
SWS_CanSM_00500, SWS_CanSM_00502,
SWS_CanSM_00503, SWS_CanSM_00504,
SWS_CanSM_00505, SWS_CanSM_00506,
SWS_CanSM_00507, SWS_CanSM_00508,
SWS_CanSM_00509, SWS_CanSM_00510,
SWS_CanSM_00511, SWS_CanSM_00512,
SWS_CanSM_00514, SWS_CanSM_00515,
SWS_CanSM_00517, SWS_CanSM_00518,
SWS_CanSM_00521, SWS_CanSM_00524,
SWS_CanSM_00525, SWS_CanSM_00526,
SWS_CanSM_00527, SWS_CanSM_00528,
SWS_CanSM_00529, SWS_CanSM_00530,
SWS_CanSM_00531, SWS_CanSM_00532,
SWS_CanSM_00533, SWS_CanSM_00534,
SWS_CanSM_00535, SWS_CanSM_00538,
SWS_CanSM_00540, SWS_CanSM_00541,
SWS_CanSM_00542, SWS_CanSM_00543,
SWS_CanSM_00550, SWS_CanSM_00555,
SWS_CanSM_00556, SWS_CanSM_00557,
SWS_CanSM_00558, SWS_CanSM_00561,
SWS_CanSM_00569, SWS_CanSM_00576,
SWS_CanSM_00577, SWS_CanSM_00578,
SWS_CanSM_00579, SWS_CanSM_00580,
SWS_CanSM_00581, SWS_CanSM_00582,
SWS_CanSM_00584, SWS_CanSM_00586,
SWS_CanSM_00587, SWS_CanSM_00588,
SWS_CanSM_00589, SWS_CanSM_00590,
SWS_CanSM_00591, SWS_CanSM_00593,
SWS_CanSM_00594, SWS_CanSM_00595,
SWS_CanSM_00599, SWS_CanSM_00600,
SWS_CanSM_00602, SWS_CanSM_00603,
SWS_CanSM_00604, SWS_CanSM_00607,
SWS_CanSM_00608, SWS_CanSM_00623,
20 of 211 Document ID 253: AUTOSAR_SWS_CANStateManager
- AUTOSAR confidential -
Specification of CAN State Manager
AUTOSAR CP R19-11
SWS_CanSM_00624, SWS_CanSM_00625,
SWS_CanSM_00626, SWS_CanSM_00627,
SWS_CanSM_00628, SWS_CanSM_00629,
SWS_CanSM_00630, SWS_CanSM_00631,
SWS_CanSM_00632, SWS_CanSM_00633,
SWS_CanSM_00634, SWS_CanSM_00635,
SWS_CanSM_00636, SWS_CanSM_00639,
SWS_CanSM_00641, SWS_CanSM_00642,
SWS_CanSM_00651, SWS_CanSM_00653
SRS_Can_01144 The CAN State Manager SWS_CanSM_00600, SWS_CanSM_00602,
shall support a SWS_CanSM_00603, SWS_CanSM_00604,
configurable BusOff SWS_CanSM_00606, SWS_CanSM_00637
recovery time
SRS_Can_01145 The CAN State Manager SWS_CanSM_00062, SWS_CanSM_00065,
shall control the assigned SWS_CanSM_00167, SWS_CanSM_00182,
CAN Devices SWS_CanSM_00183, SWS_CanSM_00369,
SWS_CanSM_00370, SWS_CanSM_00396,
SWS_CanSM_00397, SWS_CanSM_00398,
SWS_CanSM_00399, SWS_CanSM_00400,
SWS_CanSM_00401, SWS_CanSM_00410,
SWS_CanSM_00411, SWS_CanSM_00412,
SWS_CanSM_00413, SWS_CanSM_00414,
SWS_CanSM_00415, SWS_CanSM_00416,
SWS_CanSM_00417, SWS_CanSM_00418,
SWS_CanSM_00419, SWS_CanSM_00420,
SWS_CanSM_00421, SWS_CanSM_00423,
SWS_CanSM_00425, SWS_CanSM_00426,
SWS_CanSM_00427, SWS_CanSM_00428,
SWS_CanSM_00429, SWS_CanSM_00430,
SWS_CanSM_00431, SWS_CanSM_00432,
SWS_CanSM_00433, SWS_CanSM_00434,
SWS_CanSM_00436, SWS_CanSM_00437,
SWS_CanSM_00438, SWS_CanSM_00439,
SWS_CanSM_00440, SWS_CanSM_00441,
SWS_CanSM_00442, SWS_CanSM_00443,
SWS_CanSM_00444, SWS_CanSM_00445,
SWS_CanSM_00446, SWS_CanSM_00447,
SWS_CanSM_00448, SWS_CanSM_00449,
SWS_CanSM_00450, SWS_CanSM_00451,
SWS_CanSM_00452, SWS_CanSM_00453,
SWS_CanSM_00454, SWS_CanSM_00455,
SWS_CanSM_00456, SWS_CanSM_00457,
SWS_CanSM_00458, SWS_CanSM_00459,
SWS_CanSM_00460, SWS_CanSM_00461,
SWS_CanSM_00462, SWS_CanSM_00464,
SWS_CanSM_00465, SWS_CanSM_00466,
SWS_CanSM_00467, SWS_CanSM_00468,
SWS_CanSM_00469, SWS_CanSM_00470,
SWS_CanSM_00471, SWS_CanSM_00472,
SWS_CanSM_00473, SWS_CanSM_00474,
SWS_CanSM_00475, SWS_CanSM_00476,
SWS_CanSM_00477, SWS_CanSM_00478,
SWS_CanSM_00479, SWS_CanSM_00483,
SWS_CanSM_00484, SWS_CanSM_00485,
SWS_CanSM_00486, SWS_CanSM_00487,
SWS_CanSM_00488, SWS_CanSM_00489,
SWS_CanSM_00490, SWS_CanSM_00491,
SWS_CanSM_00492, SWS_CanSM_00493,
SWS_CanSM_00494, SWS_CanSM_00496,
21 of 211 Document ID 253: AUTOSAR_SWS_CANStateManager
- AUTOSAR confidential -
Specification of CAN State Manager
AUTOSAR CP R19-11
SWS_CanSM_00497, SWS_CanSM_00499,
SWS_CanSM_00500, SWS_CanSM_00507,
SWS_CanSM_00508, SWS_CanSM_00509,
SWS_CanSM_00510, SWS_CanSM_00511,
SWS_CanSM_00512, SWS_CanSM_00514,
SWS_CanSM_00515, SWS_CanSM_00517,
SWS_CanSM_00518, SWS_CanSM_00521,
SWS_CanSM_00524, SWS_CanSM_00525,
SWS_CanSM_00526, SWS_CanSM_00527,
SWS_CanSM_00528, SWS_CanSM_00529,
SWS_CanSM_00531, SWS_CanSM_00532,
SWS_CanSM_00533, SWS_CanSM_00534,
SWS_CanSM_00535, SWS_CanSM_00538,
SWS_CanSM_00540, SWS_CanSM_00541,
SWS_CanSM_00542, SWS_CanSM_00543,
SWS_CanSM_00546, SWS_CanSM_00550,
SWS_CanSM_00555, SWS_CanSM_00556,
SWS_CanSM_00557, SWS_CanSM_00558,
SWS_CanSM_00560, SWS_CanSM_00576,
SWS_CanSM_00577, SWS_CanSM_00578,
SWS_CanSM_00579, SWS_CanSM_00580,
SWS_CanSM_00581, SWS_CanSM_00582,
SWS_CanSM_00584, SWS_CanSM_00588,
SWS_CanSM_00589, SWS_CanSM_00590,
SWS_CanSM_00591, SWS_CanSM_00600,
SWS_CanSM_00602, SWS_CanSM_00603,
SWS_CanSM_00604, SWS_CanSM_00607,
SWS_CanSM_00608, SWS_CanSM_00609,
SWS_CanSM_00610, SWS_CanSM_00611,
SWS_CanSM_00612, SWS_CanSM_00613,
SWS_CanSM_00616, SWS_CanSM_00617,
SWS_CanSM_00618, SWS_CanSM_00619,
SWS_CanSM_00620, SWS_CanSM_00621,
SWS_CanSM_00622, SWS_CanSM_00623,
SWS_CanSM_00624, SWS_CanSM_00625,
SWS_CanSM_00626, SWS_CanSM_00627,
SWS_CanSM_00628, SWS_CanSM_00629,
SWS_CanSM_00630, SWS_CanSM_00631,
SWS_CanSM_00632, SWS_CanSM_00633,
SWS_CanSM_00634, SWS_CanSM_00636,
SWS_CanSM_00638, SWS_CanSM_00639,
SWS_CanSM_00641, SWS_CanSM_00642,
SWS_CanSM_00651, SWS_CanSM_00653
SRS_Can_01146 The CAN State Manager SWS_CanSM_00600, SWS_CanSM_00602,
shall contain a CAN SWS_CanSM_00603, SWS_CanSM_00604,
BusOff recovery SWS_CanSM_00606, SWS_CanSM_00637
algorithm for each used
CAN Controller
SRS_Can_01158 The CAN stack shall SWS_CanSM_00435, SWS_CanSM_00516,
provide a TX offline SWS_CanSM_00539, SWS_CanSM_00644,
active mode for ECU SWS_CanSM_00645, SWS_CanSM_00646,
passive mode SWS_CanSM_00647, SWS_CanSM_00649,
SWS_CanSM_00650, SWS_CanSM_00656
SRS_Can_01164 - SWS_CanSM_00658, SWS_CanSM_91001
SRS_ModeMgm_09084 The Communication SWS_CanSM_00063
Manager shall provide an
API which allows
application to query the
22 of 211 Document ID 253: AUTOSAR_SWS_CANStateManager
- AUTOSAR confidential -
Specification of CAN State Manager
AUTOSAR CP R19-11
current communication
mode
SRS_ModeMgm_09251 PNC communication SWS_CanSM_00598
state shall be forwarded
to the BswM
7 Functional specification
This chapter specifies the different functions of the CanSM module in the AUTOSAR
BSW architecture.
The CanSM module is responsible for the control flow abstraction of CAN networks:
Therefore the CanSM module uses the API of the CanIf module. The CanIf module is
responsible for the control flow abstraction of the configured CAN Controllers and
CAN Transceivers (the data flow abstraction of the CanIf module is not relevant for
the CanSM module). Any change of the CAN Controller modes and CAN Transceiver
modes will be notified by the CanIf module to the CanSM module. Depending on this
notifications and state of the CAN network state machine, which the CanSM module
shall implement for each configured CAN network, the CanSM module notifies the
ComM and the BswM (ref. to chapter 7.2 for details).
CANSM_BSM_S_FULLCOM
ExitPoint
CHANGE_BR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
[G_FULL_COM_MODE_REQUESTED]
/E_FULL_COM /E_BR_END_FULL_COM
T_SILENT_COM_MODE_REQUEST
/E_FULL_TO_SILENT_COM
CANSM_BSM_S_PRE_FULLCOM
CANSM_BSM_S_CHANGE_BAUDRATE
ExitPoint To
FULLCOM T_FULL_COM_MODE_REQUEST
/E_SILENT_TO_FULL_COM
ExitPoint
FULL_OR_SILENT_COM
ExitPoint
REPEAT_MAX
ExitPoint
NO_COM
[G_SILENT_COM_MODE_REQUESTED]
/E_BR_END_SILENT_COM
T_FULL_COM_MODE_REQUEST CANSM_BSM_S_SILENTCOM
T_FULL_COM_MODE_REQUEST
/E_PRE_NOCOM
CANSM_BSM_WUVALIDATION
T_BUS_OFF
CANSM_BSM_S_SILENTCOM_BOR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
T_STOP_WAKEUP_SOURCE
T_NO_COM_MODE_REQUEST
/E_PRE_NO_COM
CANSM_BSM_S_PRE_NOCOM
T_START_WAKEUP_SOURCE
T_START_WAKEUP_SOURCE
CanSM_Init
CANSM_BSM_S_NOCOM
/E_NOCOM
CANSM_BSM_S_NOT_INITIALIZED
PowerOn
CanSM_DeInit
PowerOff
Figure 7-1 : CANSM_BSM, state machine diagram for one CAN network
[SWS_CanSM_00266] ⌈ The CanSM module shall store the current network mode
for each configured CAN network internally (ref. to to
ECUC_CanSM_00126).⌋ (SRS_Can_01142)
CANSM_BSM_S_FULLCOM
ExitPoint
CHANGE_BR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
[G_FULL_COM_MODE_REQUESTED]
/E_FULL_COM /E_BR_END_FULL_COM
T_SILENT_COM_MODE_REQUEST
/E_FULL_TO_SILENT_COM
CANSM_BSM_S_PRE_FULLCOM
CANSM_BSM_S_CHANGE_BAUDRATE
ExitPoint To
FULLCOM T_FULL_COM_MODE_REQUEST
/E_SILENT_TO_FULL_COM
ExitPoint
FULL_OR_SILENT_COM
ExitPoint
REPEAT_MAX
ExitPoint
NO_COM
[G_SILENT_COM_MODE_REQUESTED]
/E_BR_END_SILENT_COM
T_FULL_COM_MODE_REQUEST CANSM_BSM_S_SILENTCOM
T_FULL_COM_MODE_REQUEST
/E_PRE_NOCOM
CANSM_BSM_WUVALIDATION
T_BUS_OFF
CANSM_BSM_S_SILENTCOM_BOR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
T_STOP_WAKEUP_SOURCE
T_NO_COM_MODE_REQUEST
/E_PRE_NO_COM
CANSM_BSM_S_PRE_NOCOM
T_START_WAKEUP_SOURCE
T_START_WAKEUP_SOURCE
CanSM_Init
CANSM_BSM_S_NOCOM
/E_NOCOM
CANSM_BSM_S_NOT_INITIALIZED
PowerOn
CanSM_DeInit
PowerOff
Figure 7-1)
shall be operated in the context of the CanSM main function (ref. to
SWS_CanSM_00065).⌋(SRS_Can_01142, SRS_Can_01145)
ExitPoint
CHANGE_BR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
[G_FULL_COM_MODE_REQUESTED]
/E_FULL_COM /E_BR_END_FULL_COM
T_SILENT_COM_MODE_REQUEST
/E_FULL_TO_SILENT_COM
CANSM_BSM_S_PRE_FULLCOM
CANSM_BSM_S_CHANGE_BAUDRATE
ExitPoint To
FULLCOM T_FULL_COM_MODE_REQUEST
/E_SILENT_TO_FULL_COM
ExitPoint
FULL_OR_SILENT_COM
ExitPoint
REPEAT_MAX
ExitPoint
NO_COM
[G_SILENT_COM_MODE_REQUESTED]
/E_BR_END_SILENT_COM
T_FULL_COM_MODE_REQUEST CANSM_BSM_S_SILENTCOM
T_FULL_COM_MODE_REQUEST
/E_PRE_NOCOM
CANSM_BSM_WUVALIDATION
T_BUS_OFF
CANSM_BSM_S_SILENTCOM_BOR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
T_STOP_WAKEUP_SOURCE
T_NO_COM_MODE_REQUEST
/E_PRE_NO_COM
CANSM_BSM_S_PRE_NOCOM
T_START_WAKEUP_SOURCE
T_START_WAKEUP_SOURCE
CanSM_Init
CANSM_BSM_S_NOCOM
/E_NOCOM
CANSM_BSM_S_NOT_INITIALIZED
PowerOn
CanSM_DeInit
PowerOff
[SWS_CanSM_00635]⌈ The CanSM module shall store for each configured CAN
network (ref. to ECUC_CanSM_00126) the latest communication mode request,
which has been accepted by returning E_OK in the API request
CanSM_RequestComMode (ref. to SWS_CANSM_00062, SWS_CANSM_00182)
and use it as trigger for the state machine of the related CAN network (ref. to
CANSM_BSM_S_FULLCOM
ExitPoint
CHANGE_BR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
[G_FULL_COM_MODE_REQUESTED]
/E_FULL_COM /E_BR_END_FULL_COM
T_SILENT_COM_MODE_REQUEST
/E_FULL_TO_SILENT_COM
CANSM_BSM_S_PRE_FULLCOM
CANSM_BSM_S_CHANGE_BAUDRATE
ExitPoint To
FULLCOM T_FULL_COM_MODE_REQUEST
/E_SILENT_TO_FULL_COM
ExitPoint
FULL_OR_SILENT_COM
ExitPoint
REPEAT_MAX
ExitPoint
NO_COM
[G_SILENT_COM_MODE_REQUESTED]
/E_BR_END_SILENT_COM
T_FULL_COM_MODE_REQUEST CANSM_BSM_S_SILENTCOM
T_FULL_COM_MODE_REQUEST
/E_PRE_NOCOM
CANSM_BSM_WUVALIDATION
T_BUS_OFF
CANSM_BSM_S_SILENTCOM_BOR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
T_STOP_WAKEUP_SOURCE
T_NO_COM_MODE_REQUEST
/E_PRE_NO_COM
CANSM_BSM_S_PRE_NOCOM
T_START_WAKEUP_SOURCE
T_START_WAKEUP_SOURCE
CanSM_Init
CANSM_BSM_S_NOCOM
/E_NOCOM
CANSM_BSM_S_NOT_INITIALIZED
PowerOn
CanSM_DeInit
PowerOff
[SWS_CanSM_00638]⌈ The CanSM module shall store after every successful CAN
controller mode change (ref. to SWS_CANSM_00396) or bus-off conditioned change
30 of 211 Document ID 253: AUTOSAR_SWS_CANStateManager
- AUTOSAR confidential -
Specification of CAN State Manager
AUTOSAR CP R19-11
ExitPoint
CHANGE_BR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
[G_FULL_COM_MODE_REQUESTED]
/E_FULL_COM /E_BR_END_FULL_COM
T_SILENT_COM_MODE_REQUEST
/E_FULL_TO_SILENT_COM
CANSM_BSM_S_PRE_FULLCOM
CANSM_BSM_S_CHANGE_BAUDRATE
ExitPoint To
FULLCOM T_FULL_COM_MODE_REQUEST
/E_SILENT_TO_FULL_COM
ExitPoint
FULL_OR_SILENT_COM
ExitPoint
REPEAT_MAX
ExitPoint
NO_COM
[G_SILENT_COM_MODE_REQUESTED]
/E_BR_END_SILENT_COM
T_FULL_COM_MODE_REQUEST CANSM_BSM_S_SILENTCOM
T_FULL_COM_MODE_REQUEST
/E_PRE_NOCOM
CANSM_BSM_WUVALIDATION
T_BUS_OFF
CANSM_BSM_S_SILENTCOM_BOR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
T_STOP_WAKEUP_SOURCE
T_NO_COM_MODE_REQUEST
/E_PRE_NO_COM
CANSM_BSM_S_PRE_NOCOM
T_START_WAKEUP_SOURCE
T_START_WAKEUP_SOURCE
CanSM_Init
CANSM_BSM_S_NOCOM
/E_NOCOM
CANSM_BSM_S_NOT_INITIALIZED
PowerOn
CanSM_DeInit
PowerOff
Figure 7-1) specifies the behavioral state machine of the CanSM module, which shall
be implemented for each configured CAN network (ref. to ECUC_CanSM_00126)
ExitPoint
CHANGE_BR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
[G_FULL_COM_MODE_REQUESTED]
/E_FULL_COM /E_BR_END_FULL_COM
T_SILENT_COM_MODE_REQUEST
/E_FULL_TO_SILENT_COM
CANSM_BSM_S_PRE_FULLCOM
CANSM_BSM_S_CHANGE_BAUDRATE
ExitPoint To
FULLCOM T_FULL_COM_MODE_REQUEST
/E_SILENT_TO_FULL_COM
ExitPoint
FULL_OR_SILENT_COM
ExitPoint
REPEAT_MAX
ExitPoint
NO_COM
[G_SILENT_COM_MODE_REQUESTED]
/E_BR_END_SILENT_COM
T_FULL_COM_MODE_REQUEST CANSM_BSM_S_SILENTCOM
T_FULL_COM_MODE_REQUEST
/E_PRE_NOCOM
CANSM_BSM_WUVALIDATION
T_BUS_OFF
CANSM_BSM_S_SILENTCOM_BOR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
T_STOP_WAKEUP_SOURCE
T_NO_COM_MODE_REQUEST
/E_PRE_NO_COM
CANSM_BSM_S_PRE_NOCOM
T_START_WAKEUP_SOURCE
T_START_WAKEUP_SOURCE
CanSM_Init
CANSM_BSM_S_NOCOM
/E_NOCOM
CANSM_BSM_S_NOT_INITIALIZED
PowerOn
CanSM_DeInit
PowerOff
ExitPoint
CHANGE_BR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
[G_FULL_COM_MODE_REQUESTED]
/E_FULL_COM /E_BR_END_FULL_COM
T_SILENT_COM_MODE_REQUEST
/E_FULL_TO_SILENT_COM
CANSM_BSM_S_PRE_FULLCOM
CANSM_BSM_S_CHANGE_BAUDRATE
ExitPoint To
FULLCOM T_FULL_COM_MODE_REQUEST
/E_SILENT_TO_FULL_COM
ExitPoint
FULL_OR_SILENT_COM
ExitPoint
REPEAT_MAX
ExitPoint
NO_COM
[G_SILENT_COM_MODE_REQUESTED]
/E_BR_END_SILENT_COM
T_FULL_COM_MODE_REQUEST CANSM_BSM_S_SILENTCOM
T_FULL_COM_MODE_REQUEST
/E_PRE_NOCOM
CANSM_BSM_WUVALIDATION
T_BUS_OFF
CANSM_BSM_S_SILENTCOM_BOR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
T_STOP_WAKEUP_SOURCE
T_NO_COM_MODE_REQUEST
/E_PRE_NO_COM
CANSM_BSM_S_PRE_NOCOM
T_START_WAKEUP_SOURCE
T_START_WAKEUP_SOURCE
CanSM_Init
CANSM_BSM_S_NOCOM
/E_NOCOM
CANSM_BSM_S_NOT_INITIALIZED
PowerOn
CanSM_DeInit
PowerOff
Figure 7-1) for all configured CAN Networks (ref. to ECUC_CanSM_00126) with the
trigger CanSM_Init.⌋ (SRS_Can_01142, SRS_Can_01145)
Note: Caller of the CanSM_DeInit function has to ensure all CAN networks are in the
sate CANSM_NO_COMMUNICATION
CANSM_BSM_S_FULLCOM
ExitPoint
CHANGE_BR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
[G_FULL_COM_MODE_REQUESTED]
/E_FULL_COM /E_BR_END_FULL_COM
T_SILENT_COM_MODE_REQUEST
/E_FULL_TO_SILENT_COM
CANSM_BSM_S_PRE_FULLCOM
CANSM_BSM_S_CHANGE_BAUDRATE
ExitPoint To
FULLCOM T_FULL_COM_MODE_REQUEST
/E_SILENT_TO_FULL_COM
ExitPoint
FULL_OR_SILENT_COM
ExitPoint
REPEAT_MAX
ExitPoint
NO_COM
[G_SILENT_COM_MODE_REQUESTED]
/E_BR_END_SILENT_COM
T_FULL_COM_MODE_REQUEST CANSM_BSM_S_SILENTCOM
T_FULL_COM_MODE_REQUEST
/E_PRE_NOCOM
CANSM_BSM_WUVALIDATION
T_BUS_OFF
CANSM_BSM_S_SILENTCOM_BOR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
T_STOP_WAKEUP_SOURCE
T_NO_COM_MODE_REQUEST
/E_PRE_NO_COM
CANSM_BSM_S_PRE_NOCOM
T_START_WAKEUP_SOURCE
T_START_WAKEUP_SOURCE
CanSM_Init
CANSM_BSM_S_NOCOM
/E_NOCOM
CANSM_BSM_S_NOT_INITIALIZED
PowerOn
CanSM_DeInit
PowerOff
ExitPoint
CHANGE_BR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
[G_FULL_COM_MODE_REQUESTED]
/E_FULL_COM /E_BR_END_FULL_COM
T_SILENT_COM_MODE_REQUEST
/E_FULL_TO_SILENT_COM
CANSM_BSM_S_PRE_FULLCOM
CANSM_BSM_S_CHANGE_BAUDRATE
ExitPoint To
FULLCOM T_FULL_COM_MODE_REQUEST
/E_SILENT_TO_FULL_COM
ExitPoint
FULL_OR_SILENT_COM
ExitPoint
REPEAT_MAX
ExitPoint
NO_COM
[G_SILENT_COM_MODE_REQUESTED]
/E_BR_END_SILENT_COM
T_FULL_COM_MODE_REQUEST CANSM_BSM_S_SILENTCOM
T_FULL_COM_MODE_REQUEST
/E_PRE_NOCOM
CANSM_BSM_WUVALIDATION
T_BUS_OFF
CANSM_BSM_S_SILENTCOM_BOR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
T_STOP_WAKEUP_SOURCE
T_NO_COM_MODE_REQUEST
/E_PRE_NO_COM
CANSM_BSM_S_PRE_NOCOM
T_START_WAKEUP_SOURCE
T_START_WAKEUP_SOURCE
CanSM_Init
CANSM_BSM_S_NOCOM
/E_NOCOM
CANSM_BSM_S_NOT_INITIALIZED
PowerOn
CanSM_DeInit
PowerOff
CANSM_BSM_S_FULLCOM
ExitPoint
CHANGE_BR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
[G_FULL_COM_MODE_REQUESTED]
/E_FULL_COM /E_BR_END_FULL_COM
T_SILENT_COM_MODE_REQUEST
/E_FULL_TO_SILENT_COM
CANSM_BSM_S_PRE_FULLCOM
CANSM_BSM_S_CHANGE_BAUDRATE
ExitPoint To
FULLCOM T_FULL_COM_MODE_REQUEST
/E_SILENT_TO_FULL_COM
ExitPoint
FULL_OR_SILENT_COM
ExitPoint
REPEAT_MAX
ExitPoint
NO_COM
[G_SILENT_COM_MODE_REQUESTED]
/E_BR_END_SILENT_COM
T_FULL_COM_MODE_REQUEST CANSM_BSM_S_SILENTCOM
T_FULL_COM_MODE_REQUEST
/E_PRE_NOCOM
CANSM_BSM_WUVALIDATION
T_BUS_OFF
CANSM_BSM_S_SILENTCOM_BOR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
T_STOP_WAKEUP_SOURCE
T_NO_COM_MODE_REQUEST
/E_PRE_NO_COM
CANSM_BSM_S_PRE_NOCOM
T_START_WAKEUP_SOURCE
T_START_WAKEUP_SOURCE
CanSM_Init
CANSM_BSM_S_NOCOM
/E_NOCOM
CANSM_BSM_S_NOT_INITIALIZED
PowerOn
CanSM_DeInit
PowerOff
Rationale: Regular use case for the transition of the CanNm Network mode to the
CanNm Prepare Bus-Sleep mode.
39 of 211 Document ID 253: AUTOSAR_SWS_CANStateManager
- AUTOSAR confidential -
Specification of CAN State Manager
AUTOSAR CP R19-11
Remark: Depending on the ComM configuration, the ComM module will request
COMM_SILENT_COMMUNICATION first and then COMM_NO_COMMUNICATION or
COMM_NO_COMMUNICATION directly (ComMNmVariant=LIGHT)”.
CANSM_BSM_S_FULLCOM
ExitPoint
CHANGE_BR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
[G_FULL_COM_MODE_REQUESTED]
/E_FULL_COM /E_BR_END_FULL_COM
T_SILENT_COM_MODE_REQUEST
/E_FULL_TO_SILENT_COM
CANSM_BSM_S_PRE_FULLCOM
CANSM_BSM_S_CHANGE_BAUDRATE
ExitPoint To
FULLCOM T_FULL_COM_MODE_REQUEST
/E_SILENT_TO_FULL_COM
ExitPoint
FULL_OR_SILENT_COM
ExitPoint
REPEAT_MAX
ExitPoint
NO_COM
[G_SILENT_COM_MODE_REQUESTED]
/E_BR_END_SILENT_COM
T_FULL_COM_MODE_REQUEST CANSM_BSM_S_SILENTCOM
T_FULL_COM_MODE_REQUEST
/E_PRE_NOCOM
CANSM_BSM_WUVALIDATION
T_BUS_OFF
CANSM_BSM_S_SILENTCOM_BOR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
T_STOP_WAKEUP_SOURCE
T_NO_COM_MODE_REQUEST
/E_PRE_NO_COM
CANSM_BSM_S_PRE_NOCOM
T_START_WAKEUP_SOURCE
T_START_WAKEUP_SOURCE
CanSM_Init
CANSM_BSM_S_NOCOM
/E_NOCOM
CANSM_BSM_S_NOT_INITIALIZED
PowerOn
CanSM_DeInit
PowerOff
Figure 7-1) for the CAN network with T_BUS_OFF, if one of its configured CAN
controllers matches to the function parameter ControllerId of the callback
function CanSM_ControllerBusOff.⌋ (SRS_Can_01144, SRS_Can_01146)
ExitPoint
CHANGE_BR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
[G_FULL_COM_MODE_REQUESTED]
/E_FULL_COM /E_BR_END_FULL_COM
T_SILENT_COM_MODE_REQUEST
/E_FULL_TO_SILENT_COM
CANSM_BSM_S_PRE_FULLCOM
CANSM_BSM_S_CHANGE_BAUDRATE
ExitPoint To
FULLCOM T_FULL_COM_MODE_REQUEST
/E_SILENT_TO_FULL_COM
ExitPoint
FULL_OR_SILENT_COM
ExitPoint
REPEAT_MAX
ExitPoint
NO_COM
[G_SILENT_COM_MODE_REQUESTED]
/E_BR_END_SILENT_COM
T_FULL_COM_MODE_REQUEST CANSM_BSM_S_SILENTCOM
T_FULL_COM_MODE_REQUEST
/E_PRE_NOCOM
CANSM_BSM_WUVALIDATION
T_BUS_OFF
CANSM_BSM_S_SILENTCOM_BOR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
T_STOP_WAKEUP_SOURCE
T_NO_COM_MODE_REQUEST
/E_PRE_NO_COM
CANSM_BSM_S_PRE_NOCOM
T_START_WAKEUP_SOURCE
T_START_WAKEUP_SOURCE
CanSM_Init
CANSM_BSM_S_NOCOM
/E_NOCOM
CANSM_BSM_S_NOT_INITIALIZED
PowerOn
CanSM_DeInit
PowerOff
Figure 7-1) shall evaluate, if the latest accepted communication mode request with
CanSM_RequestComMode (ref. to SWS_CanSM_00635) for the respective network
42 of 211 Document ID 253: AUTOSAR_SWS_CANStateManager
- AUTOSAR confidential -
Specification of CAN State Manager
AUTOSAR CP R19-11
handle of the state machine has been with the parameter ComM_Mode equal to
COMM_FULL_COMMUNICATION.⌋ (SRS_Can_01142, SRS_Can_01145)
CANSM_BSM_S_FULLCOM
ExitPoint
CHANGE_BR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
[G_FULL_COM_MODE_REQUESTED]
/E_FULL_COM /E_BR_END_FULL_COM
T_SILENT_COM_MODE_REQUEST
/E_FULL_TO_SILENT_COM
CANSM_BSM_S_PRE_FULLCOM
CANSM_BSM_S_CHANGE_BAUDRATE
ExitPoint To
FULLCOM T_FULL_COM_MODE_REQUEST
/E_SILENT_TO_FULL_COM
ExitPoint
FULL_OR_SILENT_COM
ExitPoint
REPEAT_MAX
ExitPoint
NO_COM
[G_SILENT_COM_MODE_REQUESTED]
/E_BR_END_SILENT_COM
T_FULL_COM_MODE_REQUEST CANSM_BSM_S_SILENTCOM
T_FULL_COM_MODE_REQUEST
/E_PRE_NOCOM
CANSM_BSM_WUVALIDATION
T_BUS_OFF
CANSM_BSM_S_SILENTCOM_BOR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
T_STOP_WAKEUP_SOURCE
T_NO_COM_MODE_REQUEST
/E_PRE_NO_COM
CANSM_BSM_S_PRE_NOCOM
T_START_WAKEUP_SOURCE
T_START_WAKEUP_SOURCE
CanSM_Init
CANSM_BSM_S_NOCOM
/E_NOCOM
CANSM_BSM_S_NOT_INITIALIZED
PowerOn
CanSM_DeInit
PowerOff
Figure 7-1) shall evaluate, if the latest accepted communication mode request with
CanSM_RequestComMode (ref. to SWS_CanSM_00635) for the respective network
handle of the state machine has been with the parameter ComM_Mode equal to
COMM_SILENT_COMMUNICATION.⌋ (SRS_Can_01142, SRS_Can_01145)
ExitPoint
CHANGE_BR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
[G_FULL_COM_MODE_REQUESTED]
/E_FULL_COM /E_BR_END_FULL_COM
T_SILENT_COM_MODE_REQUEST
/E_FULL_TO_SILENT_COM
CANSM_BSM_S_PRE_FULLCOM
CANSM_BSM_S_CHANGE_BAUDRATE
ExitPoint To
FULLCOM T_FULL_COM_MODE_REQUEST
/E_SILENT_TO_FULL_COM
ExitPoint
FULL_OR_SILENT_COM
ExitPoint
REPEAT_MAX
ExitPoint
NO_COM
[G_SILENT_COM_MODE_REQUESTED]
/E_BR_END_SILENT_COM
T_FULL_COM_MODE_REQUEST CANSM_BSM_S_SILENTCOM
T_FULL_COM_MODE_REQUEST
/E_PRE_NOCOM
CANSM_BSM_WUVALIDATION
T_BUS_OFF
CANSM_BSM_S_SILENTCOM_BOR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
T_STOP_WAKEUP_SOURCE
T_NO_COM_MODE_REQUEST
/E_PRE_NO_COM
CANSM_BSM_S_PRE_NOCOM
T_START_WAKEUP_SOURCE
T_START_WAKEUP_SOURCE
CanSM_Init
CANSM_BSM_S_NOCOM
/E_NOCOM
CANSM_BSM_S_NOT_INITIALIZED
PowerOn
CanSM_DeInit
PowerOff
Figure 7-1) shall call for the corresponding CAN network the API
BswM_CanSM_CurrentState with the parameters Network :=
45 of 211 Document ID 253: AUTOSAR_SWS_CANStateManager
- AUTOSAR confidential -
Specification of CAN State Manager
AUTOSAR CP R19-11
CANSM_BSM_S_FULLCOM
ExitPoint
CHANGE_BR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
[G_FULL_COM_MODE_REQUESTED]
/E_FULL_COM /E_BR_END_FULL_COM
T_SILENT_COM_MODE_REQUEST
/E_FULL_TO_SILENT_COM
CANSM_BSM_S_PRE_FULLCOM
CANSM_BSM_S_CHANGE_BAUDRATE
ExitPoint To
FULLCOM T_FULL_COM_MODE_REQUEST
/E_SILENT_TO_FULL_COM
ExitPoint
FULL_OR_SILENT_COM
ExitPoint
REPEAT_MAX
ExitPoint
NO_COM
[G_SILENT_COM_MODE_REQUESTED]
/E_BR_END_SILENT_COM
T_FULL_COM_MODE_REQUEST CANSM_BSM_S_SILENTCOM
T_FULL_COM_MODE_REQUEST
/E_PRE_NOCOM
CANSM_BSM_WUVALIDATION
T_BUS_OFF
CANSM_BSM_S_SILENTCOM_BOR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
T_STOP_WAKEUP_SOURCE
T_NO_COM_MODE_REQUEST
/E_PRE_NO_COM
CANSM_BSM_S_PRE_NOCOM
T_START_WAKEUP_SOURCE
T_START_WAKEUP_SOURCE
CanSM_Init
CANSM_BSM_S_NOCOM
/E_NOCOM
CANSM_BSM_S_NOT_INITIALIZED
PowerOn
CanSM_DeInit
PowerOff
Figure 7-1) shall change the internally stored network mode (ref. to
SWS_CanSM_00266) of the addressed CAN network to
COMM_NO_COMMUNICATION. ⌋ (SRS_Can_01142, SRS_Can_01145)
ExitPoint
CHANGE_BR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
[G_FULL_COM_MODE_REQUESTED]
/E_FULL_COM /E_BR_END_FULL_COM
T_SILENT_COM_MODE_REQUEST
/E_FULL_TO_SILENT_COM
CANSM_BSM_S_PRE_FULLCOM
CANSM_BSM_S_CHANGE_BAUDRATE
ExitPoint To
FULLCOM T_FULL_COM_MODE_REQUEST
/E_SILENT_TO_FULL_COM
ExitPoint
FULL_OR_SILENT_COM
ExitPoint
REPEAT_MAX
ExitPoint
NO_COM
[G_SILENT_COM_MODE_REQUESTED]
/E_BR_END_SILENT_COM
T_FULL_COM_MODE_REQUEST CANSM_BSM_S_SILENTCOM
T_FULL_COM_MODE_REQUEST
/E_PRE_NOCOM
CANSM_BSM_WUVALIDATION
T_BUS_OFF
CANSM_BSM_S_SILENTCOM_BOR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
T_STOP_WAKEUP_SOURCE
T_NO_COM_MODE_REQUEST
/E_PRE_NO_COM
CANSM_BSM_S_PRE_NOCOM
T_START_WAKEUP_SOURCE
T_START_WAKEUP_SOURCE
CanSM_Init
CANSM_BSM_S_NOCOM
/E_NOCOM
CANSM_BSM_S_NOT_INITIALIZED
PowerOn
CanSM_DeInit
PowerOff
Figure 7-1) shall call the API ComM_BusSM_ModeIndication with the parameters
Channel := CanSMComMNetworkHandleRef (ref. to ECUC_CanSM_00161) and
ComMode := COMM_NO_COMMUNICATION.⌋ (SRS_Can_01142, SRS_Can_01145)
ExitPoint
CHANGE_BR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
[G_FULL_COM_MODE_REQUESTED]
/E_FULL_COM /E_BR_END_FULL_COM
T_SILENT_COM_MODE_REQUEST
/E_FULL_TO_SILENT_COM
CANSM_BSM_S_PRE_FULLCOM
CANSM_BSM_S_CHANGE_BAUDRATE
ExitPoint To
FULLCOM T_FULL_COM_MODE_REQUEST
/E_SILENT_TO_FULL_COM
ExitPoint
FULL_OR_SILENT_COM
ExitPoint
REPEAT_MAX
ExitPoint
NO_COM
[G_SILENT_COM_MODE_REQUESTED]
/E_BR_END_SILENT_COM
T_FULL_COM_MODE_REQUEST CANSM_BSM_S_SILENTCOM
T_FULL_COM_MODE_REQUEST
/E_PRE_NOCOM
CANSM_BSM_WUVALIDATION
T_BUS_OFF
CANSM_BSM_S_SILENTCOM_BOR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
T_STOP_WAKEUP_SOURCE
T_NO_COM_MODE_REQUEST
/E_PRE_NO_COM
CANSM_BSM_S_PRE_NOCOM
T_START_WAKEUP_SOURCE
T_START_WAKEUP_SOURCE
CanSM_Init
CANSM_BSM_S_NOCOM
/E_NOCOM
CANSM_BSM_S_NOT_INITIALIZED
PowerOn
CanSM_DeInit
PowerOff
Figure 7-1) shall call at 1st place for each configured CAN controller of the CAN
network the API CanIf_SetPduMode with the parameters ControllerId :=
49 of 211 Document ID 253: AUTOSAR_SWS_CANStateManager
- AUTOSAR confidential -
Specification of CAN State Manager
AUTOSAR CP R19-11
ExitPoint
CHANGE_BR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
[G_FULL_COM_MODE_REQUESTED]
/E_FULL_COM /E_BR_END_FULL_COM
T_SILENT_COM_MODE_REQUEST
/E_FULL_TO_SILENT_COM
CANSM_BSM_S_PRE_FULLCOM
CANSM_BSM_S_CHANGE_BAUDRATE
ExitPoint To
FULLCOM T_FULL_COM_MODE_REQUEST
/E_SILENT_TO_FULL_COM
ExitPoint
FULL_OR_SILENT_COM
ExitPoint
REPEAT_MAX
ExitPoint
NO_COM
[G_SILENT_COM_MODE_REQUESTED]
/E_BR_END_SILENT_COM
T_FULL_COM_MODE_REQUEST CANSM_BSM_S_SILENTCOM
T_FULL_COM_MODE_REQUEST
/E_PRE_NOCOM
CANSM_BSM_WUVALIDATION
T_BUS_OFF
CANSM_BSM_S_SILENTCOM_BOR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
T_STOP_WAKEUP_SOURCE
T_NO_COM_MODE_REQUEST
/E_PRE_NO_COM
CANSM_BSM_S_PRE_NOCOM
T_START_WAKEUP_SOURCE
T_START_WAKEUP_SOURCE
CanSM_Init
CANSM_BSM_S_NOCOM
/E_NOCOM
CANSM_BSM_S_NOT_INITIALIZED
PowerOn
CanSM_DeInit
PowerOff
Figure 7-1) shall call at 1st place for each configured CAN controller of the CAN
50 of 211 Document ID 253: AUTOSAR_SWS_CANStateManager
- AUTOSAR confidential -
Specification of CAN State Manager
AUTOSAR CP R19-11
CANSM_BSM_S_FULLCOM
ExitPoint
CHANGE_BR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
[G_FULL_COM_MODE_REQUESTED]
/E_FULL_COM /E_BR_END_FULL_COM
T_SILENT_COM_MODE_REQUEST
/E_FULL_TO_SILENT_COM
CANSM_BSM_S_PRE_FULLCOM
CANSM_BSM_S_CHANGE_BAUDRATE
ExitPoint To
FULLCOM T_FULL_COM_MODE_REQUEST
/E_SILENT_TO_FULL_COM
ExitPoint
FULL_OR_SILENT_COM
ExitPoint
REPEAT_MAX
ExitPoint
NO_COM
[G_SILENT_COM_MODE_REQUESTED]
/E_BR_END_SILENT_COM
T_FULL_COM_MODE_REQUEST CANSM_BSM_S_SILENTCOM
T_FULL_COM_MODE_REQUEST
/E_PRE_NOCOM
CANSM_BSM_WUVALIDATION
T_BUS_OFF
CANSM_BSM_S_SILENTCOM_BOR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
T_STOP_WAKEUP_SOURCE
T_NO_COM_MODE_REQUEST
/E_PRE_NO_COM
CANSM_BSM_S_PRE_NOCOM
T_START_WAKEUP_SOURCE
T_START_WAKEUP_SOURCE
CanSM_Init
CANSM_BSM_S_NOCOM
/E_NOCOM
CANSM_BSM_S_NOT_INITIALIZED
PowerOn
CanSM_DeInit
PowerOff
Figure 7-1), the CanSM module shall call the API ComM_BusSM_ModeIndication
for the corresponding CAN network with the parameters Channel :=
CanSMComMNetworkHandleRef (ref. to ECUC_CanSM_00161) and ComMode :=
COMM_FULL_COMMUNICATION.
⌋ (SRS_Can_01158)
52 of 211 Document ID 253: AUTOSAR_SWS_CANStateManager
- AUTOSAR confidential -
Specification of CAN State Manager
AUTOSAR CP R19-11
CANSM_BSM_S_FULLCOM
ExitPoint
CHANGE_BR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
[G_FULL_COM_MODE_REQUESTED]
/E_FULL_COM /E_BR_END_FULL_COM
T_SILENT_COM_MODE_REQUEST
/E_FULL_TO_SILENT_COM
CANSM_BSM_S_PRE_FULLCOM
CANSM_BSM_S_CHANGE_BAUDRATE
ExitPoint To
FULLCOM T_FULL_COM_MODE_REQUEST
/E_SILENT_TO_FULL_COM
ExitPoint
FULL_OR_SILENT_COM
ExitPoint
REPEAT_MAX
ExitPoint
NO_COM
[G_SILENT_COM_MODE_REQUESTED]
/E_BR_END_SILENT_COM
T_FULL_COM_MODE_REQUEST CANSM_BSM_S_SILENTCOM
T_FULL_COM_MODE_REQUEST
/E_PRE_NOCOM
CANSM_BSM_WUVALIDATION
T_BUS_OFF
CANSM_BSM_S_SILENTCOM_BOR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
T_STOP_WAKEUP_SOURCE
T_NO_COM_MODE_REQUEST
/E_PRE_NO_COM
CANSM_BSM_S_PRE_NOCOM
T_START_WAKEUP_SOURCE
T_START_WAKEUP_SOURCE
CanSM_Init
CANSM_BSM_S_NOCOM
/E_NOCOM
CANSM_BSM_S_NOT_INITIALIZED
PowerOn
CanSM_DeInit
PowerOff
Figure 7-1) shall call at 1st place for the corresponding CAN network the API
BswM_CanSM_CurrentState with the parameters Network :=
CanSMComMNetworkHandleRef and CurrentState :=
CANSM_BSWM_SILENT_COMMUNICATION.⌋ (SRS_Can_01142, SRS_Can_01145)
ExitPoint
CHANGE_BR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
[G_FULL_COM_MODE_REQUESTED]
/E_FULL_COM /E_BR_END_FULL_COM
T_SILENT_COM_MODE_REQUEST
/E_FULL_TO_SILENT_COM
CANSM_BSM_S_PRE_FULLCOM
CANSM_BSM_S_CHANGE_BAUDRATE
ExitPoint To
FULLCOM T_FULL_COM_MODE_REQUEST
/E_SILENT_TO_FULL_COM
ExitPoint
FULL_OR_SILENT_COM
ExitPoint
REPEAT_MAX
ExitPoint
NO_COM
[G_SILENT_COM_MODE_REQUESTED]
/E_BR_END_SILENT_COM
T_FULL_COM_MODE_REQUEST CANSM_BSM_S_SILENTCOM
T_FULL_COM_MODE_REQUEST
/E_PRE_NOCOM
CANSM_BSM_WUVALIDATION
T_BUS_OFF
CANSM_BSM_S_SILENTCOM_BOR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
T_STOP_WAKEUP_SOURCE
T_NO_COM_MODE_REQUEST
/E_PRE_NO_COM
CANSM_BSM_S_PRE_NOCOM
T_START_WAKEUP_SOURCE
T_START_WAKEUP_SOURCE
CanSM_Init
CANSM_BSM_S_NOCOM
/E_NOCOM
CANSM_BSM_S_NOT_INITIALIZED
PowerOn
CanSM_DeInit
PowerOff
Figure 7-1) shall call at 2nd place for each configured CAN controller of the CAN
network the API CanIf_SetPduMode with the parameters ControllerId :=
CanSMControllerId (ref. to ECUC_CanSM_00141) and PduModeRequest :=
CANIF_TX_OFFLINE⌋ (SRS_Can_01142, SRS_Can_01145)
55 of 211 Document ID 253: AUTOSAR_SWS_CANStateManager
- AUTOSAR confidential -
Specification of CAN State Manager
AUTOSAR CP R19-11
ExitPoint
CHANGE_BR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
[G_FULL_COM_MODE_REQUESTED]
/E_FULL_COM /E_BR_END_FULL_COM
T_SILENT_COM_MODE_REQUEST
/E_FULL_TO_SILENT_COM
CANSM_BSM_S_PRE_FULLCOM
CANSM_BSM_S_CHANGE_BAUDRATE
ExitPoint To
FULLCOM T_FULL_COM_MODE_REQUEST
/E_SILENT_TO_FULL_COM
ExitPoint
FULL_OR_SILENT_COM
ExitPoint
REPEAT_MAX
ExitPoint
NO_COM
[G_SILENT_COM_MODE_REQUESTED]
/E_BR_END_SILENT_COM
T_FULL_COM_MODE_REQUEST CANSM_BSM_S_SILENTCOM
T_FULL_COM_MODE_REQUEST
/E_PRE_NOCOM
CANSM_BSM_WUVALIDATION
T_BUS_OFF
CANSM_BSM_S_SILENTCOM_BOR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
T_STOP_WAKEUP_SOURCE
T_NO_COM_MODE_REQUEST
/E_PRE_NO_COM
CANSM_BSM_S_PRE_NOCOM
T_START_WAKEUP_SOURCE
T_START_WAKEUP_SOURCE
CanSM_Init
CANSM_BSM_S_NOCOM
/E_NOCOM
CANSM_BSM_S_NOT_INITIALIZED
PowerOn
CanSM_DeInit
PowerOff
Figure 7-1) shall call at 3th place for the corresponding CAN network the API
ComM_BusSM_ModeIndication with the parameters Channel :=
CanSMComMNetworkHandleRef (ref. to ECUC_CanSM_00161) and ComMode :=
COMM_SILENT_COMMUNICATION.⌋ (SRS_Can_01142, SRS_Can_01145)
56 of 211 Document ID 253: AUTOSAR_SWS_CANStateManager
- AUTOSAR confidential -
Specification of CAN State Manager
AUTOSAR CP R19-11
ExitPoint
CHANGE_BR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
[G_FULL_COM_MODE_REQUESTED]
/E_FULL_COM /E_BR_END_FULL_COM
T_SILENT_COM_MODE_REQUEST
/E_FULL_TO_SILENT_COM
CANSM_BSM_S_PRE_FULLCOM
CANSM_BSM_S_CHANGE_BAUDRATE
ExitPoint To
FULLCOM T_FULL_COM_MODE_REQUEST
/E_SILENT_TO_FULL_COM
ExitPoint
FULL_OR_SILENT_COM
ExitPoint
REPEAT_MAX
ExitPoint
NO_COM
[G_SILENT_COM_MODE_REQUESTED]
/E_BR_END_SILENT_COM
T_FULL_COM_MODE_REQUEST CANSM_BSM_S_SILENTCOM
T_FULL_COM_MODE_REQUEST
/E_PRE_NOCOM
CANSM_BSM_WUVALIDATION
T_BUS_OFF
CANSM_BSM_S_SILENTCOM_BOR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
T_STOP_WAKEUP_SOURCE
T_NO_COM_MODE_REQUEST
/E_PRE_NO_COM
CANSM_BSM_S_PRE_NOCOM
T_START_WAKEUP_SOURCE
T_START_WAKEUP_SOURCE
CanSM_Init
CANSM_BSM_S_NOCOM
/E_NOCOM
CANSM_BSM_S_NOT_INITIALIZED
PowerOn
CanSM_DeInit
PowerOff
ExitPoint
CHANGE_BR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
[G_FULL_COM_MODE_REQUESTED]
/E_FULL_COM /E_BR_END_FULL_COM
T_SILENT_COM_MODE_REQUEST
/E_FULL_TO_SILENT_COM
CANSM_BSM_S_PRE_FULLCOM
CANSM_BSM_S_CHANGE_BAUDRATE
ExitPoint To
FULLCOM T_FULL_COM_MODE_REQUEST
/E_SILENT_TO_FULL_COM
ExitPoint
FULL_OR_SILENT_COM
ExitPoint
REPEAT_MAX
ExitPoint
NO_COM
[G_SILENT_COM_MODE_REQUESTED]
/E_BR_END_SILENT_COM
T_FULL_COM_MODE_REQUEST CANSM_BSM_S_SILENTCOM
T_FULL_COM_MODE_REQUEST
/E_PRE_NOCOM
CANSM_BSM_WUVALIDATION
T_BUS_OFF
CANSM_BSM_S_SILENTCOM_BOR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
T_STOP_WAKEUP_SOURCE
T_NO_COM_MODE_REQUEST
/E_PRE_NO_COM
CANSM_BSM_S_PRE_NOCOM
T_START_WAKEUP_SOURCE
T_START_WAKEUP_SOURCE
CanSM_Init
CANSM_BSM_S_NOCOM
/E_NOCOM
CANSM_BSM_S_NOT_INITIALIZED
PowerOn
CanSM_DeInit
PowerOff
ExitPoint
CHANGE_BR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
[G_FULL_COM_MODE_REQUESTED]
/E_FULL_COM /E_BR_END_FULL_COM
T_SILENT_COM_MODE_REQUEST
/E_FULL_TO_SILENT_COM
CANSM_BSM_S_PRE_FULLCOM
CANSM_BSM_S_CHANGE_BAUDRATE
ExitPoint To
FULLCOM T_FULL_COM_MODE_REQUEST
/E_SILENT_TO_FULL_COM
ExitPoint
FULL_OR_SILENT_COM
ExitPoint
REPEAT_MAX
ExitPoint
NO_COM
[G_SILENT_COM_MODE_REQUESTED]
/E_BR_END_SILENT_COM
T_FULL_COM_MODE_REQUEST CANSM_BSM_S_SILENTCOM
T_FULL_COM_MODE_REQUEST
/E_PRE_NOCOM
CANSM_BSM_WUVALIDATION
T_BUS_OFF
CANSM_BSM_S_SILENTCOM_BOR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
T_STOP_WAKEUP_SOURCE
T_NO_COM_MODE_REQUEST
/E_PRE_NO_COM
CANSM_BSM_S_PRE_NOCOM
T_START_WAKEUP_SOURCE
T_START_WAKEUP_SOURCE
CanSM_Init
CANSM_BSM_S_NOCOM
/E_NOCOM
CANSM_BSM_S_NOT_INITIALIZED
PowerOn
CanSM_DeInit
PowerOff
stm CANSM_BSM_WUVALIDATION
S_TRCV_NORMAL [G_TRCV_NORMAL_E_OK]
do / DO_SET_TRCV_MODE_NORMAL
EntryPoint
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_TIMEOUT
T_TRCV_NORMAL_INDICATED
T_TRCV_NORMAL_INDICATED
S_CC_STOPPED [G_CC_STOPPED_E_OK]
do / DO_SET_CC_MODE_STOPPED
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
T_CC_STOPPED_TIMEOUT
T_CC_STOPPED_INDICATED
S_CC_STARTED
do / DO_SET_CC_MODE_STARTED
[G_CC_STARTED_E_OK]
T_CC_STARTED_INDICATED
S_CC_STARTED_WAIT
T_CC_STARTED_TIMEOUT
WAIT_WUVALIDATION_LEAVE
T_CC_STARTED_INDICATED
stm CANSM_BSM_S_PRE_NOCOM
EntryPoint
[CANSM_BSM_G_PN_NOT_SUPPORTED] [CANSM_BSM_G_PN_SUPPORTED]
CANSM_BSM_DeinitPnNotSupported CANSM_BSM_DeinitPnSupported
ExitPoint
stm CANSM_BSM_DeinitPnSupported
CANSM_BSM_DeinitPnSupportedProceed
S_PN_CLEAR_WUF
do / DO_CLEAR_TRCV_WUF
[G_PN_CLEAR_WUF_E_OK]
T_CLEAR_WUF_INDICATED
T_CLEAR_WUF_TIMEOUT
S_PN_CLEAR_WUF_WAIT
T_CLEAR_WUF_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
T_CC_STOPPED_INDICATED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED [G_TRCV_STANDBY_E_OK]
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
[G_CC_SLEEP_E_OK] T_CHECK_WFLAG_INDICATED
T_CC_SLEEP_INDICATED
S_CC_SLEEP_WAIT
CANSM_BSM_T_CC_SLEEP_TIMEOUT
T_CC_SLEEP_INDICATED
S_CHECK_WFLAG_IN_NOT_CC_SLEEP
do / DO_CHECK_WFLAG
S_CHECK_WFLAG_IN_CC_SLEEP
do / DO_CHECK_WFLAG
[G_CHECK_WFLAG_E_OK]
T_CHECK_WFLAG_TIMEOUT
[G_CHECK_WFLAG_E_OK]
S_CHECK_WUF_IN_NOT_CC_SLEEP_WAIT
T_CHECK_WFLAG_INDICATED
T_CHECK_WFLAG_TIMEOUT T_CHECK_WFLAG_INDICATED
S_CHECK_WUF_IN_CC_SLEEP_WAIT
Junction
T_CHECK_WFLAG_INDICATED
ExitPoint
stm CANSM_BSM_DeinitPnSupported
CANSM_BSM_DeinitPnSupportedProceed
S_PN_CLEAR_WUF
do / DO_CLEAR_TRCV_WUF
[G_PN_CLEAR_WUF_E_OK]
T_CLEAR_WUF_INDICATED
T_CLEAR_WUF_TIMEOUT
S_PN_CLEAR_WUF_WAIT
T_CLEAR_WUF_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
T_CC_STOPPED_INDICATED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED [G_TRCV_STANDBY_E_OK]
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
[G_CC_SLEEP_E_OK] T_CHECK_WFLAG_INDICATED
T_CC_SLEEP_INDICATED
S_CC_SLEEP_WAIT
CANSM_BSM_T_CC_SLEEP_TIMEOUT
T_CC_SLEEP_INDICATED
S_CHECK_WFLAG_IN_NOT_CC_SLEEP
do / DO_CHECK_WFLAG
S_CHECK_WFLAG_IN_CC_SLEEP
do / DO_CHECK_WFLAG
[G_CHECK_WFLAG_E_OK]
T_CHECK_WFLAG_TIMEOUT
[G_CHECK_WFLAG_E_OK]
S_CHECK_WUF_IN_NOT_CC_SLEEP_WAIT
T_CHECK_WFLAG_INDICATED
T_CHECK_WFLAG_TIMEOUT T_CHECK_WFLAG_INDICATED
S_CHECK_WUF_IN_CC_SLEEP_WAIT
Junction
T_CHECK_WFLAG_INDICATED
ExitPoint
Figure 7-4) is in the state S_PN_CLEAR_WUF, the CanSM module operate the do
action DO_CLEAR_TRCV_WUF and therefore repeat the API request
CanIf_ClrTrcvWufFlag (ref. to chapter 8.5.1) and use the configured Transceiver
67 of 211 Document ID 253: AUTOSAR_SWS_CANStateManager
- AUTOSAR confidential -
Specification of CAN State Manager
AUTOSAR CP R19-11
stm CANSM_BSM_DeinitPnSupported
CANSM_BSM_DeinitPnSupportedProceed
S_PN_CLEAR_WUF
do / DO_CLEAR_TRCV_WUF
[G_PN_CLEAR_WUF_E_OK]
T_CLEAR_WUF_INDICATED
T_CLEAR_WUF_TIMEOUT
S_PN_CLEAR_WUF_WAIT
T_CLEAR_WUF_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
T_CC_STOPPED_INDICATED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED [G_TRCV_STANDBY_E_OK]
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
[G_CC_SLEEP_E_OK] T_CHECK_WFLAG_INDICATED
T_CC_SLEEP_INDICATED
S_CC_SLEEP_WAIT
CANSM_BSM_T_CC_SLEEP_TIMEOUT
T_CC_SLEEP_INDICATED
S_CHECK_WFLAG_IN_NOT_CC_SLEEP
do / DO_CHECK_WFLAG
S_CHECK_WFLAG_IN_CC_SLEEP
do / DO_CHECK_WFLAG
[G_CHECK_WFLAG_E_OK]
T_CHECK_WFLAG_TIMEOUT
[G_CHECK_WFLAG_E_OK]
S_CHECK_WUF_IN_NOT_CC_SLEEP_WAIT
T_CHECK_WFLAG_INDICATED
T_CHECK_WFLAG_TIMEOUT T_CHECK_WFLAG_INDICATED
S_CHECK_WUF_IN_CC_SLEEP_WAIT
Junction
T_CHECK_WFLAG_INDICATED
ExitPoint
Figure 7-4) shall be passed, if the API call of SWS_CanSM_00438 has returned
E_OK.⌋ (SRS_Can_01142, SRS_Can_01145)
stm CANSM_BSM_DeinitPnSupported
CANSM_BSM_DeinitPnSupportedProceed
S_PN_CLEAR_WUF
do / DO_CLEAR_TRCV_WUF
[G_PN_CLEAR_WUF_E_OK]
T_CLEAR_WUF_INDICATED
T_CLEAR_WUF_TIMEOUT
S_PN_CLEAR_WUF_WAIT
T_CLEAR_WUF_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
T_CC_STOPPED_INDICATED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED [G_TRCV_STANDBY_E_OK]
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
[G_CC_SLEEP_E_OK] T_CHECK_WFLAG_INDICATED
T_CC_SLEEP_INDICATED
S_CC_SLEEP_WAIT
CANSM_BSM_T_CC_SLEEP_TIMEOUT
T_CC_SLEEP_INDICATED
S_CHECK_WFLAG_IN_NOT_CC_SLEEP
do / DO_CHECK_WFLAG
S_CHECK_WFLAG_IN_CC_SLEEP
do / DO_CHECK_WFLAG
[G_CHECK_WFLAG_E_OK]
T_CHECK_WFLAG_TIMEOUT
[G_CHECK_WFLAG_E_OK]
S_CHECK_WUF_IN_NOT_CC_SLEEP_WAIT
T_CHECK_WFLAG_INDICATED
T_CHECK_WFLAG_TIMEOUT T_CHECK_WFLAG_INDICATED
S_CHECK_WUF_IN_CC_SLEEP_WAIT
Junction
T_CHECK_WFLAG_INDICATED
ExitPoint
stm CANSM_BSM_DeinitPnSupported
CANSM_BSM_DeinitPnSupportedProceed
S_PN_CLEAR_WUF
do / DO_CLEAR_TRCV_WUF
[G_PN_CLEAR_WUF_E_OK]
T_CLEAR_WUF_INDICATED
T_CLEAR_WUF_TIMEOUT
S_PN_CLEAR_WUF_WAIT
T_CLEAR_WUF_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
T_CC_STOPPED_INDICATED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED [G_TRCV_STANDBY_E_OK]
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
[G_CC_SLEEP_E_OK] T_CHECK_WFLAG_INDICATED
T_CC_SLEEP_INDICATED
S_CC_SLEEP_WAIT
CANSM_BSM_T_CC_SLEEP_TIMEOUT
T_CC_SLEEP_INDICATED
S_CHECK_WFLAG_IN_NOT_CC_SLEEP
do / DO_CHECK_WFLAG
S_CHECK_WFLAG_IN_CC_SLEEP
do / DO_CHECK_WFLAG
[G_CHECK_WFLAG_E_OK]
T_CHECK_WFLAG_TIMEOUT
[G_CHECK_WFLAG_E_OK]
S_CHECK_WUF_IN_NOT_CC_SLEEP_WAIT
T_CHECK_WFLAG_INDICATED
T_CHECK_WFLAG_TIMEOUT T_CHECK_WFLAG_INDICATED
S_CHECK_WUF_IN_CC_SLEEP_WAIT
Junction
T_CHECK_WFLAG_INDICATED
ExitPoint
stm CANSM_BSM_DeinitPnSupported
CANSM_BSM_DeinitPnSupportedProceed
S_PN_CLEAR_WUF
do / DO_CLEAR_TRCV_WUF
[G_PN_CLEAR_WUF_E_OK]
T_CLEAR_WUF_INDICATED
T_CLEAR_WUF_TIMEOUT
S_PN_CLEAR_WUF_WAIT
T_CLEAR_WUF_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
T_CC_STOPPED_INDICATED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED [G_TRCV_STANDBY_E_OK]
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
[G_CC_SLEEP_E_OK] T_CHECK_WFLAG_INDICATED
T_CC_SLEEP_INDICATED
S_CC_SLEEP_WAIT
CANSM_BSM_T_CC_SLEEP_TIMEOUT
T_CC_SLEEP_INDICATED
S_CHECK_WFLAG_IN_NOT_CC_SLEEP
do / DO_CHECK_WFLAG
S_CHECK_WFLAG_IN_CC_SLEEP
do / DO_CHECK_WFLAG
[G_CHECK_WFLAG_E_OK]
T_CHECK_WFLAG_TIMEOUT
[G_CHECK_WFLAG_E_OK]
S_CHECK_WUF_IN_NOT_CC_SLEEP_WAIT
T_CHECK_WFLAG_INDICATED
T_CHECK_WFLAG_TIMEOUT T_CHECK_WFLAG_INDICATED
S_CHECK_WUF_IN_CC_SLEEP_WAIT
Junction
T_CHECK_WFLAG_INDICATED
ExitPoint
Figure 7-4) is in the state S_CC_STOPPED, the CanSM module shall operate the do
action DO_SET_CC_MODE_STOPPED and therefore repeat for all configured CAN
controllers of the CAN network (ref. to ECUC_CanSM_00141) the API request
75 of 211 Document ID 253: AUTOSAR_SWS_CANStateManager
- AUTOSAR confidential -
Specification of CAN State Manager
AUTOSAR CP R19-11
stm CANSM_BSM_DeinitPnSupported
CANSM_BSM_DeinitPnSupportedProceed
S_PN_CLEAR_WUF
do / DO_CLEAR_TRCV_WUF
[G_PN_CLEAR_WUF_E_OK]
T_CLEAR_WUF_INDICATED
T_CLEAR_WUF_TIMEOUT
S_PN_CLEAR_WUF_WAIT
T_CLEAR_WUF_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
T_CC_STOPPED_INDICATED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED [G_TRCV_STANDBY_E_OK]
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
[G_CC_SLEEP_E_OK] T_CHECK_WFLAG_INDICATED
T_CC_SLEEP_INDICATED
S_CC_SLEEP_WAIT
CANSM_BSM_T_CC_SLEEP_TIMEOUT
T_CC_SLEEP_INDICATED
S_CHECK_WFLAG_IN_NOT_CC_SLEEP
do / DO_CHECK_WFLAG
S_CHECK_WFLAG_IN_CC_SLEEP
do / DO_CHECK_WFLAG
[G_CHECK_WFLAG_E_OK]
T_CHECK_WFLAG_TIMEOUT
[G_CHECK_WFLAG_E_OK]
S_CHECK_WUF_IN_NOT_CC_SLEEP_WAIT
T_CHECK_WFLAG_INDICATED
T_CHECK_WFLAG_TIMEOUT T_CHECK_WFLAG_INDICATED
S_CHECK_WUF_IN_CC_SLEEP_WAIT
Junction
T_CHECK_WFLAG_INDICATED
ExitPoint
Figure 7-4) shall be passed, if all API calls of SWS_CanSM_00441 have returned
E_OK.⌋ (SRS_Can_01142, SRS_Can_01145)
stm CANSM_BSM_DeinitPnSupported
CANSM_BSM_DeinitPnSupportedProceed
S_PN_CLEAR_WUF
do / DO_CLEAR_TRCV_WUF
[G_PN_CLEAR_WUF_E_OK]
T_CLEAR_WUF_INDICATED
T_CLEAR_WUF_TIMEOUT
S_PN_CLEAR_WUF_WAIT
T_CLEAR_WUF_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
T_CC_STOPPED_INDICATED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED [G_TRCV_STANDBY_E_OK]
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
[G_CC_SLEEP_E_OK] T_CHECK_WFLAG_INDICATED
T_CC_SLEEP_INDICATED
S_CC_SLEEP_WAIT
CANSM_BSM_T_CC_SLEEP_TIMEOUT
T_CC_SLEEP_INDICATED
S_CHECK_WFLAG_IN_NOT_CC_SLEEP
do / DO_CHECK_WFLAG
S_CHECK_WFLAG_IN_CC_SLEEP
do / DO_CHECK_WFLAG
[G_CHECK_WFLAG_E_OK]
T_CHECK_WFLAG_TIMEOUT
[G_CHECK_WFLAG_E_OK]
S_CHECK_WUF_IN_NOT_CC_SLEEP_WAIT
T_CHECK_WFLAG_INDICATED
T_CHECK_WFLAG_TIMEOUT T_CHECK_WFLAG_INDICATED
S_CHECK_WUF_IN_CC_SLEEP_WAIT
Junction
T_CHECK_WFLAG_INDICATED
ExitPoint
stm CANSM_BSM_DeinitPnSupported
CANSM_BSM_DeinitPnSupportedProceed
S_PN_CLEAR_WUF
do / DO_CLEAR_TRCV_WUF
[G_PN_CLEAR_WUF_E_OK]
T_CLEAR_WUF_INDICATED
T_CLEAR_WUF_TIMEOUT
S_PN_CLEAR_WUF_WAIT
T_CLEAR_WUF_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
T_CC_STOPPED_INDICATED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED [G_TRCV_STANDBY_E_OK]
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
[G_CC_SLEEP_E_OK] T_CHECK_WFLAG_INDICATED
T_CC_SLEEP_INDICATED
S_CC_SLEEP_WAIT
CANSM_BSM_T_CC_SLEEP_TIMEOUT
T_CC_SLEEP_INDICATED
S_CHECK_WFLAG_IN_NOT_CC_SLEEP
do / DO_CHECK_WFLAG
S_CHECK_WFLAG_IN_CC_SLEEP
do / DO_CHECK_WFLAG
[G_CHECK_WFLAG_E_OK]
T_CHECK_WFLAG_TIMEOUT
[G_CHECK_WFLAG_E_OK]
S_CHECK_WUF_IN_NOT_CC_SLEEP_WAIT
T_CHECK_WFLAG_INDICATED
T_CHECK_WFLAG_TIMEOUT T_CHECK_WFLAG_INDICATED
S_CHECK_WUF_IN_CC_SLEEP_WAIT
Junction
T_CHECK_WFLAG_INDICATED
ExitPoint
stm CANSM_BSM_DeinitPnSupported
CANSM_BSM_DeinitPnSupportedProceed
S_PN_CLEAR_WUF
do / DO_CLEAR_TRCV_WUF
[G_PN_CLEAR_WUF_E_OK]
T_CLEAR_WUF_INDICATED
T_CLEAR_WUF_TIMEOUT
S_PN_CLEAR_WUF_WAIT
T_CLEAR_WUF_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
T_CC_STOPPED_INDICATED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED [G_TRCV_STANDBY_E_OK]
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
[G_CC_SLEEP_E_OK] T_CHECK_WFLAG_INDICATED
T_CC_SLEEP_INDICATED
S_CC_SLEEP_WAIT
CANSM_BSM_T_CC_SLEEP_TIMEOUT
T_CC_SLEEP_INDICATED
S_CHECK_WFLAG_IN_NOT_CC_SLEEP
do / DO_CHECK_WFLAG
S_CHECK_WFLAG_IN_CC_SLEEP
do / DO_CHECK_WFLAG
[G_CHECK_WFLAG_E_OK]
T_CHECK_WFLAG_TIMEOUT
[G_CHECK_WFLAG_E_OK]
S_CHECK_WUF_IN_NOT_CC_SLEEP_WAIT
T_CHECK_WFLAG_INDICATED
T_CHECK_WFLAG_TIMEOUT T_CHECK_WFLAG_INDICATED
S_CHECK_WUF_IN_CC_SLEEP_WAIT
Junction
T_CHECK_WFLAG_INDICATED
ExitPoint
Figure 7-4) is in the state S_TRCV_NORMAL, the CanSM module shall operate the do
action DO_SET_TRCV_MODE_NORMAL and therefore repeat for the configured CAN
Transceiver of the CAN network (ref. to ECUC_CanSM_00137) the API request
83 of 211 Document ID 253: AUTOSAR_SWS_CANStateManager
- AUTOSAR confidential -
Specification of CAN State Manager
AUTOSAR CP R19-11
stm CANSM_BSM_DeinitPnSupported
CANSM_BSM_DeinitPnSupportedProceed
S_PN_CLEAR_WUF
do / DO_CLEAR_TRCV_WUF
[G_PN_CLEAR_WUF_E_OK]
T_CLEAR_WUF_INDICATED
T_CLEAR_WUF_TIMEOUT
S_PN_CLEAR_WUF_WAIT
T_CLEAR_WUF_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
T_CC_STOPPED_INDICATED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED [G_TRCV_STANDBY_E_OK]
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
[G_CC_SLEEP_E_OK] T_CHECK_WFLAG_INDICATED
T_CC_SLEEP_INDICATED
S_CC_SLEEP_WAIT
CANSM_BSM_T_CC_SLEEP_TIMEOUT
T_CC_SLEEP_INDICATED
S_CHECK_WFLAG_IN_NOT_CC_SLEEP
do / DO_CHECK_WFLAG
S_CHECK_WFLAG_IN_CC_SLEEP
do / DO_CHECK_WFLAG
[G_CHECK_WFLAG_E_OK]
T_CHECK_WFLAG_TIMEOUT
[G_CHECK_WFLAG_E_OK]
S_CHECK_WUF_IN_NOT_CC_SLEEP_WAIT
T_CHECK_WFLAG_INDICATED
T_CHECK_WFLAG_TIMEOUT T_CHECK_WFLAG_INDICATED
S_CHECK_WUF_IN_CC_SLEEP_WAIT
Junction
T_CHECK_WFLAG_INDICATED
ExitPoint
Figure 7-4) shall be passed, if the API call of SWS_CanSM_00446 has returned
E_OK.⌋ (SRS_Can_01142, SRS_Can_01145)
stm CANSM_BSM_DeinitPnSupported
CANSM_BSM_DeinitPnSupportedProceed
S_PN_CLEAR_WUF
do / DO_CLEAR_TRCV_WUF
[G_PN_CLEAR_WUF_E_OK]
T_CLEAR_WUF_INDICATED
T_CLEAR_WUF_TIMEOUT
S_PN_CLEAR_WUF_WAIT
T_CLEAR_WUF_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
T_CC_STOPPED_INDICATED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED [G_TRCV_STANDBY_E_OK]
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
[G_CC_SLEEP_E_OK] T_CHECK_WFLAG_INDICATED
T_CC_SLEEP_INDICATED
S_CC_SLEEP_WAIT
CANSM_BSM_T_CC_SLEEP_TIMEOUT
T_CC_SLEEP_INDICATED
S_CHECK_WFLAG_IN_NOT_CC_SLEEP
do / DO_CHECK_WFLAG
S_CHECK_WFLAG_IN_CC_SLEEP
do / DO_CHECK_WFLAG
[G_CHECK_WFLAG_E_OK]
T_CHECK_WFLAG_TIMEOUT
[G_CHECK_WFLAG_E_OK]
S_CHECK_WUF_IN_NOT_CC_SLEEP_WAIT
T_CHECK_WFLAG_INDICATED
T_CHECK_WFLAG_TIMEOUT T_CHECK_WFLAG_INDICATED
S_CHECK_WUF_IN_CC_SLEEP_WAIT
Junction
T_CHECK_WFLAG_INDICATED
ExitPoint
stm CANSM_BSM_DeinitPnSupported
CANSM_BSM_DeinitPnSupportedProceed
S_PN_CLEAR_WUF
do / DO_CLEAR_TRCV_WUF
[G_PN_CLEAR_WUF_E_OK]
T_CLEAR_WUF_INDICATED
T_CLEAR_WUF_TIMEOUT
S_PN_CLEAR_WUF_WAIT
T_CLEAR_WUF_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
T_CC_STOPPED_INDICATED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED [G_TRCV_STANDBY_E_OK]
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
[G_CC_SLEEP_E_OK] T_CHECK_WFLAG_INDICATED
T_CC_SLEEP_INDICATED
S_CC_SLEEP_WAIT
CANSM_BSM_T_CC_SLEEP_TIMEOUT
T_CC_SLEEP_INDICATED
S_CHECK_WFLAG_IN_NOT_CC_SLEEP
do / DO_CHECK_WFLAG
S_CHECK_WFLAG_IN_CC_SLEEP
do / DO_CHECK_WFLAG
[G_CHECK_WFLAG_E_OK]
T_CHECK_WFLAG_TIMEOUT
[G_CHECK_WFLAG_E_OK]
S_CHECK_WUF_IN_NOT_CC_SLEEP_WAIT
T_CHECK_WFLAG_INDICATED
T_CHECK_WFLAG_TIMEOUT T_CHECK_WFLAG_INDICATED
S_CHECK_WUF_IN_CC_SLEEP_WAIT
Junction
T_CHECK_WFLAG_INDICATED
ExitPoint
stm CANSM_BSM_DeinitPnSupported
CANSM_BSM_DeinitPnSupportedProceed
S_PN_CLEAR_WUF
do / DO_CLEAR_TRCV_WUF
[G_PN_CLEAR_WUF_E_OK]
T_CLEAR_WUF_INDICATED
T_CLEAR_WUF_TIMEOUT
S_PN_CLEAR_WUF_WAIT
T_CLEAR_WUF_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
T_CC_STOPPED_INDICATED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED [G_TRCV_STANDBY_E_OK]
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
[G_CC_SLEEP_E_OK] T_CHECK_WFLAG_INDICATED
T_CC_SLEEP_INDICATED
S_CC_SLEEP_WAIT
CANSM_BSM_T_CC_SLEEP_TIMEOUT
T_CC_SLEEP_INDICATED
S_CHECK_WFLAG_IN_NOT_CC_SLEEP
do / DO_CHECK_WFLAG
S_CHECK_WFLAG_IN_CC_SLEEP
do / DO_CHECK_WFLAG
[G_CHECK_WFLAG_E_OK]
T_CHECK_WFLAG_TIMEOUT
[G_CHECK_WFLAG_E_OK]
S_CHECK_WUF_IN_NOT_CC_SLEEP_WAIT
T_CHECK_WFLAG_INDICATED
T_CHECK_WFLAG_TIMEOUT T_CHECK_WFLAG_INDICATED
S_CHECK_WUF_IN_CC_SLEEP_WAIT
Junction
T_CHECK_WFLAG_INDICATED
ExitPoint
Figure 7-4) is in the state S_TRCV_STANDBY, the CanSM module shall operate the
do action DO_SET_TRCV_STANDBY and therefore repeat for the configured CAN
Transceiver of the CAN network (ref. to ECUC_CanSM_00137) the API request
91 of 211 Document ID 253: AUTOSAR_SWS_CANStateManager
- AUTOSAR confidential -
Specification of CAN State Manager
AUTOSAR CP R19-11
stm CANSM_BSM_DeinitPnSupported
CANSM_BSM_DeinitPnSupportedProceed
S_PN_CLEAR_WUF
do / DO_CLEAR_TRCV_WUF
[G_PN_CLEAR_WUF_E_OK]
T_CLEAR_WUF_INDICATED
T_CLEAR_WUF_TIMEOUT
S_PN_CLEAR_WUF_WAIT
T_CLEAR_WUF_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
T_CC_STOPPED_INDICATED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED [G_TRCV_STANDBY_E_OK]
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
[G_CC_SLEEP_E_OK] T_CHECK_WFLAG_INDICATED
T_CC_SLEEP_INDICATED
S_CC_SLEEP_WAIT
CANSM_BSM_T_CC_SLEEP_TIMEOUT
T_CC_SLEEP_INDICATED
S_CHECK_WFLAG_IN_NOT_CC_SLEEP
do / DO_CHECK_WFLAG
S_CHECK_WFLAG_IN_CC_SLEEP
do / DO_CHECK_WFLAG
[G_CHECK_WFLAG_E_OK]
T_CHECK_WFLAG_TIMEOUT
[G_CHECK_WFLAG_E_OK]
S_CHECK_WUF_IN_NOT_CC_SLEEP_WAIT
T_CHECK_WFLAG_INDICATED
T_CHECK_WFLAG_TIMEOUT T_CHECK_WFLAG_INDICATED
S_CHECK_WUF_IN_CC_SLEEP_WAIT
Junction
T_CHECK_WFLAG_INDICATED
ExitPoint
Figure 7-4) shall be passed, if the API call of SWS_CanSM_00450 has returned
E_OK.⌋ (SRS_Can_01142, SRS_Can_01145)
stm CANSM_BSM_DeinitPnSupported
CANSM_BSM_DeinitPnSupportedProceed
S_PN_CLEAR_WUF
do / DO_CLEAR_TRCV_WUF
[G_PN_CLEAR_WUF_E_OK]
T_CLEAR_WUF_INDICATED
T_CLEAR_WUF_TIMEOUT
S_PN_CLEAR_WUF_WAIT
T_CLEAR_WUF_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
T_CC_STOPPED_INDICATED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED [G_TRCV_STANDBY_E_OK]
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
[G_CC_SLEEP_E_OK] T_CHECK_WFLAG_INDICATED
T_CC_SLEEP_INDICATED
S_CC_SLEEP_WAIT
CANSM_BSM_T_CC_SLEEP_TIMEOUT
T_CC_SLEEP_INDICATED
S_CHECK_WFLAG_IN_NOT_CC_SLEEP
do / DO_CHECK_WFLAG
S_CHECK_WFLAG_IN_CC_SLEEP
do / DO_CHECK_WFLAG
[G_CHECK_WFLAG_E_OK]
T_CHECK_WFLAG_TIMEOUT
[G_CHECK_WFLAG_E_OK]
S_CHECK_WUF_IN_NOT_CC_SLEEP_WAIT
T_CHECK_WFLAG_INDICATED
T_CHECK_WFLAG_TIMEOUT T_CHECK_WFLAG_INDICATED
S_CHECK_WUF_IN_CC_SLEEP_WAIT
Junction
T_CHECK_WFLAG_INDICATED
ExitPoint
stm CANSM_BSM_DeinitPnSupported
CANSM_BSM_DeinitPnSupportedProceed
S_PN_CLEAR_WUF
do / DO_CLEAR_TRCV_WUF
[G_PN_CLEAR_WUF_E_OK]
T_CLEAR_WUF_INDICATED
T_CLEAR_WUF_TIMEOUT
S_PN_CLEAR_WUF_WAIT
T_CLEAR_WUF_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
T_CC_STOPPED_INDICATED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED [G_TRCV_STANDBY_E_OK]
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
[G_CC_SLEEP_E_OK] T_CHECK_WFLAG_INDICATED
T_CC_SLEEP_INDICATED
S_CC_SLEEP_WAIT
CANSM_BSM_T_CC_SLEEP_TIMEOUT
T_CC_SLEEP_INDICATED
S_CHECK_WFLAG_IN_NOT_CC_SLEEP
do / DO_CHECK_WFLAG
S_CHECK_WFLAG_IN_CC_SLEEP
do / DO_CHECK_WFLAG
[G_CHECK_WFLAG_E_OK]
T_CHECK_WFLAG_TIMEOUT
[G_CHECK_WFLAG_E_OK]
S_CHECK_WUF_IN_NOT_CC_SLEEP_WAIT
T_CHECK_WFLAG_INDICATED
T_CHECK_WFLAG_TIMEOUT T_CHECK_WFLAG_INDICATED
S_CHECK_WUF_IN_CC_SLEEP_WAIT
Junction
T_CHECK_WFLAG_INDICATED
ExitPoint
stm CANSM_BSM_DeinitPnSupported
CANSM_BSM_DeinitPnSupportedProceed
S_PN_CLEAR_WUF
do / DO_CLEAR_TRCV_WUF
[G_PN_CLEAR_WUF_E_OK]
T_CLEAR_WUF_INDICATED
T_CLEAR_WUF_TIMEOUT
S_PN_CLEAR_WUF_WAIT
T_CLEAR_WUF_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
T_CC_STOPPED_INDICATED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED [G_TRCV_STANDBY_E_OK]
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
[G_CC_SLEEP_E_OK] T_CHECK_WFLAG_INDICATED
T_CC_SLEEP_INDICATED
S_CC_SLEEP_WAIT
CANSM_BSM_T_CC_SLEEP_TIMEOUT
T_CC_SLEEP_INDICATED
S_CHECK_WFLAG_IN_NOT_CC_SLEEP
do / DO_CHECK_WFLAG
S_CHECK_WFLAG_IN_CC_SLEEP
do / DO_CHECK_WFLAG
[G_CHECK_WFLAG_E_OK]
T_CHECK_WFLAG_TIMEOUT
[G_CHECK_WFLAG_E_OK]
S_CHECK_WUF_IN_NOT_CC_SLEEP_WAIT
T_CHECK_WFLAG_INDICATED
T_CHECK_WFLAG_TIMEOUT T_CHECK_WFLAG_INDICATED
S_CHECK_WUF_IN_CC_SLEEP_WAIT
Junction
T_CHECK_WFLAG_INDICATED
ExitPoint
Figure 7-4) is in the state S_CC_SLEEP, the CanSM module shall operate the do
action DO_SET_CC_MODE_SLEEP and therefore repeat for all configured CAN
controllers of the CAN network (ref. to ECUC_CanSM_00141) the API request
99 of 211 Document ID 253: AUTOSAR_SWS_CANStateManager
- AUTOSAR confidential -
Specification of CAN State Manager
AUTOSAR CP R19-11
stm CANSM_BSM_DeinitPnSupported
CANSM_BSM_DeinitPnSupportedProceed
S_PN_CLEAR_WUF
do / DO_CLEAR_TRCV_WUF
[G_PN_CLEAR_WUF_E_OK]
T_CLEAR_WUF_INDICATED
T_CLEAR_WUF_TIMEOUT
S_PN_CLEAR_WUF_WAIT
T_CLEAR_WUF_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
T_CC_STOPPED_INDICATED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED [G_TRCV_STANDBY_E_OK]
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
[G_CC_SLEEP_E_OK] T_CHECK_WFLAG_INDICATED
T_CC_SLEEP_INDICATED
S_CC_SLEEP_WAIT
CANSM_BSM_T_CC_SLEEP_TIMEOUT
T_CC_SLEEP_INDICATED
S_CHECK_WFLAG_IN_NOT_CC_SLEEP
do / DO_CHECK_WFLAG
S_CHECK_WFLAG_IN_CC_SLEEP
do / DO_CHECK_WFLAG
[G_CHECK_WFLAG_E_OK]
T_CHECK_WFLAG_TIMEOUT
[G_CHECK_WFLAG_E_OK]
S_CHECK_WUF_IN_NOT_CC_SLEEP_WAIT
T_CHECK_WFLAG_INDICATED
T_CHECK_WFLAG_TIMEOUT T_CHECK_WFLAG_INDICATED
S_CHECK_WUF_IN_CC_SLEEP_WAIT
Junction
T_CHECK_WFLAG_INDICATED
ExitPoint
Figure 7-4) shall be passed, if all API calls of SWS_CanSM_00453 have returned
E_OK.⌋ (SRS_Can_01142, SRS_Can_01145)
stm CANSM_BSM_DeinitPnSupported
CANSM_BSM_DeinitPnSupportedProceed
S_PN_CLEAR_WUF
do / DO_CLEAR_TRCV_WUF
[G_PN_CLEAR_WUF_E_OK]
T_CLEAR_WUF_INDICATED
T_CLEAR_WUF_TIMEOUT
S_PN_CLEAR_WUF_WAIT
T_CLEAR_WUF_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
T_CC_STOPPED_INDICATED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED [G_TRCV_STANDBY_E_OK]
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
[G_CC_SLEEP_E_OK] T_CHECK_WFLAG_INDICATED
T_CC_SLEEP_INDICATED
S_CC_SLEEP_WAIT
CANSM_BSM_T_CC_SLEEP_TIMEOUT
T_CC_SLEEP_INDICATED
S_CHECK_WFLAG_IN_NOT_CC_SLEEP
do / DO_CHECK_WFLAG
S_CHECK_WFLAG_IN_CC_SLEEP
do / DO_CHECK_WFLAG
[G_CHECK_WFLAG_E_OK]
T_CHECK_WFLAG_TIMEOUT
[G_CHECK_WFLAG_E_OK]
S_CHECK_WUF_IN_NOT_CC_SLEEP_WAIT
T_CHECK_WFLAG_INDICATED
T_CHECK_WFLAG_TIMEOUT T_CHECK_WFLAG_INDICATED
S_CHECK_WUF_IN_CC_SLEEP_WAIT
Junction
T_CHECK_WFLAG_INDICATED
ExitPoint
stm CANSM_BSM_DeinitPnSupported
CANSM_BSM_DeinitPnSupportedProceed
S_PN_CLEAR_WUF
do / DO_CLEAR_TRCV_WUF
[G_PN_CLEAR_WUF_E_OK]
T_CLEAR_WUF_INDICATED
T_CLEAR_WUF_TIMEOUT
S_PN_CLEAR_WUF_WAIT
T_CLEAR_WUF_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
T_CC_STOPPED_INDICATED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED [G_TRCV_STANDBY_E_OK]
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
[G_CC_SLEEP_E_OK] T_CHECK_WFLAG_INDICATED
T_CC_SLEEP_INDICATED
S_CC_SLEEP_WAIT
CANSM_BSM_T_CC_SLEEP_TIMEOUT
T_CC_SLEEP_INDICATED
S_CHECK_WFLAG_IN_NOT_CC_SLEEP
do / DO_CHECK_WFLAG
S_CHECK_WFLAG_IN_CC_SLEEP
do / DO_CHECK_WFLAG
[G_CHECK_WFLAG_E_OK]
T_CHECK_WFLAG_TIMEOUT
[G_CHECK_WFLAG_E_OK]
S_CHECK_WUF_IN_NOT_CC_SLEEP_WAIT
T_CHECK_WFLAG_INDICATED
T_CHECK_WFLAG_TIMEOUT T_CHECK_WFLAG_INDICATED
S_CHECK_WUF_IN_CC_SLEEP_WAIT
Junction
T_CHECK_WFLAG_INDICATED
ExitPoint
stm CANSM_BSM_DeinitPnSupported
CANSM_BSM_DeinitPnSupportedProceed
S_PN_CLEAR_WUF
do / DO_CLEAR_TRCV_WUF
[G_PN_CLEAR_WUF_E_OK]
T_CLEAR_WUF_INDICATED
T_CLEAR_WUF_TIMEOUT
S_PN_CLEAR_WUF_WAIT
T_CLEAR_WUF_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
T_CC_STOPPED_INDICATED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED [G_TRCV_STANDBY_E_OK]
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
[G_CC_SLEEP_E_OK] T_CHECK_WFLAG_INDICATED
T_CC_SLEEP_INDICATED
S_CC_SLEEP_WAIT
CANSM_BSM_T_CC_SLEEP_TIMEOUT
T_CC_SLEEP_INDICATED
S_CHECK_WFLAG_IN_NOT_CC_SLEEP
do / DO_CHECK_WFLAG
S_CHECK_WFLAG_IN_CC_SLEEP
do / DO_CHECK_WFLAG
[G_CHECK_WFLAG_E_OK]
T_CHECK_WFLAG_TIMEOUT
[G_CHECK_WFLAG_E_OK]
S_CHECK_WUF_IN_NOT_CC_SLEEP_WAIT
T_CHECK_WFLAG_INDICATED
T_CHECK_WFLAG_TIMEOUT T_CHECK_WFLAG_INDICATED
S_CHECK_WUF_IN_CC_SLEEP_WAIT
Junction
T_CHECK_WFLAG_INDICATED
ExitPoint
stm CANSM_BSM_DeinitPnSupported
CANSM_BSM_DeinitPnSupportedProceed
S_PN_CLEAR_WUF
do / DO_CLEAR_TRCV_WUF
[G_PN_CLEAR_WUF_E_OK]
T_CLEAR_WUF_INDICATED
T_CLEAR_WUF_TIMEOUT
S_PN_CLEAR_WUF_WAIT
T_CLEAR_WUF_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
T_CC_STOPPED_INDICATED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED [G_TRCV_STANDBY_E_OK]
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
[G_CC_SLEEP_E_OK] T_CHECK_WFLAG_INDICATED
T_CC_SLEEP_INDICATED
S_CC_SLEEP_WAIT
CANSM_BSM_T_CC_SLEEP_TIMEOUT
T_CC_SLEEP_INDICATED
S_CHECK_WFLAG_IN_NOT_CC_SLEEP
do / DO_CHECK_WFLAG
S_CHECK_WFLAG_IN_CC_SLEEP
do / DO_CHECK_WFLAG
[G_CHECK_WFLAG_E_OK]
T_CHECK_WFLAG_TIMEOUT
[G_CHECK_WFLAG_E_OK]
S_CHECK_WUF_IN_NOT_CC_SLEEP_WAIT
T_CHECK_WFLAG_INDICATED
T_CHECK_WFLAG_TIMEOUT T_CHECK_WFLAG_INDICATED
S_CHECK_WUF_IN_CC_SLEEP_WAIT
Junction
T_CHECK_WFLAG_INDICATED
ExitPoint
stm CANSM_BSM_DeinitPnSupported
CANSM_BSM_DeinitPnSupportedProceed
S_PN_CLEAR_WUF
do / DO_CLEAR_TRCV_WUF
[G_PN_CLEAR_WUF_E_OK]
T_CLEAR_WUF_INDICATED
T_CLEAR_WUF_TIMEOUT
S_PN_CLEAR_WUF_WAIT
T_CLEAR_WUF_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
T_CC_STOPPED_INDICATED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED [G_TRCV_STANDBY_E_OK]
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
[G_CC_SLEEP_E_OK] T_CHECK_WFLAG_INDICATED
T_CC_SLEEP_INDICATED
S_CC_SLEEP_WAIT
CANSM_BSM_T_CC_SLEEP_TIMEOUT
T_CC_SLEEP_INDICATED
S_CHECK_WFLAG_IN_NOT_CC_SLEEP
do / DO_CHECK_WFLAG
S_CHECK_WFLAG_IN_CC_SLEEP
do / DO_CHECK_WFLAG
[G_CHECK_WFLAG_E_OK]
T_CHECK_WFLAG_TIMEOUT
[G_CHECK_WFLAG_E_OK]
S_CHECK_WUF_IN_NOT_CC_SLEEP_WAIT
T_CHECK_WFLAG_INDICATED
T_CHECK_WFLAG_TIMEOUT T_CHECK_WFLAG_INDICATED
S_CHECK_WUF_IN_CC_SLEEP_WAIT
Junction
T_CHECK_WFLAG_INDICATED
ExitPoint
stm CANSM_BSM_DeinitPnSupported
CANSM_BSM_DeinitPnSupportedProceed
S_PN_CLEAR_WUF
do / DO_CLEAR_TRCV_WUF
[G_PN_CLEAR_WUF_E_OK]
T_CLEAR_WUF_INDICATED
T_CLEAR_WUF_TIMEOUT
S_PN_CLEAR_WUF_WAIT
T_CLEAR_WUF_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
T_CC_STOPPED_INDICATED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED [G_TRCV_STANDBY_E_OK]
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
[G_CC_SLEEP_E_OK] T_CHECK_WFLAG_INDICATED
T_CC_SLEEP_INDICATED
S_CC_SLEEP_WAIT
CANSM_BSM_T_CC_SLEEP_TIMEOUT
T_CC_SLEEP_INDICATED
S_CHECK_WFLAG_IN_NOT_CC_SLEEP
do / DO_CHECK_WFLAG
S_CHECK_WFLAG_IN_CC_SLEEP
do / DO_CHECK_WFLAG
[G_CHECK_WFLAG_E_OK]
T_CHECK_WFLAG_TIMEOUT
[G_CHECK_WFLAG_E_OK]
S_CHECK_WUF_IN_NOT_CC_SLEEP_WAIT
T_CHECK_WFLAG_INDICATED
T_CHECK_WFLAG_TIMEOUT T_CHECK_WFLAG_INDICATED
S_CHECK_WUF_IN_CC_SLEEP_WAIT
Junction
T_CHECK_WFLAG_INDICATED
ExitPoint
stm CANSM_BSM_DeinitPnSupported
CANSM_BSM_DeinitPnSupportedProceed
S_PN_CLEAR_WUF
do / DO_CLEAR_TRCV_WUF
[G_PN_CLEAR_WUF_E_OK]
T_CLEAR_WUF_INDICATED
T_CLEAR_WUF_TIMEOUT
S_PN_CLEAR_WUF_WAIT
T_CLEAR_WUF_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
T_CC_STOPPED_INDICATED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED [G_TRCV_STANDBY_E_OK]
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
[G_CC_SLEEP_E_OK] T_CHECK_WFLAG_INDICATED
T_CC_SLEEP_INDICATED
S_CC_SLEEP_WAIT
CANSM_BSM_T_CC_SLEEP_TIMEOUT
T_CC_SLEEP_INDICATED
S_CHECK_WFLAG_IN_NOT_CC_SLEEP
do / DO_CHECK_WFLAG
S_CHECK_WFLAG_IN_CC_SLEEP
do / DO_CHECK_WFLAG
[G_CHECK_WFLAG_E_OK]
T_CHECK_WFLAG_TIMEOUT
[G_CHECK_WFLAG_E_OK]
S_CHECK_WUF_IN_NOT_CC_SLEEP_WAIT
T_CHECK_WFLAG_INDICATED
T_CHECK_WFLAG_TIMEOUT T_CHECK_WFLAG_INDICATED
S_CHECK_WUF_IN_CC_SLEEP_WAIT
Junction
T_CHECK_WFLAG_INDICATED
ExitPoint
CANSM_BSM_DeinitPnNotSupportedProceed
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
[CANSM_BSM_G_CC_STOPPED_E_OK]
T_CC_STOPPED_INDICATED
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
T_CC_SLEEP_INDICATED
[G_CC_SLEEP_E_OK]
T_CC_SLEEP_TIMEOUT
S_CC_SLEEP_WAIT
T_CC_SLEEP_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
[G_TRCV_NORMAL_E_OK]
T_TRCV_NORMAL_INDICATED
T_TRCV_NORMAL_TIMEOUT
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
[G_TRCV_STANDBY_E_OK]
CANSM_BSM_T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
ExitPoint
CANSM_BSM_DeinitPnNotSupportedProceed
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
[CANSM_BSM_G_CC_STOPPED_E_OK]
T_CC_STOPPED_INDICATED
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
T_CC_SLEEP_INDICATED
[G_CC_SLEEP_E_OK]
T_CC_SLEEP_TIMEOUT
S_CC_SLEEP_WAIT
T_CC_SLEEP_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
[G_TRCV_NORMAL_E_OK]
T_TRCV_NORMAL_INDICATED
T_TRCV_NORMAL_TIMEOUT
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
[G_TRCV_STANDBY_E_OK]
CANSM_BSM_T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
ExitPoint
Figure 7-5) is in the state S_CC_STOPPED, the CanSM module shall operate the do
action DO_SET_CC_MODE_STOPPED and therefore repeat for all configured CAN
controllers of the CAN network (ref. to ECUC_CanSM_00141) the API request
117 of 211 Document ID 253: AUTOSAR_SWS_CANStateManager
- AUTOSAR confidential -
Specification of CAN State Manager
AUTOSAR CP R19-11
stm CANSM_BSM_DeinitPnNotSupported
CANSM_BSM_DeinitPnNotSupportedProceed
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
[CANSM_BSM_G_CC_STOPPED_E_OK]
T_CC_STOPPED_INDICATED
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
T_CC_SLEEP_INDICATED
[G_CC_SLEEP_E_OK]
T_CC_SLEEP_TIMEOUT
S_CC_SLEEP_WAIT
T_CC_SLEEP_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
[G_TRCV_NORMAL_E_OK]
T_TRCV_NORMAL_INDICATED
T_TRCV_NORMAL_TIMEOUT
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
[G_TRCV_STANDBY_E_OK]
CANSM_BSM_T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
ExitPoint
Figure 7-5) shall be passed, if all API calls of SWS_CanSM_00464 have returned
E_OK.⌋ (SRS_Can_01142, SRS_Can_01145)
CANSM_BSM_DeinitPnNotSupportedProceed
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
[CANSM_BSM_G_CC_STOPPED_E_OK]
T_CC_STOPPED_INDICATED
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
T_CC_SLEEP_INDICATED
[G_CC_SLEEP_E_OK]
T_CC_SLEEP_TIMEOUT
S_CC_SLEEP_WAIT
T_CC_SLEEP_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
[G_TRCV_NORMAL_E_OK]
T_TRCV_NORMAL_INDICATED
T_TRCV_NORMAL_TIMEOUT
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
[G_TRCV_STANDBY_E_OK]
CANSM_BSM_T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
ExitPoint
CANSM_BSM_DeinitPnNotSupportedProceed
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
[CANSM_BSM_G_CC_STOPPED_E_OK]
T_CC_STOPPED_INDICATED
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
T_CC_SLEEP_INDICATED
[G_CC_SLEEP_E_OK]
T_CC_SLEEP_TIMEOUT
S_CC_SLEEP_WAIT
T_CC_SLEEP_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
[G_TRCV_NORMAL_E_OK]
T_TRCV_NORMAL_INDICATED
T_TRCV_NORMAL_TIMEOUT
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
[G_TRCV_STANDBY_E_OK]
CANSM_BSM_T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
ExitPoint
CANSM_BSM_DeinitPnNotSupportedProceed
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
[CANSM_BSM_G_CC_STOPPED_E_OK]
T_CC_STOPPED_INDICATED
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
T_CC_SLEEP_INDICATED
[G_CC_SLEEP_E_OK]
T_CC_SLEEP_TIMEOUT
S_CC_SLEEP_WAIT
T_CC_SLEEP_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
[G_TRCV_NORMAL_E_OK]
T_TRCV_NORMAL_INDICATED
T_TRCV_NORMAL_TIMEOUT
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
[G_TRCV_STANDBY_E_OK]
CANSM_BSM_T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
ExitPoint
Figure 7-5) is in the state S_CC_SLEEP, the CanSM module shall operate the do
action DO_SET_CC_MODE_SLEEP and therefore repeat for all configured CAN
controllers of the CAN network (ref. to ECUC_CanSM_00141) the API request
CanIf_SetControllerMode (ref. to chapter 8.5.1) with ControllerMode equal
to CAN_CS_SLEEP, if the current CAN controller mode (ref. to SWS_CanSM_00638)
is different.⌋ (SRS_Can_01142, SRS_Can_01145)
stm CANSM_BSM_DeinitPnNotSupported
CANSM_BSM_DeinitPnNotSupportedProceed
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
[CANSM_BSM_G_CC_STOPPED_E_OK]
T_CC_STOPPED_INDICATED
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
T_CC_SLEEP_INDICATED
[G_CC_SLEEP_E_OK]
T_CC_SLEEP_TIMEOUT
S_CC_SLEEP_WAIT
T_CC_SLEEP_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
[G_TRCV_NORMAL_E_OK]
T_TRCV_NORMAL_INDICATED
T_TRCV_NORMAL_TIMEOUT
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
[G_TRCV_STANDBY_E_OK]
CANSM_BSM_T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
ExitPoint
Figure 7-5) shall be passed, if all API calls of SWS_CanSM_00468 have returned
E_OK.⌋ (SRS_Can_01142, SRS_Can_01145)
ECUC_CanSM_00141) after the respective requests to set the CAN controllers of the
CAN network to sleep mode (ref. to SWS_CanSM_00468), this shall trigger the sub
state machine CANSM_BSM_DeinitPnNotSupported (ref. to
stm CANSM_BSM_DeinitPnNotSupported
CANSM_BSM_DeinitPnNotSupportedProceed
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
[CANSM_BSM_G_CC_STOPPED_E_OK]
T_CC_STOPPED_INDICATED
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
T_CC_SLEEP_INDICATED
[G_CC_SLEEP_E_OK]
T_CC_SLEEP_TIMEOUT
S_CC_SLEEP_WAIT
T_CC_SLEEP_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
[G_TRCV_NORMAL_E_OK]
T_TRCV_NORMAL_INDICATED
T_TRCV_NORMAL_TIMEOUT
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
[G_TRCV_STANDBY_E_OK]
CANSM_BSM_T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
ExitPoint
CANSM_BSM_DeinitPnNotSupportedProceed
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
[CANSM_BSM_G_CC_STOPPED_E_OK]
T_CC_STOPPED_INDICATED
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
T_CC_SLEEP_INDICATED
[G_CC_SLEEP_E_OK]
T_CC_SLEEP_TIMEOUT
S_CC_SLEEP_WAIT
T_CC_SLEEP_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
[G_TRCV_NORMAL_E_OK]
T_TRCV_NORMAL_INDICATED
T_TRCV_NORMAL_TIMEOUT
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
[G_TRCV_STANDBY_E_OK]
CANSM_BSM_T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
ExitPoint
stm CANSM_BSM_DeinitPnNotSupported
CANSM_BSM_DeinitPnNotSupportedProceed
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
[CANSM_BSM_G_CC_STOPPED_E_OK]
T_CC_STOPPED_INDICATED
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
T_CC_SLEEP_INDICATED
[G_CC_SLEEP_E_OK]
T_CC_SLEEP_TIMEOUT
S_CC_SLEEP_WAIT
T_CC_SLEEP_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
[G_TRCV_NORMAL_E_OK]
T_TRCV_NORMAL_INDICATED
T_TRCV_NORMAL_TIMEOUT
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
[G_TRCV_STANDBY_E_OK]
CANSM_BSM_T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
ExitPoint
Figure 7-5) is in the state S_TRCV_NORMAL, the CanSM module shall operate the do
action DO_SET_TRCV_MODE_NORMAL and therefore repeat for the configured CAN
Transceiver of the CAN network (ref. to ECUC_CanSM_00137) the API request
CanIf_SetTrcvMode (ref. to chapter 8.5.1) with TransceiverMode equal to
CANTRCV_TRCVMODE_NORMAL.⌋ (SRS_Can_01142, SRS_Can_01145)
CANSM_BSM_DeinitPnNotSupportedProceed
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
[CANSM_BSM_G_CC_STOPPED_E_OK]
T_CC_STOPPED_INDICATED
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
T_CC_SLEEP_INDICATED
[G_CC_SLEEP_E_OK]
T_CC_SLEEP_TIMEOUT
S_CC_SLEEP_WAIT
T_CC_SLEEP_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
[G_TRCV_NORMAL_E_OK]
T_TRCV_NORMAL_INDICATED
T_TRCV_NORMAL_TIMEOUT
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
[G_TRCV_STANDBY_E_OK]
CANSM_BSM_T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
ExitPoint
Figure 7-5) shall be passed, if the API call of SWS_CanSM_00472 has returned
E_OK.⌋ (SRS_Can_01142, SRS_Can_01145)
CANSM_BSM_DeinitPnNotSupportedProceed
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
[CANSM_BSM_G_CC_STOPPED_E_OK]
T_CC_STOPPED_INDICATED
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
T_CC_SLEEP_INDICATED
[G_CC_SLEEP_E_OK]
T_CC_SLEEP_TIMEOUT
S_CC_SLEEP_WAIT
T_CC_SLEEP_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
[G_TRCV_NORMAL_E_OK]
T_TRCV_NORMAL_INDICATED
T_TRCV_NORMAL_TIMEOUT
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
[G_TRCV_STANDBY_E_OK]
CANSM_BSM_T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
ExitPoint
CANSM_BSM_DeinitPnNotSupportedProceed
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
[CANSM_BSM_G_CC_STOPPED_E_OK]
T_CC_STOPPED_INDICATED
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
T_CC_SLEEP_INDICATED
[G_CC_SLEEP_E_OK]
T_CC_SLEEP_TIMEOUT
S_CC_SLEEP_WAIT
T_CC_SLEEP_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
[G_TRCV_NORMAL_E_OK]
T_TRCV_NORMAL_INDICATED
T_TRCV_NORMAL_TIMEOUT
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
[G_TRCV_STANDBY_E_OK]
CANSM_BSM_T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
ExitPoint
stm CANSM_BSM_DeinitPnNotSupported
CANSM_BSM_DeinitPnNotSupportedProceed
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
[CANSM_BSM_G_CC_STOPPED_E_OK]
T_CC_STOPPED_INDICATED
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
T_CC_SLEEP_INDICATED
[G_CC_SLEEP_E_OK]
T_CC_SLEEP_TIMEOUT
S_CC_SLEEP_WAIT
T_CC_SLEEP_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
[G_TRCV_NORMAL_E_OK]
T_TRCV_NORMAL_INDICATED
T_TRCV_NORMAL_TIMEOUT
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
[G_TRCV_STANDBY_E_OK]
CANSM_BSM_T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
ExitPoint
CANSM_BSM_DeinitPnNotSupported (ref. to
stm CANSM_BSM_DeinitPnNotSupported
CANSM_BSM_DeinitPnNotSupportedProceed
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
[CANSM_BSM_G_CC_STOPPED_E_OK]
T_CC_STOPPED_INDICATED
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
T_CC_SLEEP_INDICATED
[G_CC_SLEEP_E_OK]
T_CC_SLEEP_TIMEOUT
S_CC_SLEEP_WAIT
T_CC_SLEEP_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
[G_TRCV_NORMAL_E_OK]
T_TRCV_NORMAL_INDICATED
T_TRCV_NORMAL_TIMEOUT
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
[G_TRCV_STANDBY_E_OK]
CANSM_BSM_T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
ExitPoint
Figure 7-5) is in the state S_TRCV_STANDBY, the CanSM module shall operate the
do action DO_SET_TRCV_MODE_STANDBY and therefore repeat for the configured
CAN Transceiver of the CAN network (ref. to ECUC_CanSM_00137) the API request
CanIf_SetTrcvMode (ref. to chapter 8.5.1) with TransceiverMode equal to
CANTRCV_TRCVMODE_STANDBY.⌋ (SRS_Can_01142, SRS_Can_01145)
CANSM_BSM_DeinitPnNotSupportedProceed
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
[CANSM_BSM_G_CC_STOPPED_E_OK]
T_CC_STOPPED_INDICATED
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
T_CC_SLEEP_INDICATED
[G_CC_SLEEP_E_OK]
T_CC_SLEEP_TIMEOUT
S_CC_SLEEP_WAIT
T_CC_SLEEP_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
[G_TRCV_NORMAL_E_OK]
T_TRCV_NORMAL_INDICATED
T_TRCV_NORMAL_TIMEOUT
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
[G_TRCV_STANDBY_E_OK]
CANSM_BSM_T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
ExitPoint
Figure 7-5) shall be passed, if the API call of SWS_CanSM_00476 has returned
E_OK.⌋ (SRS_Can_01142, SRS_Can_01145)
CANSM_BSM_DeinitPnNotSupportedProceed
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
[CANSM_BSM_G_CC_STOPPED_E_OK]
T_CC_STOPPED_INDICATED
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
T_CC_SLEEP_INDICATED
[G_CC_SLEEP_E_OK]
T_CC_SLEEP_TIMEOUT
S_CC_SLEEP_WAIT
T_CC_SLEEP_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
[G_TRCV_NORMAL_E_OK]
T_TRCV_NORMAL_INDICATED
T_TRCV_NORMAL_TIMEOUT
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
[G_TRCV_STANDBY_E_OK]
CANSM_BSM_T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
ExitPoint
CANSM_BSM_DeinitPnNotSupportedProceed
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
[CANSM_BSM_G_CC_STOPPED_E_OK]
T_CC_STOPPED_INDICATED
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
T_CC_SLEEP_INDICATED
[G_CC_SLEEP_E_OK]
T_CC_SLEEP_TIMEOUT
S_CC_SLEEP_WAIT
T_CC_SLEEP_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
[G_TRCV_NORMAL_E_OK]
T_TRCV_NORMAL_INDICATED
T_TRCV_NORMAL_TIMEOUT
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
[G_TRCV_STANDBY_E_OK]
CANSM_BSM_T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
ExitPoint
stm CANSM_BSM_DeinitPnNotSupported
CANSM_BSM_DeinitPnNotSupportedProceed
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED
[CANSM_BSM_G_CC_STOPPED_E_OK]
T_CC_STOPPED_INDICATED
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_CC_SLEEP
do / DO_SET_CC_MODE_SLEEP
T_CC_SLEEP_INDICATED
[G_CC_SLEEP_E_OK]
T_CC_SLEEP_TIMEOUT
S_CC_SLEEP_WAIT
T_CC_SLEEP_INDICATED
S_TRCV_NORMAL
do / DO_SET_TRCV_MODE_NORMAL
[G_TRCV_NORMAL_E_OK]
T_TRCV_NORMAL_INDICATED
T_TRCV_NORMAL_TIMEOUT
S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_TRCV_STANDBY
do / DO_SET_TRCV_MODE_STANDBY
[G_TRCV_STANDBY_E_OK]
CANSM_BSM_T_TRCV_STANDBY_TIMOUT
T_TRCV_STANDBY_INDICATED
S_TRCV_STANDBY_WAIT
T_TRCV_STANDBY_INDICATED
ExitPoint
stm CANSM_BSM_S_SILENTCOM_BOR
S_RESTART_CC
/E_BUS_OFF
do / DO_SET_CC_MODE_STARTED
EntryPoint
[G_RESTART_CC_E_OK]
T_RESTART_CC_TIMEOUT
T_RESTART_CC_INDICATED /E_TX_OFF
CANSM_BSM_S_RESTART_CC_WAIT
T_RESTART_CC_INDICATED /E_TX_OFF
ExitPoint
7.2.21.3 G_RESTART_CC_E_OK
[SWS_CanSM_00603]⌈ The guarding condition G_RESTART_CC_OK of the sub
state machine CANSM_BSM_S_SILENTCOM_BOR (ref. to Figure 7-6) shall be passed,
140 of 211 Document ID 253: AUTOSAR_SWS_CANStateManager
- AUTOSAR confidential -
Specification of CAN State Manager
AUTOSAR CP R19-11
7.2.21.5 T_RESTART_CC_TIMEOUT
[SWS_CanSM_00602]⌈ After a timeout of CANSM_MODEREQ_REPEAT_TIME (ref. to
ECUC_CanSM_00336) for all supposed controller started mode indications (ref. to
SWS_CanSM_00600), this condition shall trigger the sub state machine
CANSM_BSM_S_SILENTCOM_BOR (ref. to Figure 7-6) of the respective network with
T_RESTART_CC_TIMEOUT.⌋ (SRS_Can_01142, SRS_Can_01145,
SRS_Can_01144, SRS_Can_01146)
stm CANSM_BSM_S_PRE_FULLCOM
S_TRCV_NORMAL [G_TRCV_NORMAL_E_OK]
EntryPoint
do / DO_SET_TRCV_MODE_NORMAL
T_TRCV_NORMAL_TIMEOUT
T_TRCV_NORMAL_INDICATED S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
T_CC_STOPPED_INDICATED
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_CC_STARTED
[G_CC_STARTED_E_OK]
do / DO_SET_CC_MODE_STARTED
T_CC_STARTED_TIMEOUT
S_CC_STARTED_WAIT
T_CC_STARTED_INDICATED
T_CC_STARTED_INDICATED
ExitPoint
To
FULLCOM
stm CANSM_BSM_S_PRE_FULLCOM
S_TRCV_NORMAL [G_TRCV_NORMAL_E_OK]
EntryPoint
do / DO_SET_TRCV_MODE_NORMAL
T_TRCV_NORMAL_TIMEOUT
T_TRCV_NORMAL_INDICATED S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
T_CC_STOPPED_INDICATED
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_CC_STARTED
[G_CC_STARTED_E_OK]
do / DO_SET_CC_MODE_STARTED
T_CC_STARTED_TIMEOUT
S_CC_STARTED_WAIT
T_CC_STARTED_INDICATED
T_CC_STARTED_INDICATED
ExitPoint
To
FULLCOM
Figure 7-7) is in the state S_TRCV_NORMAL, the CanSM module shall operate the do
action DO_SET_TRCV_MODE_NORMAL and therefore repeat for the configured CAN
Transceiver of the CAN network (ref. to ECUC_CanSM_00137) the API request
CanIf_SetTrcvMode (ref. to chapter 8.5.1) with TransceiverMode equal to
CANTRCV_TRCVMODE_NORMAL.⌋ (SRS_Can_01145, SRS_Can_01142)
stm CANSM_BSM_S_PRE_FULLCOM
S_TRCV_NORMAL [G_TRCV_NORMAL_E_OK]
EntryPoint
do / DO_SET_TRCV_MODE_NORMAL
T_TRCV_NORMAL_TIMEOUT
T_TRCV_NORMAL_INDICATED S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
T_CC_STOPPED_INDICATED
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_CC_STARTED
[G_CC_STARTED_E_OK]
do / DO_SET_CC_MODE_STARTED
T_CC_STARTED_TIMEOUT
S_CC_STARTED_WAIT
T_CC_STARTED_INDICATED
T_CC_STARTED_INDICATED
ExitPoint
To
FULLCOM
Figure 7-7) shall be passed, if the API call of SWS_CanSM_00483 has returned
E_OK.⌋ (SRS_Can_01145, SRS_Can_01142)
stm CANSM_BSM_S_PRE_FULLCOM
S_TRCV_NORMAL [G_TRCV_NORMAL_E_OK]
EntryPoint
do / DO_SET_TRCV_MODE_NORMAL
T_TRCV_NORMAL_TIMEOUT
T_TRCV_NORMAL_INDICATED S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
T_CC_STOPPED_INDICATED
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_CC_STARTED
[G_CC_STARTED_E_OK]
do / DO_SET_CC_MODE_STARTED
T_CC_STARTED_TIMEOUT
S_CC_STARTED_WAIT
T_CC_STARTED_INDICATED
T_CC_STARTED_INDICATED
ExitPoint
To
FULLCOM
stm CANSM_BSM_S_PRE_FULLCOM
S_TRCV_NORMAL [G_TRCV_NORMAL_E_OK]
EntryPoint
do / DO_SET_TRCV_MODE_NORMAL
T_TRCV_NORMAL_TIMEOUT
T_TRCV_NORMAL_INDICATED S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
T_CC_STOPPED_INDICATED
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_CC_STARTED
[G_CC_STARTED_E_OK]
do / DO_SET_CC_MODE_STARTED
T_CC_STARTED_TIMEOUT
S_CC_STARTED_WAIT
T_CC_STARTED_INDICATED
T_CC_STARTED_INDICATED
ExitPoint
To
FULLCOM
stm CANSM_BSM_S_PRE_FULLCOM
S_TRCV_NORMAL [G_TRCV_NORMAL_E_OK]
EntryPoint
do / DO_SET_TRCV_MODE_NORMAL
T_TRCV_NORMAL_TIMEOUT
T_TRCV_NORMAL_INDICATED S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
T_CC_STOPPED_INDICATED
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_CC_STARTED
[G_CC_STARTED_E_OK]
do / DO_SET_CC_MODE_STARTED
T_CC_STARTED_TIMEOUT
S_CC_STARTED_WAIT
T_CC_STARTED_INDICATED
T_CC_STARTED_INDICATED
ExitPoint
To
FULLCOM
stm CANSM_BSM_S_PRE_FULLCOM
S_TRCV_NORMAL [G_TRCV_NORMAL_E_OK]
EntryPoint
do / DO_SET_TRCV_MODE_NORMAL
T_TRCV_NORMAL_TIMEOUT
T_TRCV_NORMAL_INDICATED S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
T_CC_STOPPED_INDICATED
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_CC_STARTED
[G_CC_STARTED_E_OK]
do / DO_SET_CC_MODE_STARTED
T_CC_STARTED_TIMEOUT
S_CC_STARTED_WAIT
T_CC_STARTED_INDICATED
T_CC_STARTED_INDICATED
ExitPoint
To
FULLCOM
Figure 7-7) is in the state S_CC_STOPPED, the CanSM module shall operate the do
action DO_SET_CC_MODE_STOPPED and therefore repeat for all configured CAN
controllers of the CAN network (ref. to ECUC_CanSM_00141) the API request
CanIf_SetControllerMode (ref. to chapter 8.5.1) with ControllerMode equal
to CAN_CS_STOPPED, if the current CAN controller mode (ref. to
SWS_CanSM_00638) is different.⌋ (SRS_Can_01145, SRS_Can_01142)
stm CANSM_BSM_S_PRE_FULLCOM
S_TRCV_NORMAL [G_TRCV_NORMAL_E_OK]
EntryPoint
do / DO_SET_TRCV_MODE_NORMAL
T_TRCV_NORMAL_TIMEOUT
T_TRCV_NORMAL_INDICATED S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
T_CC_STOPPED_INDICATED
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_CC_STARTED
[G_CC_STARTED_E_OK]
do / DO_SET_CC_MODE_STARTED
T_CC_STARTED_TIMEOUT
S_CC_STARTED_WAIT
T_CC_STARTED_INDICATED
T_CC_STARTED_INDICATED
ExitPoint
To
FULLCOM
Figure 7-7) shall be passed, if all API calls of SWS_CanSM_00487 have returned
E_OK.⌋ (SRS_Can_01145, SRS_Can_01142)
stm CANSM_BSM_S_PRE_FULLCOM
S_TRCV_NORMAL [G_TRCV_NORMAL_E_OK]
EntryPoint
do / DO_SET_TRCV_MODE_NORMAL
T_TRCV_NORMAL_TIMEOUT
T_TRCV_NORMAL_INDICATED S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
T_CC_STOPPED_INDICATED
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_CC_STARTED
[G_CC_STARTED_E_OK]
do / DO_SET_CC_MODE_STARTED
T_CC_STARTED_TIMEOUT
S_CC_STARTED_WAIT
T_CC_STARTED_INDICATED
T_CC_STARTED_INDICATED
ExitPoint
To
FULLCOM
stm CANSM_BSM_S_PRE_FULLCOM
S_TRCV_NORMAL [G_TRCV_NORMAL_E_OK]
EntryPoint
do / DO_SET_TRCV_MODE_NORMAL
T_TRCV_NORMAL_TIMEOUT
T_TRCV_NORMAL_INDICATED S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
T_CC_STOPPED_INDICATED
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_CC_STARTED
[G_CC_STARTED_E_OK]
do / DO_SET_CC_MODE_STARTED
T_CC_STARTED_TIMEOUT
S_CC_STARTED_WAIT
T_CC_STARTED_INDICATED
T_CC_STARTED_INDICATED
ExitPoint
To
FULLCOM
stm CANSM_BSM_S_PRE_FULLCOM
S_TRCV_NORMAL [G_TRCV_NORMAL_E_OK]
EntryPoint
do / DO_SET_TRCV_MODE_NORMAL
T_TRCV_NORMAL_TIMEOUT
T_TRCV_NORMAL_INDICATED S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
T_CC_STOPPED_INDICATED
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_CC_STARTED
[G_CC_STARTED_E_OK]
do / DO_SET_CC_MODE_STARTED
T_CC_STARTED_TIMEOUT
S_CC_STARTED_WAIT
T_CC_STARTED_INDICATED
T_CC_STARTED_INDICATED
ExitPoint
To
FULLCOM
Figure 7-7) is in the state S_CC_STARTED, the CanSM module shall operate the do
action DO_SET_CC_MODE_STARTED and therefore repeat for all configured CAN
controllers of the CAN network (ref. to ECUC_CanSM_00141) the API request
CanIf_SetControllerMode (ref. to chapter 8.5.1) with ControllerMode equal
to CAN_CS_STARTED, if the current CAN controller mode (ref. to
SWS_CanSM_00638) is different.⌋ (SRS_Can_01145, SRS_Can_01142)
stm CANSM_BSM_S_PRE_FULLCOM
S_TRCV_NORMAL [G_TRCV_NORMAL_E_OK]
EntryPoint
do / DO_SET_TRCV_MODE_NORMAL
T_TRCV_NORMAL_TIMEOUT
T_TRCV_NORMAL_INDICATED S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
T_CC_STOPPED_INDICATED
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_CC_STARTED
[G_CC_STARTED_E_OK]
do / DO_SET_CC_MODE_STARTED
T_CC_STARTED_TIMEOUT
S_CC_STARTED_WAIT
T_CC_STARTED_INDICATED
T_CC_STARTED_INDICATED
ExitPoint
To
FULLCOM
Figure 7-7) shall be passed, if all API calls of SWS_CanSM_00491 have returned
E_OK.⌋ (SRS_Can_01145, SRS_Can_01142)
stm CANSM_BSM_S_PRE_FULLCOM
S_TRCV_NORMAL [G_TRCV_NORMAL_E_OK]
EntryPoint
do / DO_SET_TRCV_MODE_NORMAL
T_TRCV_NORMAL_TIMEOUT
T_TRCV_NORMAL_INDICATED S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
T_CC_STOPPED_INDICATED
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_CC_STARTED
[G_CC_STARTED_E_OK]
do / DO_SET_CC_MODE_STARTED
T_CC_STARTED_TIMEOUT
S_CC_STARTED_WAIT
T_CC_STARTED_INDICATED
T_CC_STARTED_INDICATED
ExitPoint
To
FULLCOM
stm CANSM_BSM_S_PRE_FULLCOM
S_TRCV_NORMAL [G_TRCV_NORMAL_E_OK]
EntryPoint
do / DO_SET_TRCV_MODE_NORMAL
T_TRCV_NORMAL_TIMEOUT
T_TRCV_NORMAL_INDICATED S_TRCV_NORMAL_WAIT
T_TRCV_NORMAL_INDICATED
S_CC_STOPPED
do / DO_SET_CC_MODE_STOPPED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_TIMEOUT
T_CC_STOPPED_INDICATED
S_CC_STOPPED_WAIT
T_CC_STOPPED_INDICATED
S_CC_STARTED
[G_CC_STARTED_E_OK]
do / DO_SET_CC_MODE_STARTED
T_CC_STARTED_TIMEOUT
S_CC_STARTED_WAIT
T_CC_STARTED_INDICATED
T_CC_STARTED_INDICATED
ExitPoint
To
FULLCOM
stm CANSM_BSM_S_FULLCOM
S_BUS_OFF_CHECK EntryPoint
[G_BUS_OFF_PASSIVE]
[G_TX_ON] /E_TX_ON /E_BUS_OFF_PASSIVE
T_BUS_OFF /E_BUS_OFF
S_NO_BUS_OFF
T_CHANGE_BR_REQUEST
S_TX_OFF /E_CHANGE_BR_BSWM_MODE
T_TX_TIMEOUT_EXCEPTION
T_RESTART_CC_INDICATED /E_TX_OFF
CANSM_BSM_S_TX_TIMEOUT_EXCEPTION
T_RESTART_CC_INDICATED /E_TX_OFF
CANSM_BSM_S_RESTART_CC_WAIT
ExitPoint TxTimeout
T_BUS_OFF /E_BUS_OFF
T_RESTART_CC_TIMEOUT
[G_RESTART_CC_E_OK]
S_RESTART_CC
do / DO_SET_CC_MODE_STARTED
ExitPoint
CHANGE_BR
CANSM_BSM_S_FULLCOM
ExitPoint
CHANGE_BR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
[G_FULL_COM_MODE_REQUESTED]
/E_FULL_COM /E_BR_END_FULL_COM
T_SILENT_COM_MODE_REQUEST
/E_FULL_TO_SILENT_COM
CANSM_BSM_S_PRE_FULLCOM
CANSM_BSM_S_CHANGE_BAUDRATE
ExitPoint To
FULLCOM T_FULL_COM_MODE_REQUEST
/E_SILENT_TO_FULL_COM
ExitPoint
FULL_OR_SILENT_COM
ExitPoint
REPEAT_MAX
ExitPoint
NO_COM
[G_SILENT_COM_MODE_REQUESTED]
/E_BR_END_SILENT_COM
T_FULL_COM_MODE_REQUEST CANSM_BSM_S_SILENTCOM
T_FULL_COM_MODE_REQUEST
/E_PRE_NOCOM
CANSM_BSM_WUVALIDATION
T_BUS_OFF
CANSM_BSM_S_SILENTCOM_BOR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
T_STOP_WAKEUP_SOURCE
T_NO_COM_MODE_REQUEST
/E_PRE_NO_COM
CANSM_BSM_S_PRE_NOCOM
T_START_WAKEUP_SOURCE
T_START_WAKEUP_SOURCE
CanSM_Init
CANSM_BSM_S_NOCOM
/E_NOCOM
CANSM_BSM_S_NOT_INITIALIZED
PowerOn
CanSM_DeInit
PowerOff
Figure 7-1) with T_CHANGE_BR_REQUEST (causes either a direct baud rate change
if possible via CanIf_SetBaudrate or the start of the required asynchronous
process to do that⌋ (SRS_Can_01145, SRS_Can_01142)
7.2.23.15 Notes
In the state S_NO_BUS_OFF no state operation is required for the CanSM module.
S_TX_TIMEOUT_EXCEPTION_PROCEED
EntryPoint
T_CC_STOPPED_TIMEOUT
S_CC_STOPPED S_CC_STOPPED_WAIT
do / DO_SET_CC_MODE_STOPPED()
[G_CC_STOPPED_E_OK]
T_CC_STOPPED_INDICATED T_CC_STOPPED_INDICATED
S_CC_STARTED
do / DO_SET_CC_MODE_STARTED()
[G_CC_STARTED_E_OK]
T_CC_STARTED_TIMEOUT
T_CC_STARTED_INDICATED
S_CC_STARTED_WAIT
T_CC_STARTED_INDICATED
ExitPoint TxTimeout
stm CANSM_BSM_S_CHANGE_BAUDRATE
CANSM_BSM_CHANGE_BR_SYNC
entry / DO_SET_BAUDRATE_DIRECT
EntryPoint
S_CC_STOPPED T_CC_STOPPED_TIMEOUT
S_CC_STOPPED_WAIT
do / DO_SET_CC_MODE_STOPPED [G_CC_STOPPED_E_OK]
T_CC_STOPPED_INDICATED T_CC_STOPPED_INDICATED
/E_CHANGE_BAUDRATE /E_CHANGE_BAUDRATE
S_CC_STARTED
do / DO_SET_CC_MODE_STARTED
T_CC_STARTED_INDICATED T_CC_STARTED_INDICATED
[G_NO_COM_MODE_REQUESTED] [G_NO_COM_MODE_NOT_REQUESTED]
[G_CC_STARTED_E_OK] T_CC_STARTED_TIMEOUT
S_CC_STARTED_WAIT
T_CC_STARTED_INDICATED T_CC_STARTED_INDICATED
[G_NO_COM_MODE_REQUESTED] [G_NO_COM_MODE_NOT_REQUESTED]
ExitPoint ExitPoint
NO_COM FULL_OR_SILENT_COM
This chapter shall list all Development Errors that can be detected within this
software module. For each error, a value shall be defined.
[SWS_CanSM_00654]⌈
Type or error Relevance Related error code Value
[hex]
API service used without Development CANSM_E_UNINIT 0x01
module initialization
API service called with Development CANSM_E_PARAM_POINTER 0x02
wrong pointer
API service called with Development CANSM_E_INVALID_NETWORK_HANDLE 0x03
wrong parameter
API service called with Development CANSM_E_PARAM_CONTROLLER 0x04
wrong parameter
168 of 211 Document ID 253: AUTOSAR_SWS_CANStateManager
- AUTOSAR confidential -
Specification of CAN State Manager
AUTOSAR CP R19-11
7.3.2.1 CANSM_E_MODE_REQUEST_TIMEOUT
[SWS_CanSM_00664]⌈
Type or error Related error code Value [hex]
Mode request for a network failed CANSM_E_MODE_REQUEST_TIMEOUT 0x0A
more often than allowed by
configuration
⌋ (SRS_BSW_00466)
7.3.5.1 CANSM_E_BUS_OFF
[SWS_CanSM_00666]⌈
Error Name: CANSM_E_BUS_OFF (ref. to ECUC_CanSM_00070)
Short Description: Bus-off detection
Long Description: The bus-off recovery state machine of a CAN network has detected a
certain amount of sequential bus-offs without successful recovery
Recommended DTC: Assigned by DEM
Fail PRE_FAILED when CanSM_ControllerBusOff is called
(T_BUS_OFF/E_BUS_OFF),
debouncing to be defined by OEM in DEM
Detection Criteria:
Pass After successful transmission of a CAN frame
(G_BUS_OFF_PASSIVE/E_BUS_OFF_PASSIVE)
Secondary Parameters: None
PRE_FAILED immediately (in error interrupt context),
Time Required:
FAILED depending on debounce configuration of DEM
Monitor Frequency Continuous
MIL illumniation: Assigned by DEM
⌋ ()
7.4.1 Activation
[SWS_CanSM_00589]⌈ The CanSM shall inform the BswM about the activation
status by calling BswM_CanSM_CurrentIcomConfiguration.⌋ (SRS_Can_01145,
SRS_Can_01142)
7.4.2 Deactivation
8 API specification
[SWS_CanSM_00243]⌈
Module Header File Imported Type
Can_GeneralTypes.h CanTrcv_TrcvModeType
Can_GeneralTypes
Can_GeneralTypes.h Can_ControllerStateType
CanIf.h CanIf_NotifStatusType
CanIf
CanIf.h CanIf_PduModeType
ComStack_Types.h IcomConfigIdType
ComStack_Types.h NetworkHandleType
Rte_Dem_Type.h Dem_EventIdType
Dem
Rte_Dem_Type.h Dem_EventStatusType
Std_Types.h Std_ReturnType
Std
Std_Types.h Std_VersionInfoType
⌋()
8.2.1 CanSM_StateType
[SWS_CanSM_00596]⌈
Name CanSM_StateType
Kind Enumeration
CANSM_INITED -- --
Range
CANSM_UNINITED -- --
Description Defines the values of the internal states of the CanSM module
8.2.2 CanSM_ConfigType
[SWS_CanSM_00597]⌈
Name CanSM_ConfigType
Kind Structure
--
Elements Type --
Comment --
This type defines a data structure for the post build parameters of the CanSM. At
Description initialization the CanSM gets a pointer to a structure of this type to get access to its
configuration data, which is necessary for initialization.
Available
CanSM.h
via
⌋(SRS_BSW_00400, SRS_BSW_00438)
8.2.3 CanSM_BswMCurrentStateType
[SWS_CanSM_00598]⌈
Name CanSM_BswMCurrentStateType
Kind Enumeration
173 of 211 Document ID 253: AUTOSAR_SWS_CANStateManager
- AUTOSAR confidential -
Specification of CAN State Manager
AUTOSAR CP R19-11
CANSM_BSWM_NO_COMMUNICATION -- --
CANSM_BSWM_SILENT_COMMUNICATION -- --
Range CANSM_BSWM_FULL_COMMUNICATION -- --
CANSM_BSWM_BUS_OFF -- --
CANSM_BSWM_CHANGE_BAUDRATE -- --
Description Can specific communication modes / states notified to the BswM module
⌋(SRS_ModeMgm_09251)
8.3.1 CanSM_Init
[SWS_CanSM_00023]⌈
Service Name CanSM_Init
void CanSM_Init (
Syntax const CanSM_ConfigType* ConfigPtr
)
Sync/Async Synchronous
Parameters (in) ConfigPtr Pointer to init structure for the post build parameters of the CanSM
8.3.2 CanSM_DeInit
[SWS_CanSM_91001]⌈
Service Name CanSM_DeInit
void CanSM_DeInit (
Syntax void
)
Sync/Async Synchronous
⌋(SRS_Can_01164, SRS_BSW_00336)
Caveat: Caller of the CanSM_DeInit function has to ensure all CAN networks are in
the sate CANSM_NO_COMMUNICATION.
8.3.3 CanSM_RequestComMode
[SWS_CanSM_00062]⌈
Service Name CanSM_RequestComMode
Std_ReturnType CanSM_RequestComMode (
NetworkHandleType network,
Syntax ComM_ModeType ComM_Mode
)
Sync/Async Asynchronous
Parameters
None
(inout)
This service shall change the communication mode of a CAN network to the
Description
requested one.
⌋(SRS_Can_01145, SRS_Can_01142)
Remark: Please refer to [10] for a detailed description of the communication modes.
8.3.4 CanSM_GetCurrentComMode
[SWS_CanSM_00063]⌈
Service Name CanSM_GetCurrentComMode
Std_ReturnType CanSM_GetCurrentComMode (
NetworkHandleType network,
Syntax
ComM_ModeType* ComM_ModePtr
)
Sync/Async Synchronous
177 of 211 Document ID 253: AUTOSAR_SWS_CANStateManager
- AUTOSAR confidential -
Specification of CAN State Manager
AUTOSAR CP R19-11
Reentrancy Reentrant
Parameters
None
(inout)
ComM_Mode
Parameters (out) Pointer, where to put out the current communication mode
Ptr
Description This service shall put out the current communication mode of a CAN network.
⌋(SRS_ModeMgm_09084)
[SWS_CanSM_00282] ⌈ The CanSM module shall return E_NOT_OK for the API
request CanSM_GetCurrentComMode until the call of the provided API
CanSM_Init (ref. to SWS_CANSM_00023).⌋ (SRS_Can_01142)
8.3.5 CanSM_StartWakeupSource
[SWS_CanSM_00609]⌈
Service Name CanSM_StartWakeupSource
Std_ReturnType CanSM_StartWakeupSource (
Syntax NetworkHandleType network
)
Sync/Async Synchronous
Description This function shall be called by EcuM when a wakeup source shall be started.
⌋(SRS_Can_01145)
[SWS_CanSM_00611]⌈ The API function CanSM_StartWakeupSource shall
return E_NOT_OK, if the CanSM module is not initialized yet with CanSM_Init (ref. to
SWS_CANSM_00023).⌋ (SRS_Can_01145)
8.3.6 CanSM_StopWakeupSource
[SWS_CanSM_00610]⌈
Service Name CanSM_StopWakeupSource
Std_ReturnType CanSM_StopWakeupSource (
Syntax NetworkHandleType network
)
Sync/Async Synchronous
Description This function shall be called by EcuM when a wakeup source shall be stopped.
⌋(SRS_Can_01145)
[SWS_CanSM_00618]⌈ The API function CanSM_StopWakeupSource shall return
E_NOT_OK, if the CanSM module is not initialized yet with CanSM_Init (ref. to
SWS_CANSM_00023).⌋ (SRS_Can_01145)
8.3.7 Optional
8.3.7.1 CanSM_GetVersionInfo
[SWS_CanSM_00024]⌈
Service Name CanSM_GetVersionInfo
void CanSM_GetVersionInfo (
Syntax Std_VersionInfoType* VersionInfo
)
Service ID
0x01
[hex]
Sync/Async Synchronous
Reentrancy Reentrant
Parameters
None
(in)
Parameters
None
(inout)
Parameters
VersionInfo Pointer to where to store the version information of this module.
(out)
This service puts out the version information of this module (module ID, vendor ID,
Description
vendor specific version numbers related to BSW00407)
⌋(SRS_BSW_00407, SRS_BSW_00003)
8.3.7.2 CanSM_SetBaudrate
[SWS_CanSM_00561]⌈
Service
CanSM_SetBaudrate
Name
Std_ReturnType CanSM_SetBaudrate (
NetworkHandleType Network,
Syntax
uint16 BaudRateConfigID
)
Service ID
0x0d
[hex]
Sync/Async Synchronous
Reentrancy Reentrant for different Networks. Non reentrant for the same Network.
Parameters
None
(inout)
Parameters
None
(out)
This service shall start an asynchronous process to change the baud rate for the
Description configured CAN controllers of a certain CAN network. Depending on necessary
baud rate modifications the controllers might have to reset.
⌋(SRS_Can_01142)
[SWS_CanSM_00570] The CanSM module shall not provide the API function
CanSM_SetBaudrate, if the CANSM_SET_BAUDRATE_API parameter (ref. to
ECUC_CanSM_00343) is configured with the value FALSE. ⌋ (SRS_Can_01142)
8.3.7.3 CanSM_SetIcomConfiguration
[SWS_CanSM_00586]⌈
Service Name CanSM_SetIcomConfiguration
Std_ReturnType CanSM_SetIcomConfiguration (
NetworkHandleType Network,
Syntax
IcomConfigIdType ConfigurationId
)
Sync/Async Asynchronous
Parameters
None
(inout)
This service shall change the Icom Configuration of a CAN network to the
Description
requested one.
⌋(SRS_Can_01142)
[SWS_CanSM_00599]⌈ The CanSM module shall provide the API function
CanSM_SetIcomConfiguration, if the CANSM_ICOM_SUPPORT parameter (ref. to
ECUC_CanSM_00345) is configured with the value TRUE.⌋ (SRS_Can_01142)
8.3.7.4 CanSM_SetEcuPassive
[SWS_CanSM_00644]⌈
Service Name CanSM_SetEcuPassive
Std_ReturnType CanSM_SetEcuPassive (
Syntax boolean CanSM_Passive
)
Service ID
0x13
[hex]
Sync/Async Synchronous
Parameters CanSM_ TRUE: set all CanSM channels to passive, i.e. receive only
(in) Passive FALSE: set all CanSM channels back to non-passive
Parameters
None
(inout)
Parameters
None
(out)
This function can be used to set all CanSM channels of the ECU to a receive only
Description
mode. This mode will be kept either until it is set back, or the ECU is reset.
⌋(SRS_Can_01158)
8.3.9 CanSM_ControllerBusOff
[SWS_CanSM_00064]⌈
Service Name CanSM_ControllerBusOff
void CanSM_ControllerBusOff (
Syntax uint8 ControllerId
)
Service ID
0x04
[hex]
Sync/Async Synchronous
Parameters
ControllerId CAN controller, which detected a bus-off event
(in)
Parameters
None
(inout)
Parameters
None
(out)
This callback function notifies the CanSM about a bus-off event on a certain CAN
Description controller, which needs to be considered with the specified bus-off recovery
handling for the impacted CAN network.
⌋(SRS_BSW_00359, SRS_BSW_00333)
[SWS_CanSM_00189] ⌈ If the function CanSM_ControllerBusOff gets a
Controller, which is not configured as CanSMControllerId in the configuration
of the CanSM module, it shall call the function Det_ReportError with ErrorId
parameter CANSM_E_PARAM_CONTROLLER.⌋ (SRS_BSW_00359,
SRS_BSW_00333)
8.3.10 CanSM_ControllerModeIndication
[SWS_CanSM_00396]⌈
Service Name CanSM_ControllerModeIndication
void CanSM_ControllerModeIndication (
uint8 ControllerId,
Syntax
Can_ControllerStateType ControllerMode
)
Sync/Async Synchronous
Parameters
None
(inout)
This callback shall notify the CanSM module about a CAN controller mode
Description
change.
⌋(SRS_Can_01145)
[SWS_CanSM_00397] ⌈ If the function CanSM_ControllerModeIndication gets
a ControllerId, which is not configured as CanSMControllerId in the
configuration of the CanSM module, it shall call the function Det_ReportError with
ErrorId parameter CANSM_E_PARAM_CONTROLLER.⌋ (SRS_Can_01145)
8.3.11 CanSM_TransceiverModeIndication
[SWS_CanSM_00399]⌈
Service Name CanSM_TransceiverModeIndication
void CanSM_TransceiverModeIndication (
uint8 TransceiverId,
Syntax
CanTrcv_TrcvModeType TransceiverMode
)
Sync/Async Synchronous
Parameters
None
(inout)
This callback shall notify the CanSM module about a CAN transceiver mode
Description
change.
⌋(SRS_Can_01145, SRS_Can_01142)
[SWS_CanSM_00400] ⌈ If the function CanSM_TransceiverModeIndication
gets a TransceiverId, which is not configured as CanSMTransceiverId in the
configuration of the CanSM module, it shall call the function Det_ReportError with
ErrorId parameter CANSM_E_PARAM_TRANSCEIVER.⌋ (SRS_Can_01145)
8.3.12 CanSM_TxTimeoutException
[SWS_CanSM_00410]⌈
Service
CanSM_TxTimeoutException
Name
void CanSM_TxTimeoutException (
Syntax NetworkHandleType Channel
)
Service ID 0x0b
[hex]
Sync/Async Synchronous
Reentrancy Reentrant
Parameters
Channel Affected CAN network
(in)
Parameters
None
(inout)
Parameters
None
(out)
This function shall notify the CanSM module, that the CanNm has detected for the
Description affected partial CAN network a tx timeout exception, which shall be recovered within
the respective network state machine of the CanSM module.
⌋(SRS_Can_01142, SRS_Can_01145)
[SWS_CanSM_00411] ⌈ The function CanSM_TxTimeoutException shall report
CANSM_E_UNINIT to the DET, if the CanSM is not initialized
yet.⌋ (SRS_Can_01145)
8.3.13 CanSM_ClearTrcvWufFlagIndication
[SWS_CanSM_00413]⌈
Service Name CanSM_ClearTrcvWufFlagIndication
void CanSM_ClearTrcvWufFlagIndication (
Syntax uint8 Transceiver
)
Sync/Async Synchronous
Parameters
None
(inout)
Parameters
None
(out)
This callback function shall indicate the CanIf_ClearTrcvWufFlag API process end
Description
for the notified CAN Transceiver.
⌋(SRS_Can_01145)
8.3.14 CanSM_CheckTransceiverWakeFlagIndication
[SWS_CanSM_00416]⌈
Service Name CanSM_CheckTransceiverWakeFlagIndication
void CanSM_CheckTransceiverWakeFlagIndication (
Syntax uint8 Transceiver
)
Sync/Async Synchronous
Parameters
None
(inout)
Parameters
None
(out)
⌋(SRS_Can_01145)
8.3.15 CanSM_ConfirmPnAvailability
[SWS_CanSM_00419]⌈
Service Name CanSM_ConfirmPnAvailability
void CanSM_ConfirmPnAvailability (
Syntax uint8 TransceiverId
)
Sync/Async Synchronous
Reentrancy Reentrant
Parameters (in) TransceiverId CAN transceiver, which was checked for PN availability
Parameters
None
(inout)
⌋(SRS_Can_01145)
[SWS_CanSM_00546] ⌈ The function CanSM_ConfirmPnAvailability shall
notify the CanNm module (ref. to SWS_CanSM_00422), if it is called with a
configured Transceiver as input parameter (ref. to
ECUC_CanSM_00137).⌋ (SRS_Can_01145)
[SWS_CanSM_00420] ⌈
The function CanSM_ConfirmPnAvailability shall report CANSM_E_UNINIT to
the DET, if the CanSM module is not initialized yet.⌋ (SRS_Can_01145)
[SWS_CanSM_00421] ⌈
If the function CanSM_ConfirmPnAvailability gets a TransceiverId, which
is not configured (ref. to ECUC_CanSM_00137) in the configuration of the CanSM
191 of 211 Document ID 253: AUTOSAR_SWS_CANStateManager
- AUTOSAR confidential -
Specification of CAN State Manager
AUTOSAR CP R19-11
8.3.16 CanSM_CurrentIcomConfiguration
[SWS_CanSM_00587]⌈
Service Name CanSM_CurrentIcomConfiguration
void CanSM_CurrentIcomConfiguration (
uint8 ControllerId,
Syntax IcomConfigIdType ConfigurationId,
IcomSwitch_ErrorType Error
)
Service ID
0x10
[hex]
Sync/Async Synchronous
Configuration
Parameters Changed Configuration Id
Id
(in)
ICOM_SWITCH_E_OK: No Error ICOM_SWITCH_E_FAILED:
Error
Switch to requested Configuration failed. Severe Error.
Parameters
None
(inout)
Parameters
None
(out)
This service shall inform about the change of the Icom Configuration of a CAN
Description
network.
⌋(SRS_Can_01142)
[SWS_CanSM_00595]⌈ If the CANSM_ICOM_SUPPORT parameter (ref. to
ECUC_CanSM_00345) is configured with the value TRUE, then the callback function
BSWM_CanSM_CurrentIcomConfiguration shall notify the BswM about the
status of activation or deactivation of Pretended Networking (ref. to chapter 7.4) for
the CAN Network, which contains the notified ControllerId in its configuration. It shall
transfer the ConfigurationId and Error parameter to the BswM therefore.⌋
(SRS_Can_01142)
8.4.1 CanSM_MainFunction
[SWS_CanSM_00065]⌈
Service Name CanSM_MainFunction
void CanSM_MainFunction (
Syntax void
)
This chapter defines all interfaces, which are required to fulfill the core functionality of
the module.[]⌈
Header
API Function Description
File
BswM_CanSM_-
BswM_ Function to inform BswM about the switch of Icom
CurrentIcom-
CanSM.h Configuration.
Configuration
BswM_CanSM_- BswM_
Function called by CanSM to indicate its current state.
CurrentState CanSM.h
CanIf_CheckTrcv- Requests the CanIf module to check the Wake flag of the
CanIf.h
WakeFlag designated CAN transceiver.
CanIf_ClearTrcvWuf- Requests the CanIf module to clear the WUF flag of the
CanIf.h
Flag designated CAN transceiver.
CanIf_GetTx- This service reports, if any TX confirmation has been done for
CanIf.h
ConfirmationState the whole CAN controller since the last CAN controller start.
CanIf_SetController- This service calls the corresponding CAN Driver service for
CanIf.h
Mode changing of the CAN controller mode.
⌋()
8.5.1.1 Remark: Usage of CanIf_SetPduMode
Although the CanIf module provides more requestable PDU modes, the CanSM
module only uses the parameters CANIF_ONLINE, CANIF_TX_OFFLINE_ACTIVE
and CANIF_TX_OFFLINE for the call of the API CanIf_SetPduMode.
This chapter defines all interfaces, which are required to fulfill an optional
functionality of the module.[]⌈
Header
API Function Description
File
This service shall set the baud rate configuration of the CAN
CanIf_SetBaudrate CanIf.h controller. Depending on necessary baud rate modifications the
controller might have to reset.
⌋()
194 of 211 Document ID 253: AUTOSAR_SWS_CANStateManager
- AUTOSAR confidential -
Specification of CAN State Manager
AUTOSAR CP R19-11
In this chapter all interfaces are listed where the target functions could be configured.
The target function is usually a callback function. The names of these kind of
interfaces is not fixed because they are configurable.
8.5.3.1 <User_GetBusOffDelay>
[SWS_CanSM_00637]⌈
Service Name <User_GetBusOffDelay>
void <User_GetBusOffDelay> (
NetworkHandleType network,
Syntax
uint8* delayCyclesPtr
)
Sync/Async Synchronous
Parameters
None
(inout)
Parameters delayCycles Number of CanSM base cycles to wait additionally to L1/L2 after
(out) Ptr a BusOff occurred.
This callout function returns the number of CanSM base cycles to wait additionally
Description
to L1/L2 after a BusOff occurred.
⌋(SRS_Can_01144, SRS_Can_01146)
9 Sequence diagrams
All interactions of the CanSM module with the depending modules CanIf, ComM,
BswM, Dem and CanNm are specified in the state machine diagrams (ref. to
CANSM_BSM_S_FULLCOM
ExitPoint
CHANGE_BR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
[G_FULL_COM_MODE_REQUESTED]
/E_FULL_COM /E_BR_END_FULL_COM
T_SILENT_COM_MODE_REQUEST
/E_FULL_TO_SILENT_COM
CANSM_BSM_S_PRE_FULLCOM
CANSM_BSM_S_CHANGE_BAUDRATE
ExitPoint To
FULLCOM T_FULL_COM_MODE_REQUEST
/E_SILENT_TO_FULL_COM
ExitPoint
FULL_OR_SILENT_COM
ExitPoint
REPEAT_MAX
ExitPoint
NO_COM
[G_SILENT_COM_MODE_REQUESTED]
/E_BR_END_SILENT_COM
T_FULL_COM_MODE_REQUEST CANSM_BSM_S_SILENTCOM
T_FULL_COM_MODE_REQUEST
/E_PRE_NOCOM
CANSM_BSM_WUVALIDATION
T_BUS_OFF
CANSM_BSM_S_SILENTCOM_BOR
T_NO_COM_MODE_REQUEST
/E_PRE_NOCOM
T_STOP_WAKEUP_SOURCE
T_NO_COM_MODE_REQUEST
/E_PRE_NO_COM
CANSM_BSM_S_PRE_NOCOM
T_START_WAKEUP_SOURCE
T_START_WAKEUP_SOURCE
CanSM_Init
CANSM_BSM_S_NOCOM
/E_NOCOM
CANSM_BSM_S_NOT_INITIALIZED
PowerOn
CanSM_DeInit
PowerOff
Figure 7-1- Figure 7-10). Therefore the CanSM SWS provides only some exemplary
sequences for the use case to start and to stop the CAN controller(s) of a CAN
network.
Remark: For the special use case of CAN network deinitialization with partial network
support please refer to chapter 9 of [9] (Specification of CAN Transceiver Driver).
«module» «module»
CanSM CanIf Limitations: This sequence diagram
shows the main aspects of the
interaction between the CanSM and
the CanIf to start the CAN controllers
of a CAN Network. The error handling
for the case, that the CanIf API returns
alt CanSm_StartCanControllerVariants E_NOT_OK or the CanSM detects a
CanIf indication timeout are not
[CAN controller mode change performed synchronously] considered here.
loop CanSm_StartCanControllerLoop1
[Do for every configured CAN controller of the CAN network]
CanSM_ControllerModeIndication(ControllerId,
ControllerMode:=CAN_CS_STARTED)
:E_OK
loop CanSm_StartCanControllerLoop2
[Do for every configured CAN controller of the CAN network]
CanIf_SetControllerMode(Std_ReturnType, uint8,
Can_ControllerStateType)
:E_OK
loop CanSm_StartCanControllerLoop3
[Wait for CAN_CS_STARTED indication for all CAN controllers of the CAN network]
CanSM_ControllerModeIndication(ControllerId,
ControllerMode:=CAN_CS_STARTED)
«module» «module»
CanSM CanIf Limitations: This sequence diagram
shows the main aspects of the
interaction between the CanSM and
the CanIf to stop the CAN controllers
of a CAN Network. The error handling
for the case, that the CanIf API returns
alt CanSm_StopCanControllerVariants E_NOT_OK or the CanSM detects a
CanIf indication timeout are not
[CAN controller mode change performed synchronously] considered here.
loop CanSm_StopCanControllerLoop1
[Do for every configured CAN controller of the CAN network]
CanSM_ControllerModeIndication(ControllerId, ControllerMode:=CAN_CS_STOPPED)
:E_OK
loop CanSm_StopCanControllerLoop2
[Do for every configured CAN controller of the CAN network]
:E_OK
loop CanSm_StopCanControllerLoop3
[Wait for CAN_CS_STOPPED indication for all CAN controllers of the CAN network]
CanSM_ControllerModeIndication(ControllerId, ControllerMode:=CAN_CS_STOPPED)
10 Configuration specification
In general, this chapter defines configuration parameters and their clustering into
containers. In order to support the specification Chapter 10.1 describes
fundamentals. It also specifies a template (table) you shall use for the parameter
specification. We intend to leave Chapter 10.1 in the specification to guarantee
comprehension.
Chapter 10.2 specifies the structure (containers) and the parameters of the module
CanSM.
Chapter 10.3 specifies published information of the module CanSM.
10.2.1 CanSM
Included Containers
Container Name Multiplicity Scope / Dependency
This container contains the global parameters of the CanSM
CanSMConfiguration 1 and sub containers, which are for the CAN network specific
configuration.
Container for general pre-compile parameters of the CanSM
CanSMGeneral 1
module
10.2.2 CanSMConfiguration
Included Containers
Container Name Multiplicity Scope / Dependency
This container contains the CAN network specific parameters
CanSMManagerNetwork 1..*
of each CAN network
10.2.3 CanSMGeneral
Multiplicity 1
Type EcucBooleanParamDef
Default value false
Post-Build Variant Value false
Value Configuration Class Pre-compile time X All Variants
Link time --
Post-build time --
Scope / Dependency scope: local
No Included Containers
10.2.4 CanSMManagerNetwork
Name CanSMComMNetworkHandleRef
Parent Container CanSMManagerNetwork
Description Unique handle to identify one certain CAN network. Reference to one of
the network handles configured for the ComM.
Multiplicity 1
Type Symbolic name reference to [ ComMChannel ]
Post-Build Variant Value true
Value Configuration Class Pre-compile time X VARIANT-PRE-COMPILE
Link time X VARIANT-LINK-TIME
Post-build time X VARIANT-POST-BUILD
Scope / Dependency scope: local
dependency: ComM
Included Containers
Container Name Multiplicity Scope / Dependency
This container contains the controller IDs assigned to a
CanSMController 1..*
CAN network.
Container for the references to DemEventParameter
elements which shall be invoked using the API
Dem_SetEventStatus in case the corresponding error
CanSMDemEventParameterRef
0..1 occurs. The EventId is taken from the referenced
s
DemEventParameter's DemEventId symbolic value. The
standardized errors are provided in this container and can
be extended by vendor-specific error references.
10.2.5 CanSMController
No Included Containers
10.2.6 CanSMDemEventParameterRefs
Post-Build Variant
true
Multiplicity
Post-Build Variant Value true
Multiplicity ConfigurationPre-compile time X VARIANT-PRE-COMPILE
Class Link time X VARIANT-LINK-TIME
Post-build time X VARIANT-POST-BUILD
Value Configuration Class Pre-compile time X VARIANT-PRE-COMPILE
Link time X VARIANT-LINK-TIME
Post-build time X VARIANT-POST-BUILD
Scope / Dependency scope: local
dependency: Dem
No Included Containers