AUTOSAR_SWS_CANStateManager 中文翻译

文档编号:083 | 状态:Final | 发布于:AUTOSAR CP Release 4.4.0
所属标准:AUTOSAR Classic Platform | 文档责任方:AUTOSAR

本翻译覆盖原文档 1-90 页正文。原文为软件规范(SWS),定义 CAN State Manager(CanSm)模块的 API、配置、错误处理。


1 引言与范围

CAN State Manager(CanSm)协调 CAN 网络的状态机。包含 BusOff 恢复、睡眠/唤醒转换、唤醒验证、PN 协调等。R4.4 起增强与 NM 状态机同步。

2 缩略语

CanSm / CAN / BusOff / ComM / Nm / BswM / Wakeup / Sleep / FullCom / SilentCom / NoCom

3 相关文档

[1] AUTOSAR SWS ComM
[2] AUTOSAR SWS CAN Interface
[3] AUTOSAR SWS CanNm
[4] AUTOSAR SRS CAN

4 约束与假设

CanSm 应:

5 依赖其他模块

CanSm 依赖:ComM(模式请求)/ CanIf(接口模式)/ CanNm(NM 协调)/ BswM(模式仲裁)/ Dem(错误上报)。

6 功能规格

6.1 状态机

CanSm 状态机:

7 API 服务

7.1 初始化 / 关闭

void CanSm_Init(const CanSm_ConfigType* ConfigPtr):初始化。
void CanSm_DeInit(void):去初始化。

7.2 模式请求(来自 ComM)

Std_ReturnType CanSm_RequestComMode(NetworkHandleType NetworkHandle, ComM_ModeType ComMode):请求通信模式。

7.3 模式获取

Std_ReturnType CanSm_GetCurrentComMode(NetworkHandleType NetworkHandle, ComM_ModeType* ComModePtr):获取当前模式。

7.4 模式指示(来自 CanNm)

void CanSm_CurrentNetworkModeIndication(NetworkHandleType NetworkHandle, CanNm_NetworkModeType CurrentState):当前网络模式指示。

7.5 唤醒指示

void CanSm_StartWakeupSourceIndication(NetworkHandleType NetworkHandle, CanSm_StartWakeupSourceType* WakeupSourcePtr):开始唤醒源指示。

7.6 回调(来自 CanIf)

void CanSm_ControllerBusOff(uint8 Controller):BusOff 指示。
void CanSm_ControllerWakeupIndication(uint8 Controller):唤醒指示。

7.7 MainFunction

void CanSm_MainFunction(void):周期性主函数。

8 配置

CanSm 配置类:

9 错误处理

9.1 开发错误

CANSM_E_UNINIT:模块未初始化。
CANSM_E_PARAM_POINTER:参数指针为空。
CANSM_E_PARAM:参数无效。

9.2 运行时错误

CANSM_E_BUSY:模块忙。
CANSM_E_INVALID_STATE:无效状态转换。


校对记录

校对轮次:L1 自动校对(2026-06-13)