下圖是COMM的狀態(tài)轉(zhuǎn)換
通信發(fā)起的三種條件:
USER:根據(jù)LOCAL的喚醒源(KL15等)主動請求COMM(ComM_RequestComMode)進(jìn)入到請求模式
DCM:診斷功能請求(在NM Passive模式下不能激活通道)
遠(yuǎn)程網(wǎng)絡(luò)管理報文喚醒:分為ECU是主動的還是被動的,主動的ECU被其他網(wǎng)絡(luò)管理報文喚醒后可以繼續(xù)喚醒其他ECU;被動的ECU(Passive NM 模式)只能被別人喚醒不能喚醒別的ECU
要想通信,三個條件必須有一個滿足。
進(jìn)入FULL的條件:
一般在ECUM的狀態(tài)切換(WakeUp到RUN)中將對應(yīng)的通道允許通信
FULL模式
Passive ECU:不能發(fā)生網(wǎng)絡(luò)管理報文的ECU,只能被動被別的ECU喚醒,直接進(jìn)入到READY_SLEEP模式。可以調(diào)用CanNm的CanNm_PassiveStartup切換CanNm的狀態(tài),在CanNm的Network模式中由于此類ECU不支持喚醒別的ECU,因此直接進(jìn)入到CanNm的Ready Sleep狀態(tài)。
非Passive ECU:可以發(fā)送網(wǎng)絡(luò)管理報文的ECU,進(jìn)入到FULL_COM_NETWORK_REQUEST模式,可以主動發(fā)送網(wǎng)絡(luò)管理報文去喚醒總線上其他網(wǎng)絡(luò)節(jié)點(diǎn),調(diào)用CanNm中的CanNm_NetworkRequest切換CanNm的狀態(tài)機(jī)進(jìn)入到Repeat Message狀態(tài)去喚醒其他ECU。
FULL到SILENT
主要和CanNm的網(wǎng)絡(luò)管理相關(guān),在網(wǎng)絡(luò)管理狀態(tài)從Ready Sleep進(jìn)入到Prepare Bus Sleep的時候通知ComM從狀態(tài)FULL進(jìn)入到SILENT模式,該模式停止發(fā)送報文,只接收報文(一般通過控制COM層的PDU Group進(jìn)行操作)。
SLIENT到NO
當(dāng)CanNm的狀態(tài)從Prepare Bus Sleep進(jìn)入到Bus Sleep的時候通過回調(diào)函數(shù)通知ComM,ComM狀態(tài)從SLIENT進(jìn)入到NO,接下來ComM發(fā)起NO的請求,通過CanSM控制CanIf、CanTrcv、Can進(jìn)入到OFF模式。
審核編輯:劉清
-
CAN通信
+關(guān)注
關(guān)注
5文章
100瀏覽量
18709 -
AUTOSAR
+關(guān)注
關(guān)注
10文章
388瀏覽量
23304 -
ECU測試
+關(guān)注
關(guān)注
1文章
15瀏覽量
8905
發(fā)布評論請先 登錄
AUTOSAR CAN網(wǎng)絡(luò)管理
AUTOSAR CAN網(wǎng)絡(luò)管理狀態(tài)機(jī)介紹
AUTOSAR模式的FEE驅(qū)動程序可以與其他非AUTOSAR模式兼容嗎?
AUTOSAR CAN時鐘同步問題
AUTOSAR_SWS_CAN網(wǎng)絡(luò)管理規(guī)范標(biāo)準(zhǔn)4.3.1
CAN網(wǎng)絡(luò)管理規(guī)范 AUTOSAR CP中文版
AUTOSAR CAN網(wǎng)絡(luò)管理協(xié)議
AutoSAR中CAN通信網(wǎng)絡(luò)管理的概述

一文解析AUTOSAR CAN網(wǎng)絡(luò)管理

評論