91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

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

冬至配餃子 ? 來源:開心果 Need Car ? 作者:開心果 Need Car ? 2022-08-23 11:39 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

前言

在AUTOSAR中,Ecu的喚醒流程并不能簡單的看作是對各個外設(shè)模塊的供電動作。Autosar給了軟件開發(fā)人員很大的自由度去設(shè)計(jì)目標(biāo)項(xiàng)目Ecu的喚醒動作,而自由度越大的代價就是開發(fā)人員需要很好的設(shè)計(jì)Ecu的喚醒時序,提供Ecu喚醒過程的魯棒性。

喚醒源的狀態(tài)

在EcuM中規(guī)定了喚醒源的4中狀態(tài):NONE、PENDING、VALIDATED、EXPIRED。四種狀態(tài)關(guān)系的切換關(guān)系如下所示:

poYBAGMES7WAJoCFAADeSJyKHwM989.png

當(dāng)Ecu上電時,喚醒源的初始狀態(tài)是NONE,當(dāng)喚醒源狀態(tài)切換到NONE時,需要通知到BswM模塊,上圖也可以看出,喚醒源的每次狀態(tài)切換都需要通知到BswM模塊,通知接口:BswM_EcuM_CurrentWakeup。

EcuM是如何知道有喚醒事件呢?EcuM如果想知道有喚醒Ecu的事件,最好的方式就是給底層提供一個接口或者注冊一個回調(diào),Autosar里規(guī)定了標(biāo)準(zhǔn)接口:EcuM_SetWakeupEvent。當(dāng)有喚醒事件發(fā)生時,底層的硬件模塊(例如:Transceiver、Sensor)最先識別到,之后通過該接口上報(bào)給EcuM。

EcuM主函數(shù)會輪詢檢測底層上報(bào)的喚醒事件,如果想進(jìn)一步的分析喚醒事件是不是有效的總線喚醒源(網(wǎng)絡(luò)管理報(bào)文),需要Ecu有正常的收發(fā)報(bào)文能力,想要收發(fā)報(bào)文,Transceiver和Controller兩個模塊均需要啟動。一般來講,Transceiver會在程序初始化時進(jìn)入正常的工作模式,而Controller進(jìn)入正常的工作模式是EcuM調(diào)用EcuM_StartWakeupSources的結(jié)果,而該接口的內(nèi)部功能的實(shí)現(xiàn)由開發(fā)者自行把控,autosar并未做硬性的要求。

啟動Transceiver和Controller,建立了報(bào)文的正常收發(fā)能力,Ecu即可進(jìn)一步的將報(bào)文上報(bào)上層模塊,如:CanIf,即此時Ecu可以拿到總線的RawData,不管是不是網(wǎng)絡(luò)管理報(bào)文,Ecu都可以做進(jìn)一步的功能實(shí)現(xiàn),如收到診斷報(bào)文喚醒網(wǎng)絡(luò)等。

一般來說,會在EcuM模塊配置兩個時間參數(shù),CheckWakeup和ValidateWakeup時間,如果CheckWakeup時間走完走完沒有判斷到有效的喚醒源,則調(diào)用EcuM_StopWakeupSources關(guān)閉喚醒源,這里多數(shù)關(guān)閉controller,進(jìn)而Ecu失去通信能力。

ValidateWakeup時間參數(shù)配置與否決定了是否使用喚醒事件的驗(yàn)證功能,如果配置該參數(shù),且驗(yàn)證喚醒事件有效后則通知ComM使能通信,調(diào)用ComM接口:ComM_EcuM_WakeupIndication。如果該參數(shù)沒有配置,則EcuM不在繞圈,直接通知BswM喚醒事件有效,通知ComM開啟通信。個人理解:該參數(shù)配置較合理。

第一:可以驗(yàn)證喚醒事件的有效性,避免因總線抖動等干擾造成的非預(yù)期Ecu喚醒;

第二:如果使用的Transceiver沒有Pn功能,Ecu會因總線的擾動而不斷的喚醒,假設(shè)總線有應(yīng)用報(bào)文沒有網(wǎng)絡(luò)管理報(bào)文,ValidateWakeup時間給0,Ecu將會不斷的走上下電流程,如果下電選擇OFF流程(實(shí)際項(xiàng)目中很多開發(fā)人員沒有開啟Reset流程的Operation,即直接冷啟動,這不符合autosar規(guī)范,也不安全),將會帶來未知問題(如果Ecu內(nèi)核有一定時間內(nèi)喚醒次數(shù)限制,超過閾值則可能上鎖保護(hù)),設(shè)置該參數(shù)可以有效的延遲Ecu喚醒頻率。


審核編輯:劉清

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

    關(guān)注

    33

    文章

    9520

    瀏覽量

    157021
  • 總線
    +關(guān)注

    關(guān)注

    10

    文章

    3040

    瀏覽量

    91660
  • AUTOSAR
    +關(guān)注

    關(guān)注

    10

    文章

    398

    瀏覽量

    23649
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    為什么串口接收數(shù)據(jù)就會觸發(fā)中斷?

    為什么串口接收數(shù)據(jù)就會觸發(fā)中斷? 串口接收喚醒機(jī)制哪些注意事項(xiàng)?
    發(fā)表于 01-08 06:45

    請問低功耗喚醒的常用方式哪些?

    低功耗喚醒的常用方式哪些?
    發(fā)表于 01-05 06:02

    請問CW32微控制器是否具備低功耗模式以及具體的喚醒哪些?

    CW32微控制器是否具備低功耗模式以及具體的喚醒哪些?
    發(fā)表于 12-16 08:06

    什么是自動喚醒定時器

    CW32F030 內(nèi)部集成 1 個自動喚醒定時器 (AWT),AWT 包含一個 16bit 向下計(jì)數(shù)器,并由一個可編程預(yù)分頻器驅(qū)動。AWT 可選 5 種計(jì)數(shù)時鐘源,可工作于定時模式或計(jì)數(shù)模式。當(dāng)
    發(fā)表于 12-11 07:24

    請問外部事件立即喚醒MCU如何設(shè)置?

    應(yīng)用中外部事件如按鈕按下、傳感器檢測到特定信號等需要立即喚醒MCU。該如何設(shè)置外部中斷?怎么能在低功耗模式下仍然可靠觸發(fā)喚醒?
    發(fā)表于 12-04 06:56

    系統(tǒng)從DeepSleep下喚醒時鐘默認(rèn)為原時鐘,如果原時鐘頻率特別高,是否存在啟動不穩(wěn)定問題?

    1.系統(tǒng)從DeepSleep下喚醒時鐘默認(rèn)為原時鐘,如果原時鐘頻率特別高,是否存在啟動不穩(wěn)定問題?這個地方目前有沒有需要特別注意的地方? 2. 一個獨(dú)立看門狗,正常初始化啟動IWDT,并且配置
    發(fā)表于 11-28 07:36

    請問如何合理設(shè)置這些喚醒條件?

    CW32A030 MCU支持從Sleep和DeepSleep模式通過外部中斷或?qū)崟r時鐘喚醒。如何合理設(shè)置這些喚醒條件,以實(shí)現(xiàn)最佳的功耗和響應(yīng)速度平衡
    發(fā)表于 11-26 06:59

    MCU典型的睡眠喚醒時間delay的概念

    (此處可知MCU內(nèi)部看門狗是可以使用LPRC低頻時鐘在睡眠模式下運(yùn)行),亦或者外部復(fù)位或者內(nèi)部復(fù)位事件發(fā)生等,這個現(xiàn)象就是喚醒事件。 這里一個特殊情況需要注意,當(dāng)中斷和低功耗模式指令同時發(fā)生時,那么
    發(fā)表于 11-25 08:03

    AT32F系列 PWC待機(jī)喚醒喚醒Standby

    AT32F系列 PWC待機(jī)喚醒喚醒Standby 示例目的 演示AT32F系列 PWC待機(jī)喚醒喚醒Standby的使用方法。待機(jī)喚醒
    發(fā)表于 11-05 14:08

    SI3933低頻喚醒接收芯片概述與主要特性

    SI3933是一款三通道低功耗ASK接收機(jī)芯片,專為15kHz-150kHz低頻載波頻率檢測而設(shè)計(jì)。這款芯片的主要功能是檢測低頻數(shù)字信號并產(chǎn)生喚醒信號,廣泛應(yīng)用于各種無線喚醒場景。 SI3933
    的頭像 發(fā)表于 10-13 09:27 ?252次閱讀
    SI3933低頻<b class='flag-5'>喚醒</b>接收芯片概述與主要特性

    pm組件進(jìn)入低功耗不能喚醒是怎么回事?

    (進(jìn)入低功耗前是20mA左右),但是現(xiàn)在lptime沒有喚醒。源碼里的程序是哪些需要修改的嗎?還是配置沒配置對?有知道的大佬,麻煩指導(dǎo)一下。
    發(fā)表于 09-12 06:04

    CST92F定時喚醒功能

    CST92F25寄存器操作說明書嗎?RTC怎配置定時喚醒功能?
    發(fā)表于 07-15 16:07

    求助,關(guān)于TLE9893 從stop模式喚醒問題求解

    我正在使用 TLE9893 的STOP模式以降低功耗,靠外部電平信號喚醒,希望2ms內(nèi)能轉(zhuǎn)到Active模式,然后接收外部數(shù)據(jù)。我嘗試了兩種方案,好像都不正常。 一種是用P2端口下降沿信號,喚醒失敗
    發(fā)表于 07-14 07:39

    FS26和S32K3可以正常喚醒,當(dāng)添加與SJA1110的通信時,喚醒過程會卡在斷言錯誤處,為什么?

    FS26 和 S32K3 可以正常喚醒,但當(dāng)添加與 SJA1110 的通信時,喚醒過程會卡在斷言錯誤處: "GMAC_DEV_ASSERT((Bd-&gt;Des3
    發(fā)表于 04-14 08:02

    L9300無法喚醒是怎么回事?

    L9300無法喚醒,wake接5V到12V都試過,還是無法喚醒,VCP、Vdd1等電壓不正常。
    發(fā)表于 03-12 07:44