AUTOSAR CAN主动与被动唤醒分析

AUTOSAR CAN主动与被动唤醒分析

主动唤醒与被动唤醒

主动唤醒是当ECU上电并检测到本地唤醒源(比如RTC定时唤醒、KL15硬线唤醒)触发,则应用层调用网络请求接口,ECU启动网络通信;

被动唤醒是当ECU上电并接收到网络管理报文,则ECU启动网络通信。

从AUTOSAR网络管理的状态迁移图中,也就是状态从Bus-Sleep Mode切换到Network Mode的Repeat Message State的触发源不一样,主动唤醒是本地调用网络请求接口触发迁移,被动唤醒是接收到网络管理报文触发迁移。

AUTOSAR CAN主动与被动唤醒分析_第1张图片

主动唤醒

在AUTOSAR软件中,当应用检测到主动唤醒源后,可以调用EcuM_SetWakeupEvent来发送Wakeup Event,然后根据需求验证唤醒源,验证成功调用EcuM_ValidateWakeupEvent,EcuM_ValidateWakeupEvent调用ComM_EcuM_WakeupIndication最终会通知NM进行网络管理流程,然后用户需要调用ComM_RequestComMode(x, COMM_FULL_COMMUNICATION)来请求网络,之后网络状态会从Bus-Sleep Mode进入到网络管理的Repeat Message State。

被动唤醒

你可能感兴趣的:(Classic,AUTOSAR精讲,CAN唤醒分析)