-
网络管理机制
AUTOSAR网络管理机制其实十分简单,概括下来三句话:
需要通信就发网络报文,否则就停发网络报文,所有节点同睡同醒。
下图是网络管理的状态机:
网络管理包括三个模式:Network Mode、Prepare Bus-Sleep Mode和Bus-Sleep Mode。
-
Network Mode
Network Mode是节点正常工作所处的模式,该模式包括三个子状态:Repeat Message State、Normal Operation State和Ready Sleep State。
-
Repeat Message State
在Repeat Message状态下,节点会周期性发送NM报文,该状态的持续时长是可以配置的。Repeat Message State的进入路径有:
- 在Bus-Sleep Mode或Prepare Bus-Sleep Mode下收到CanNm_NetworkRequest()本地唤醒请求;
- 在Bus-Sleep Mode或Prepare Bus-Sleep Mode下收到CanNm_PassiveStartUp()被动唤醒请求;
- 在Prepare Bus-Sleep Mode下收到NM报文;
- 在Normal Operation State或Ready Sleep State下本地请求node detection或收到其它节点的node detection请求。
Repeat Message State的离开路径有:
- 有本地唤醒请求时进入Normal Operation State;
- 否则进入Ready Sleep State。
Repeat Message State在整个状态机中处于交叉路口的位置,和其它几个状态间均有联系。
-
Normal Operation State
节点本地有通信需求时会一直处于Normal Operation状态,在该状态下会周期性的发送NM报文,Normal Operation State的进入路径有:
- Repeat Message State结束时仍有本地请求;
- Ready Sleep State下有通信需求(Network requested)。
Normal Operation State的离开路径有:
- 不再有本地通信需求(Network released)时跳转到Rea