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

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

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

影響報(bào)文超時(shí)上報(bào)的機(jī)制有哪些

832065824 ? 來(lái)源:汽車電子嵌入式 ? 2023-08-07 09:16 ? 次閱讀

前言

最近遇到一個(gè)CAN報(bào)文超時(shí)Notification不上報(bào)導(dǎo)致ECU不休眠的偶發(fā)問(wèn)題,本文分享解決問(wèn)題的思路及影響報(bào)文超時(shí)上報(bào)的機(jī)制,希望能給各位讀者一點(diǎn)啟發(fā)。

參考文檔:

1.Specification of CommunicationAUTOSAR Release 4.3.0

本文使用的AUTOSAR配置工具為:Vector公司的Davinci

正文

1.問(wèn)題描述

背景:ECU下電的兩個(gè)必要條件是:本地硬線IGN== IgOff && CAN報(bào)文中的點(diǎn)火信號(hào)等于IgOff,如果包含點(diǎn)火信號(hào)的CAN報(bào)文丟失,則判斷該報(bào)文是否Timeout。

問(wèn)題場(chǎng)景描述

初始狀態(tài):IgOn,CAN報(bào)文中點(diǎn)火信號(hào)等于IgOn

執(zhí)行動(dòng)作:IgOff,直接拔掉CAN工具(等同于所有報(bào)文掉線)

問(wèn)題表現(xiàn):偶發(fā)ECU不能休眠下電

初步分析:ECU不能下電時(shí)的Log中顯示,IgOff后點(diǎn)火信號(hào)一直還是IgOn且沒(méi)有收到點(diǎn)火信號(hào)所在報(bào)文的Timeout標(biāo)志。

進(jìn)一步分析:點(diǎn)火信號(hào)所在報(bào)文的超時(shí)標(biāo)志是在Com模塊配置的PDU的Signal的Callout函數(shù)中置位的,也就是說(shuō)問(wèn)題發(fā)生的時(shí)候報(bào)文超時(shí)的Callout沒(méi)有被調(diào)用。

4bd74c56-34b6-11ee-9e74-dac502259ad0.png

所以該問(wèn)題的直接原因就是:IGN信號(hào)所在的報(bào)文偶發(fā)報(bào)文丟失不上報(bào)Timeout。

2.嘗試的復(fù)現(xiàn)辦法

按照上訴步驟嘗試20次復(fù)現(xiàn)問(wèn)題,無(wú)論是從ECU表現(xiàn)(ECU休眠,電流接近為0)來(lái)看還是Debug斷點(diǎn)調(diào)試(報(bào)文Timeout的Callout進(jìn)入)來(lái)看都是正常的,無(wú)法復(fù)現(xiàn)問(wèn)題……

思考:是不是下電流程或者某種機(jī)制導(dǎo)致Com的超時(shí)判斷不再運(yùn)行導(dǎo)致的,而且這個(gè)機(jī)制有效的時(shí)候正好在超時(shí)判斷之前就會(huì)導(dǎo)致這個(gè)問(wèn)題。如果是這樣的話,我們把報(bào)文的超時(shí)時(shí)間配置更大,這個(gè)問(wèn)題應(yīng)該就會(huì)必現(xiàn)。

4c0162de-34b6-11ee-9e74-dac502259ad0.png

把超時(shí)時(shí)間配置為10 S,果然這個(gè)問(wèn)題必現(xiàn)了 !

3.原因分析

Step 1: 先看下正常的ComTimeoutNotification的調(diào)用棧(方便分析是哪里出問(wèn)題導(dǎo)致的)。

4c2a8754-34b6-11ee-9e74-dac502259ad0.png

正常情況下,Com_MainFunctionRx_ComMainFunctionRx àCom_MainFunctionRxInternal àCom_RxDlMon_MainFunctionRx àCom_RxDlMon_CallTimeOutNotifications調(diào)用各個(gè)Notification

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

    關(guān)注

    7

    文章

    2613

    瀏覽量

    47012
  • CAN
    CAN
    +關(guān)注

    關(guān)注

    57

    文章

    2663

    瀏覽量

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

    關(guān)注

    14

    文章

    853

    瀏覽量

    54219
  • 報(bào)文
    +關(guān)注

    關(guān)注

    0

    文章

    34

    瀏覽量

    4004

原文標(biāo)題:AUTOSAR架構(gòu)下報(bào)文掉線超時(shí)不上報(bào)問(wèn)題分析

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

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    在STM32的CAN收發(fā)通信中,接收超時(shí)為什么不能發(fā)出一個(gè)報(bào)文的功能?

    在STM32的CAN收發(fā)通信中,當(dāng)接收超時(shí)(即在限定的時(shí)間內(nèi)仍然沒(méi)有接收到數(shù)據(jù)),發(fā)出一個(gè)報(bào)文的功能,查詢pending的返回值,為什么不能實(shí)現(xiàn)這個(gè)功能?超時(shí)沒(méi)有接收也沒(méi)能發(fā)出。 void
    發(fā)表于 03-29 07:11

    TC387從App跳回PBL在下載SBL,進(jìn)入SBL后上位機(jī)發(fā)送的CAN報(bào)文響應(yīng)超時(shí),怎么解決?

    你好,我目前實(shí)現(xiàn)了 PBL SBL 但目前的問(wèn)題是:將SBL下載到RAM區(qū)域后,通過(guò)SBL下載App正常;但從App跳回PBL在下載SBL,進(jìn)入SBL后上位機(jī)發(fā)送的CAN 報(bào)文響應(yīng)超時(shí)。我在SBL中
    發(fā)表于 05-24 08:12

    espconn_gethostbyname接口DNS解析超時(shí)機(jī)制要自己做嗎?

    espconn_gethostbyname這個(gè)接口,DNS解析超時(shí)機(jī)制要自己做嗎?,這個(gè)接口的回調(diào)函數(shù)是如何觸發(fā)的,有沒(méi)有超時(shí)觸發(fā)機(jī)制?
    發(fā)表于 07-12 12:29

    請(qǐng)問(wèn)HAL庫(kù)的超時(shí)機(jī)制可以修改嗎?

    HAL庫(kù)的超時(shí)機(jī)制,好像都是采用循環(huán)判斷的方式(如下面代碼中的紅色部分),這對(duì)于低功耗控制和程序的時(shí)序控制太不利了,如果超時(shí)比較長(zhǎng),且該段代碼在高優(yōu)先級(jí)的任務(wù)中執(zhí)行,則低優(yōu)先級(jí)的任務(wù)在這段超時(shí)
    發(fā)表于 01-30 07:15

    Linux串口通信的超時(shí)機(jī)制

    在Linux下使用串口通信時(shí),默認(rèn)的阻塞模式是不實(shí)用的。而采用select或epoll機(jī)制的非阻塞模式,寫(xiě)代碼有比較麻煩。幸好Linux的串口自己就帶有超時(shí)機(jī)制
    發(fā)表于 07-05 08:38

    為什么32個(gè)CAN設(shè)備同時(shí)每隔1秒進(jìn)行上報(bào)會(huì)出現(xiàn)有些上報(bào)不成功的現(xiàn)象呢

    大家好!最近我在調(diào)試CAN設(shè)備的時(shí)候遇到了這樣一個(gè)問(wèn)題:1、32個(gè)CAN設(shè)備上電后每隔1秒上報(bào)一次自己的狀態(tài)(需要發(fā)送兩條報(bào)文);2、用CAN分析儀接收發(fā)現(xiàn),有些設(shè)備要等很久才能發(fā)送出來(lái),有些設(shè)備
    發(fā)表于 02-10 14:16

    M482單片機(jī)只會(huì)上報(bào)FIFO的中斷,不會(huì)上報(bào)超時(shí)中斷的原因?

    設(shè)置串口接收8字節(jié)FIFO中斷RFITL并使能超時(shí)中斷RXTOIEN,當(dāng)一次只傳輸8個(gè)字節(jié)數(shù)據(jù)時(shí),單片機(jī)只會(huì)上報(bào)FIFO的中斷,不會(huì)上報(bào)超時(shí)中斷,這時(shí)就做不到通過(guò)
    發(fā)表于 06-27 12:15

    嵌入式網(wǎng)絡(luò)終端報(bào)文收發(fā)機(jī)制研究與實(shí)現(xiàn)

    本文對(duì)網(wǎng)絡(luò)終端上的報(bào)文收發(fā)機(jī)制進(jìn)行研究,提出了一種中斷結(jié)合多點(diǎn)隨機(jī)查詢的收發(fā)機(jī)制。實(shí)驗(yàn)結(jié)果證明其有效地降低了中斷頻率,同時(shí)具有高效、可靠的的報(bào)文接收能力和非
    發(fā)表于 09-11 16:50 ?17次下載

    基于公平心跳超時(shí)容錯(cuò)機(jī)制

    針對(duì)官方的Hadoop軟件中提供的節(jié)點(diǎn)心跳超時(shí)容錯(cuò)機(jī)制對(duì)短作業(yè)并不合理,而且忽略了異構(gòu)集群中各節(jié)點(diǎn)超期時(shí)間設(shè)置的公平性的問(wèn)題,提出了公平心跳超時(shí)容錯(cuò)機(jī)制。首先根據(jù)每個(gè)節(jié)點(diǎn)的可靠性及計(jì)算
    發(fā)表于 01-02 10:43 ?0次下載

    網(wǎng)絡(luò)管理報(bào)文的收/發(fā)與網(wǎng)絡(luò)管理時(shí)間配置參數(shù)解析

    Wait Bus Sleep Timer:在PBM狀態(tài),收不到網(wǎng)絡(luò)管理報(bào)文,且沒(méi)有網(wǎng)絡(luò)請(qǐng)求,該時(shí)間超時(shí)以后進(jìn)入BSM;如果收到網(wǎng)絡(luò)管理報(bào)文或者網(wǎng)絡(luò)請(qǐng)求則重新進(jìn)入RMS。
    的頭像 發(fā)表于 08-29 18:12 ?8761次閱讀
    網(wǎng)絡(luò)管理<b class='flag-5'>報(bào)文</b>的收/發(fā)與網(wǎng)絡(luò)管理時(shí)間配置參數(shù)解析

    CAN報(bào)文發(fā)送優(yōu)先級(jí)嗎?

    降低同一時(shí)刻,多個(gè)發(fā)送報(bào)文的Burst Send問(wèn)題。這個(gè)問(wèn)題屬于QA1的延申。一個(gè)節(jié)點(diǎn),發(fā)送的報(bào)文類型可以多種(QA1提到)。
    的頭像 發(fā)表于 11-15 14:34 ?6979次閱讀
    CAN<b class='flag-5'>報(bào)文</b>發(fā)送<b class='flag-5'>有</b>優(yōu)先級(jí)嗎?

    如何設(shè)計(jì)STM32嵌入式程序的超時(shí)機(jī)制

    在嵌入式軟件程序設(shè)計(jì)過(guò)程中中,經(jīng)常會(huì)遇到超時(shí)(或定時(shí))的處理情況,基本處理思想是在時(shí)間到的時(shí)候進(jìn)行相關(guān)程序處理,下面介紹兩種超時(shí)(或定時(shí))的程序設(shè)計(jì)方案。
    的頭像 發(fā)表于 06-15 17:04 ?1229次閱讀
    如何設(shè)計(jì)STM32嵌入式程序的<b class='flag-5'>超時(shí)機(jī)制</b>?

    STM32程序超時(shí)設(shè)計(jì)

    軟件超時(shí)機(jī)制 1、背景 在嵌入式軟件程序設(shè)計(jì)過(guò)程中中,經(jīng)常會(huì)遇到超時(shí)(或定時(shí))的處理情況,基本處理思想是在時(shí)間到的時(shí)候進(jìn)行相關(guān)程序處理,下面介紹兩種超時(shí)(或定時(shí))的程序設(shè)計(jì)方案。 2、方案一
    的頭像 發(fā)表于 06-22 10:52 ?1023次閱讀
    STM32程序<b class='flag-5'>超時(shí)</b>設(shè)計(jì)

    IC設(shè)計(jì):一種簡(jiǎn)單超時(shí)機(jī)制

    在設(shè)計(jì)中,為了增加異常處理能力,保證設(shè)備的正常運(yùn)行,常常需要進(jìn)行超時(shí)判斷。
    的頭像 發(fā)表于 10-19 09:37 ?375次閱讀
    IC設(shè)計(jì):一種簡(jiǎn)單<b class='flag-5'>超時(shí)機(jī)制</b>

    STM32串口中斷接收不定長(zhǎng)報(bào)文介紹

    本項(xiàng)目中,需要使用STM32的USART6串口與FPGA板(下位機(jī))通信,需要發(fā)送和接收數(shù)據(jù),報(bào)文應(yīng)答機(jī)制。
    的頭像 發(fā)表于 10-26 11:01 ?866次閱讀
    STM32串口中斷接收不定長(zhǎng)<b class='flag-5'>報(bào)文</b>介紹