文章目录前言Autosar CanNm状态机软件实现流程总结前言之前发现在被动唤醒时,ECU也会发送一帧网络管理报文,且不是第一帧发送的报文,但是不知道这帧网络管理报文是如何被发送的,本文基于这一疑问来进行分析,加深对网络管理的理解Autosar CanNm状态机ECU被动唤醒时,调用CanNm初始化后CanNm进入BusSleep Mode,然后调用CanNm_PassiveStartUp进入Repeat Message State,当Repeat Message的Timer超时之后,会切换到Ready Sleep State,此处很明显,网络管理报文发送是在RMS状态发送的,但是为什么是发一帧报文呢?直接调试看下会更清晰软件实现流程通过断点调试可以看到Nm报文发送的数据流:(CanNm_MainFunction在周期task中调用)CanNm_MainFunctionTx中要调用CanNm_MessageTransmit需要满足下面的条件: