0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

ECU系統(tǒng)休眠后通過診斷報(bào)文喚醒ECU且喚醒網(wǎng)絡(luò)

832065824 ? 來源:汽車電子嵌入式 ? 2023-04-04 09:40 ? 次閱讀

前言

最近遇到一個(gè)特殊需求:在ECU系統(tǒng)休眠后需要通過網(wǎng)絡(luò)管理報(bào)文和診斷報(bào)文喚醒網(wǎng)絡(luò),但是應(yīng)用報(bào)文不能喚醒網(wǎng)絡(luò)。通常情況下,在ECU系統(tǒng)休眠后,AUTOSAR架構(gòu)中只能配置通過網(wǎng)絡(luò)管理報(bào)文喚醒網(wǎng)絡(luò)或者所有報(bào)文都能喚醒網(wǎng)絡(luò),沒有單獨(dú)的診斷報(bào)文喚醒網(wǎng)絡(luò)的配置。那在AUTOSAR架構(gòu)下如何來實(shí)現(xiàn)這個(gè)功能了?

本文先詳細(xì)介紹這個(gè)需求在AUTOSAR架構(gòu)下遇到的問題,然后再給出一個(gè)具體的解決辦法。

Note: 使用Vector的工具,以及TJA1043的CAN收發(fā)器。

正文

1.面臨的問題

1.1 TJA1043的INH腳喚醒事件

ECU系統(tǒng)休眠后TJA1043的INH腳處于floating高阻態(tài),系統(tǒng)休眠后通過硬件外部電路下拉到低電平狀態(tài)/Low-level,ECU系統(tǒng)休眠前把TJA1043的INH腳配置為喚醒腳,系統(tǒng)休眠后如果收到任意的CAN報(bào)文,TJA1043的INH腳會(huì)被拉高,產(chǎn)生CAN收發(fā)器的硬件喚醒事件(Low-Level to High-Level)。如果ECU系統(tǒng)是斷電系統(tǒng),那么INH腳應(yīng)該接在SBC上,因?yàn)镾BC是常電狀態(tài),檢測到INH的喚醒事件后就會(huì)給ECU-MCU供電,MCU冷啟動(dòng)。如果是ECU系統(tǒng)是常電系統(tǒng),INH腳應(yīng)該接到MCU的一個(gè)中斷喚醒腳上,檢測到INH的喚醒事件后,中斷喚醒MCU,MCU中的軟件可以選擇繼續(xù)跑,也可以通過軟件Reset后重新熱啟動(dòng)。

參考文章:關(guān)于CanTrcv模塊的幾點(diǎn)思考

總之,無論是斷電系統(tǒng)還是常電系統(tǒng),在ECU系統(tǒng)休眠后,任意的CAN報(bào)文都能喚醒ECU。

1.2 EcuM配置網(wǎng)絡(luò)喚醒

實(shí)現(xiàn)網(wǎng)絡(luò)喚醒,需要在EcuM模塊中配置喚醒源,同時(shí)配置喚醒源檢測。

f562821e-d27c-11ed-bfe3-dac502259ad0.png

開啟EcuM的網(wǎng)絡(luò)喚醒源校驗(yàn)Validation后需要User實(shí)現(xiàn)三個(gè)Callout函數(shù)函數(shù):

1) EcuM_StartWakeupSources(EcuM_WakeupSourceType);

2) EcuM_StopWakeupSources(EcuM_WakeupSourceType);

3) EcuM_CheckValidation(EcuM_WakeupSourceType);

f5805816-d27c-11ed-bfe3-dac502259ad0.png

f5af4da6-d27c-11ed-bfe3-dac502259ad0.png

參考文章:AUTOSAR架構(gòu)下關(guān)于CanNm的幾點(diǎn)思考

1.3 CanIf配置喚醒報(bào)文過濾

CanIf中可以配置Wakeup Check Valition,有兩種配置可選:

1)所有報(bào)文可以通過校驗(yàn)

2)只有NM報(bào)文可以通過校驗(yàn)

f5d2d4c4-d27c-11ed-bfe3-dac502259ad0.png

1.4ComM網(wǎng)絡(luò)喚醒

EcuM調(diào)用CanIf接口校驗(yàn)網(wǎng)絡(luò)喚醒源成功后,EcuM就會(huì)調(diào)用ComM_EcuM_WakeUpIndication請求通信,ComM在CommunicationAlllowed后就會(huì)調(diào)轉(zhuǎn)到Full Com狀態(tài)開啟網(wǎng)絡(luò)。

f5ed4aac-d27c-11ed-bfe3-dac502259ad0.png

參考文章:AUTOSAR網(wǎng)絡(luò)通信問題分析

1.5診斷報(bào)文喚醒面臨的問題

我們的需求是:在ECU系統(tǒng)休眠后需要通過網(wǎng)絡(luò)管理報(bào)文和診斷報(bào)文喚醒網(wǎng)絡(luò),但是應(yīng)用報(bào)文不能喚醒網(wǎng)絡(luò)。

但是從上文中我們可以得知:

1)如果CanIf配置為所有報(bào)文可以校驗(yàn)通過,那么應(yīng)用報(bào)文也會(huì)通過校驗(yàn),從而喚醒網(wǎng)絡(luò)。

2)如果CanIf配置為只有NM報(bào)文可以通過校驗(yàn),那么診斷報(bào)文也就不能通過校驗(yàn), 從而診斷報(bào)文不能喚醒網(wǎng)絡(luò)。

3)只要ECU被喚醒后,因?yàn)槌绦蛞呀?jīng)跑起來了,理論上肯定可以讓診斷報(bào)文來喚醒網(wǎng)絡(luò)的,但是在AUTOSAR架構(gòu)下沒有提供這個(gè)配置,代碼框架已經(jīng)被限制,要實(shí)現(xiàn)這個(gè)功能就不知道在哪里實(shí)現(xiàn)。

也就是說,在AUTOSAR架構(gòu)下按通常配置是無法實(shí)現(xiàn)ECU系統(tǒng)休眠后需要通過網(wǎng)絡(luò)管理報(bào)文和診斷報(bào)文喚醒網(wǎng)絡(luò),但是應(yīng)用報(bào)文不能喚醒網(wǎng)絡(luò)的。

2.解決的辦法

如果能想辦法在EcuM調(diào)用CanIf_CheckValication的時(shí)候能讓診斷報(bào)文通過校驗(yàn)(NM報(bào)文也通過校驗(yàn),應(yīng)用報(bào)文不能通過校驗(yàn))就能解決這個(gè)問題。

審核編輯 :李倩

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 收發(fā)器
    +關(guān)注

    關(guān)注

    10

    文章

    3353

    瀏覽量

    105742
  • AUTOSAR
    +關(guān)注

    關(guān)注

    10

    文章

    345

    瀏覽量

    21417
  • ecu
    ecu
    +關(guān)注

    關(guān)注

    14

    文章

    865

    瀏覽量

    54335

原文標(biāo)題:ECU系統(tǒng)休眠后通過診斷報(bào)文喚醒ECU且喚醒網(wǎng)絡(luò)

文章出處:【微信號(hào):汽車電子嵌入式,微信公眾號(hào):汽車電子嵌入式】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    CAN總線指定幀喚醒的硬件實(shí)現(xiàn)方式

    CAN的指定幀喚醒是一種網(wǎng)絡(luò)管理的場景,對(duì)于我這個(gè)偏硬件的工程師來說,網(wǎng)絡(luò)管理也就是通過CAN來喚醒不同的
    發(fā)表于 03-07 09:17 ?8195次閱讀

    干貨分享 | TSMaster—LIN 喚醒休眠機(jī)制

    在汽車總線中常見的喚醒方式有硬線喚醒網(wǎng)絡(luò)喚醒和特定信號(hào)喚醒,而LIN總線則是通過
    的頭像 發(fā)表于 09-25 08:03 ?1034次閱讀
    干貨分享 | TSMaster—LIN <b class='flag-5'>喚醒</b>與<b class='flag-5'>休眠</b>機(jī)制

    電動(dòng)汽車的ECU進(jìn)入休眠,目前有3種喚醒模式,CAN總線和AC電壓的喚醒設(shè)計(jì)原理是什么?

    電動(dòng)汽車的ECU進(jìn)入休眠,目前有3種喚醒模式,我想知道CAN總線和AC電壓的喚醒設(shè)計(jì)原理是什么?
    發(fā)表于 02-02 06:19

    CANoe:網(wǎng)絡(luò)ECU開發(fā)、測試和分析的專業(yè)工具

    規(guī)范/集成/回歸測試 仿真ECU診斷功能 針對(duì)好的/壞的測試用例,訪問所有級(jí)別診斷通信(CAN報(bào)文,傳輸協(xié)議和診斷服務(wù))的能力仿真和殘余總
    發(fā)表于 10-09 17:42

    汽車ECU的低功耗高性能實(shí)現(xiàn)

    在需要時(shí)能及時(shí)喚醒。比如當(dāng)車速超過30Km/H時(shí)則完全可以關(guān)閉倒車?yán)走_(dá)。其實(shí)CAN收發(fā)器可以工作在深度睡眠模式(參見ISO11898-6),只有當(dāng)接收到一個(gè)特定的CAN報(bào)文收發(fā)器才會(huì)喚醒
    發(fā)表于 05-10 04:23

    CH582M freeRTOS如何實(shí)現(xiàn)休眠? 休眠如何喚醒?

    有以下以后望解答:如何實(shí)現(xiàn)休眠? 休眠如何喚醒?目前嘗試用裸機(jī)例程中的休眠函數(shù),僅LowPower_Shutdown(0); 可以正常睡眠
    發(fā)表于 08-01 06:19

    如何通過外部事件快速喚醒MCU

    如何通過外部事件快速喚醒基于?Cortex M0+的 MCU 簡介 Microchip 的基于 32 位 Arm Cortex-M0+的單片機(jī)具有通過空閑、待機(jī)、備用和關(guān)斷等不同休眠
    的頭像 發(fā)表于 09-30 10:31 ?3931次閱讀

    EcuM是如何知道有喚醒事件呢?

    ?EcuM主函數(shù)會(huì)輪詢檢測底層上報(bào)的喚醒事件,如果想進(jìn)一步的分析喚醒事件是不是有效的總線喚醒源(網(wǎng)絡(luò)管理報(bào)文),需要
    的頭像 發(fā)表于 08-23 11:39 ?4884次閱讀
    EcuM是如何知道有<b class='flag-5'>喚醒</b>事件呢?

    侃侃主動(dòng)/被動(dòng)喚醒源與網(wǎng)絡(luò)主動(dòng)/被動(dòng)喚醒這幾個(gè)名詞

    如果想喚醒Can2 Bus的節(jié)點(diǎn)C網(wǎng)絡(luò),需要節(jié)點(diǎn)D(與節(jié)點(diǎn)C同一個(gè)網(wǎng)段)發(fā)送網(wǎng)絡(luò)管理報(bào)文喚醒節(jié)點(diǎn)C。
    的頭像 發(fā)表于 08-26 17:23 ?4230次閱讀
    侃侃主動(dòng)/被動(dòng)<b class='flag-5'>喚醒</b>源與<b class='flag-5'>網(wǎng)絡(luò)</b>主動(dòng)/被動(dòng)<b class='flag-5'>喚醒</b>這幾個(gè)名詞

    ECU休眠網(wǎng)絡(luò)喚醒時(shí)間怎么測?

    t0時(shí)刻,使用仿真設(shè)備(CANoe/PCan/ZLG等)發(fā)送一幀或者連續(xù)多幀有效的網(wǎng)絡(luò)管理報(bào)文;
    的頭像 發(fā)表于 08-29 17:28 ?4312次閱讀
    <b class='flag-5'>ECU</b>從<b class='flag-5'>休眠</b>到<b class='flag-5'>網(wǎng)絡(luò)</b><b class='flag-5'>喚醒</b>時(shí)間怎么測?

    網(wǎng)絡(luò)關(guān)閉但ECU沒有休眠前如何進(jìn)行網(wǎng)絡(luò)喚醒呢?

    最近在做CAN網(wǎng)絡(luò)管理的工作,發(fā)現(xiàn)網(wǎng)絡(luò)休眠(關(guān)閉)ECU系統(tǒng)沒有
    的頭像 發(fā)表于 03-29 09:06 ?2801次閱讀

    ECU系統(tǒng)休眠通過診斷報(bào)文喚醒ECU喚醒網(wǎng)絡(luò)快發(fā)NM報(bào)文

    的頭像 發(fā)表于 05-09 09:36 ?5071次閱讀
    <b class='flag-5'>ECU</b><b class='flag-5'>系統(tǒng)</b><b class='flag-5'>休眠</b><b class='flag-5'>后</b><b class='flag-5'>通過</b><b class='flag-5'>診斷</b><b class='flag-5'>報(bào)文</b><b class='flag-5'>喚醒</b><b class='flag-5'>ECU</b><b class='flag-5'>且</b><b class='flag-5'>喚醒</b><b class='flag-5'>網(wǎng)絡(luò)</b><b class='flag-5'>后</b>快發(fā)NM<b class='flag-5'>報(bào)文</b>

    LIN休眠喚醒及測試心得

    這次我們的介紹主題是LIN休眠喚醒,一起看看標(biāo)準(zhǔn)和差異性,開發(fā)和測試的關(guān)系,實(shí)際的案例分享也來了。
    的頭像 發(fā)表于 11-23 08:43 ?1055次閱讀
    LIN<b class='flag-5'>休眠</b><b class='flag-5'>喚醒</b>及測試心得

    理一理AUTOSAR架構(gòu)下的喚醒源事件

    最近的項(xiàng)目負(fù)責(zé)網(wǎng)絡(luò)管理部分,網(wǎng)路喚醒ECU系統(tǒng)休眠關(guān)系緊密,對(duì)系統(tǒng)
    的頭像 發(fā)表于 07-14 09:11 ?3344次閱讀
    理一理AUTOSAR架構(gòu)下的<b class='flag-5'>喚醒</b>源事件

    簡化ECU中具有選擇性喚醒功能的隔離式CAN設(shè)計(jì)

    電子發(fā)燒友網(wǎng)站提供《簡化ECU中具有選擇性喚醒功能的隔離式CAN設(shè)計(jì).pdf》資料免費(fèi)下載
    發(fā)表于 09-06 11:15 ?0次下載
    簡化<b class='flag-5'>ECU</b>中具有選擇性<b class='flag-5'>喚醒</b>功能的隔離式CAN設(shè)計(jì)