色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

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

摳幾個(gè)CanNM網(wǎng)絡(luò)狀態(tài)機(jī)的細(xì)節(jié)

冬至配餃子 ? 來源:開心果 Need Car ? 作者:開心果 Need Car ? 2022-08-26 17:30 ? 次閱讀

先回答標(biāo)題問題:“對(duì)我自己而言,沒有”。有時(shí)我自己會(huì)有這樣的感受,Autosar的某些規(guī)范即使看了很多遍,工程上也碰到了些問題,但是每次再去讀,發(fā)現(xiàn):依然有些東西是不清晰的。本文就CanNM的網(wǎng)絡(luò)狀態(tài)機(jī),再和大家摳幾個(gè)細(xì)節(jié),希望對(duì)你有用!

1、CanNmPnHandleMultipleNetworkRequests 作用

如果項(xiàng)目中,網(wǎng)絡(luò)管理不用PN(Partial Network)功能,可能不太會(huì)關(guān)注CanNmPnHandleMultipleNetworkRequests。先看一下Autosar規(guī)范給出的解釋:Specifies if CanNm performs an additional transition from Network Mode to Repeat Message State (true) or not (false).

也就是說,該參數(shù)使能與否決定著節(jié)點(diǎn)網(wǎng)絡(luò)狀態(tài)是否可以切換到RMS(Repeat Message State)。從哪種狀態(tài)切換到RMS狀態(tài)呢?

pYYBAGMIkbWARvleAAFUb91givM875.png

由上圖可以看出,使用CanNmPnHandleMultipleNetworkRequests參數(shù)時(shí),均與CanNm_NetworkRequest()接口的調(diào)用相關(guān),主要有兩個(gè)地方會(huì)判斷該參數(shù)的使能情況。

位置 1

如果節(jié)點(diǎn)的網(wǎng)絡(luò)狀態(tài)在RSS(Ready Sleep State),調(diào)用CanNm_NetworkRequest()接口請(qǐng)求網(wǎng)絡(luò)時(shí),能否進(jìn)入NOS(Normal Operation State)取決于CanNmPnHandleMultipleNetworkRequests的使能情況:

CanNmPnHandleMultipleNetworkRequests = FALSE,節(jié)點(diǎn)網(wǎng)絡(luò)狀態(tài)由RSS切換到NOS;

CanNmPnHandleMultipleNetworkRequests = TRUE,節(jié)點(diǎn)網(wǎng)絡(luò)狀態(tài)由RSS切換到RMS。

為什么CanNmPnHandleMultipleNetworkRequests = TRUE,網(wǎng)絡(luò)狀態(tài)需要切換到RMS狀態(tài)呢?先看Autosar規(guī)范給的解釋:

poYBAGMIkcqAV8i4AADTjYNDxvc524.png

CanNmPnHandleMultipleNetworkRequests 的使能,我們需要先意識(shí)到一個(gè)前提:

PN的使能,即:CanNmPnEnabled == true。使用PN功能,意味著每個(gè)節(jié)點(diǎn)會(huì)關(guān)聯(lián)對(duì)應(yīng)的PNC,只有接收到的PNC和節(jié)點(diǎn)相關(guān),節(jié)點(diǎn)網(wǎng)絡(luò)才能喚醒。如下圖,假設(shè)某CAN BUS上有ECU1、ECU2、ECU3三個(gè)節(jié)點(diǎn),ECU1關(guān)聯(lián)PNC 16和PNC17,ECU2關(guān)聯(lián)PNC 16,ECU3關(guān)聯(lián)PNC 17。

pYYBAGMIkdyAHrWoAABU0xyg8G4851.png

假設(shè):

t0時(shí)刻,只有ECU1和ECU2在通信,即:NM Msg只包含PNC16,且ECU1進(jìn)入RSS狀態(tài),ECU2在NOS狀態(tài),ECU3未有喚醒(處于BSM);

t1時(shí)刻,由于ECU1上層主動(dòng)請(qǐng)求網(wǎng)絡(luò),ECU1需要喚醒ECU3參與通信,主動(dòng)調(diào)用CanNm_NetworkRequest()接口請(qǐng)求網(wǎng)絡(luò)(比如:對(duì)應(yīng)的PNC17的VFC置位),同時(shí)發(fā)送的NM Msg中包含PNC 17。ECU3收到包含PNC17的NM Msg以后,網(wǎng)絡(luò)狀態(tài)由BSM進(jìn)入RMS狀態(tài),為了保證三個(gè)節(jié)點(diǎn)在同一網(wǎng)絡(luò)狀態(tài),因此,ECU1需要從RSS狀態(tài)切換到RMS狀態(tài),同時(shí),ECU1發(fā)送的NM Msg中,Repeat Message Request Bit = 1,將ECU2由NOS狀態(tài)也拉回RMS狀態(tài),以此確保三個(gè)節(jié)點(diǎn)在相同的網(wǎng)絡(luò)狀態(tài)。不理解RMR Bit作用,可以參考前文勘誤篇(一):Autosar網(wǎng)絡(luò)管理:RepeatMessageRequestBit作用,你清楚嗎?;

t2時(shí)刻,Repeat Message Timer超時(shí),三者脫離RMS狀態(tài),ECU1、ECU2、ECU3進(jìn)入NOS狀態(tài)。上述過程如下所示:

poYBAGMIkfGAJugOAACGb5no9oc473.png

位置 2

此處說明,只要在NM(Network Mode)模式下調(diào)用

CanNm_NetworkRequest()接口,且CanNmPnHandleMultipleNetworkRequests ==TRUE,網(wǎng)絡(luò)狀態(tài)需要切換到RMS狀態(tài),且重啟Repeat Message Timer。分析同上,此處不再贅述。舉例說明PNC請(qǐng)求與Channel NM Status關(guān)系:

poYBAGMIkgaAVrYTAABzSQVQhIo759.png

t0時(shí)刻,PNC #n保持請(qǐng)求(PNC #n = 1),假設(shè)PNC #n映射的Channel網(wǎng)絡(luò)狀態(tài)為NOS;

t1時(shí)刻,PnResetTime(2.95s)內(nèi)收到PNC #n = 0(或者沒有收到),PNC #n釋放;

t2時(shí)刻,PNC#n再次請(qǐng)求,PNC #n映射的Channel網(wǎng)絡(luò)狀態(tài)由NOS進(jìn)入RMS;

t3時(shí)刻,PNC#n保持請(qǐng)求,Channel由RMS進(jìn)入NOS狀態(tài);

t4時(shí)刻,2.95s時(shí)間內(nèi)沒有PNC#n請(qǐng)求,PNC#n釋放,Channel保持NOS狀態(tài);

t5時(shí)刻,PNC#n再次請(qǐng)求,同t2時(shí)刻。

2、網(wǎng)絡(luò)啟動(dòng),第一幀是否應(yīng)該是網(wǎng)絡(luò)管理報(bào)文?

從網(wǎng)絡(luò)狀態(tài)機(jī)可以看出,CanNm_PassiveStartup()、CanNm_RxIndication()、CanNm_NetworkRequest()接口的調(diào)用均可將節(jié)點(diǎn)網(wǎng)絡(luò)狀態(tài)切換到RMS。

CanNm_NetworkRequest():調(diào)用此接口,說明節(jié)點(diǎn)需要主動(dòng)喚醒網(wǎng)絡(luò),如果此節(jié)點(diǎn)由BSM、PBSM模式進(jìn)入RMS狀態(tài),

第一幀報(bào)文需要是網(wǎng)絡(luò)管理報(bào)文,快速將網(wǎng)段內(nèi)其他節(jié)點(diǎn)喚醒;

CanNm_PassiveStartup()、CanNm_RxIndication():調(diào)用這兩個(gè)接口,個(gè)人理解:

第一幀報(bào)文沒有必要是網(wǎng)絡(luò)管理報(bào)文,因?yàn)榭偩€上已經(jīng)有網(wǎng)絡(luò)管理報(bào)文在發(fā)送,說明有主動(dòng)網(wǎng)絡(luò)節(jié)點(diǎn)發(fā)送了網(wǎng)絡(luò)管理報(bào)文,承擔(dān)著快速喚醒網(wǎng)絡(luò)的“重任”,所以接收節(jié)點(diǎn)無需保證第一幀報(bào)文是網(wǎng)絡(luò)管理報(bào)文,接收節(jié)點(diǎn)需要做的是把應(yīng)用報(bào)文快速發(fā)出,保證功能的快速使能。

3、CanNmMsgCycleOffset的使用場(chǎng)景

網(wǎng)絡(luò)喚醒時(shí),各主動(dòng)網(wǎng)絡(luò)節(jié)點(diǎn)均發(fā)送各自的NM Msg,會(huì)增加總線負(fù)載,為了降低網(wǎng)絡(luò)喚醒時(shí)的總線負(fù)載,會(huì)為每個(gè)主動(dòng)網(wǎng)絡(luò)節(jié)點(diǎn)設(shè)置一個(gè)Offset值,比如:CanNmMsgCycleOffset。CanNmMsgCycleOffset的使能需要注意:使能快發(fā)模式時(shí),CanNmMsgCycleOffset不適用,需要注意的其他條件,Autosar也給出了其他解釋,如下所示:

CASE 1:

pYYBAGMIkh2AYbFtAADYSWj5xLQ295.png

CASE 2:

poYBAGMIkjGAW3HoAADjR-vvyPw243.png

注意:

C

anNmMsgCycleOffset是發(fā)出第一幀網(wǎng)絡(luò)管理報(bào)文時(shí)的偏移值,即滿足NM Msg發(fā)送時(shí),第一次發(fā)送NM Msg時(shí)的偏移。


審核編輯:劉清

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

    關(guān)注

    2

    文章

    139

    瀏覽量

    35867
  • 狀態(tài)機(jī)
    +關(guān)注

    關(guān)注

    2

    文章

    492

    瀏覽量

    27615
  • Nos
    Nos
    +關(guān)注

    關(guān)注

    0

    文章

    3

    瀏覽量

    7332
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    Verilog狀態(tài)機(jī)+設(shè)計(jì)實(shí)例

    在verilog中狀態(tài)機(jī)的一種很常用的邏輯結(jié)構(gòu),學(xué)習(xí)和理解狀態(tài)機(jī)的運(yùn)行規(guī)律能夠幫助我們更好地書寫代碼,同時(shí)作為一種思想方法,在別的代碼設(shè)計(jì)中也會(huì)有所幫助。 一、簡(jiǎn)介 在使用過程中我們常說
    的頭像 發(fā)表于 02-12 19:07 ?4307次閱讀
    Verilog<b class='flag-5'>狀態(tài)機(jī)</b>+設(shè)計(jì)實(shí)例

    狀態(tài)機(jī)是什么?什么是消息觸發(fā)類型的狀態(tài)機(jī)

    狀態(tài)機(jī)可歸納為哪幾個(gè)要素?狀態(tài)機(jī)可分為哪幾種?什么是消息觸發(fā)類型的狀態(tài)機(jī)
    發(fā)表于 04-19 06:02

    如何寫好狀態(tài)機(jī)

    如何寫好狀態(tài)機(jī):狀態(tài)機(jī)是邏輯設(shè)計(jì)的重要內(nèi)容,狀態(tài)機(jī)的設(shè)計(jì)水平直接反應(yīng)工程師的邏輯功底,所以許多公司的硬件和邏輯工程師面試中,狀態(tài)機(jī)設(shè)計(jì)幾乎是必選題目。本章在引入
    發(fā)表于 06-14 19:24 ?97次下載

    狀態(tài)機(jī)舉例

    狀態(tài)機(jī)舉例 你可以指定狀態(tài)寄存器和狀態(tài)機(jī)狀態(tài)。以下是一個(gè)有四種狀態(tài)的普通狀態(tài)機(jī)。 // Th
    發(fā)表于 03-28 15:18 ?994次閱讀

    狀態(tài)機(jī)代碼生成工具

    狀態(tài)機(jī)代碼生成工具狀態(tài)機(jī)代碼生成工具狀態(tài)機(jī)代碼生成工具狀態(tài)機(jī)代碼生成工具
    發(fā)表于 11-19 15:12 ?9次下載

    狀態(tài)機(jī)原理及用法

    狀態(tài)機(jī)原理及用法狀態(tài)機(jī)原理及用法狀態(tài)機(jī)原理及用法
    發(fā)表于 03-15 15:25 ?0次下載

    簡(jiǎn)述使用QII狀態(tài)機(jī)向?qū)绾蝿?chuàng)建一個(gè)狀態(tài)機(jī)

    如何使用QII狀態(tài)機(jī)向?qū)?chuàng)建一個(gè)狀態(tài)機(jī)
    的頭像 發(fā)表于 06-20 00:11 ?4260次閱讀
    簡(jiǎn)述使用QII<b class='flag-5'>狀態(tài)機(jī)</b>向?qū)绾蝿?chuàng)建一個(gè)<b class='flag-5'>狀態(tài)機(jī)</b>

    狀態(tài)機(jī)概述 如何理解狀態(tài)機(jī)

    本篇文章包括狀態(tài)機(jī)的基本概述以及通過簡(jiǎn)單的實(shí)例理解狀態(tài)機(jī)
    的頭像 發(fā)表于 01-02 18:03 ?1.1w次閱讀
    <b class='flag-5'>狀態(tài)機(jī)</b>概述  如何理解<b class='flag-5'>狀態(tài)機(jī)</b>

    什么是狀態(tài)機(jī) 狀態(tài)機(jī)的描述三種方法

    狀態(tài)機(jī) 1、狀態(tài)機(jī)是許多數(shù)字系統(tǒng)的核心部件,是一類重要的時(shí)序邏輯電路。通常包括三個(gè)部分:一是下一個(gè)狀態(tài)的邏輯電路,二是存儲(chǔ)狀態(tài)機(jī)當(dāng)前狀態(tài)的時(shí)
    的頭像 發(fā)表于 11-16 17:39 ?2.7w次閱讀

    FPGA:狀態(tài)機(jī)簡(jiǎn)述

    本文目錄 前言 狀態(tài)機(jī)簡(jiǎn)介 狀態(tài)機(jī)分類 Mealy 型狀態(tài)機(jī) Moore 型狀態(tài)機(jī) 狀態(tài)機(jī)描述 一段式
    的頭像 發(fā)表于 11-05 17:58 ?7512次閱讀
    FPGA:<b class='flag-5'>狀態(tài)機(jī)</b>簡(jiǎn)述

    什么是狀態(tài)機(jī)狀態(tài)機(jī)5要素

    玩單片機(jī)還可以,各個(gè)外設(shè)也都會(huì)驅(qū)動(dòng),但是如果讓你完整的寫一套代碼時(shí),卻無邏輯與框架可言。這說明編程還處于比較低的水平,你需要學(xué)會(huì)一種好的編程框架或者一種編程思想!比如模塊化編程、狀態(tài)機(jī)編程、分層思想
    的頭像 發(fā)表于 07-27 11:23 ?2.1w次閱讀
    什么是<b class='flag-5'>狀態(tài)機(jī)</b>?<b class='flag-5'>狀態(tài)機(jī)</b>5要素

    狀態(tài)模式(狀態(tài)機(jī))

    以前寫狀態(tài)機(jī),比較常用的方式是用 if-else 或 switch-case,高級(jí)的一點(diǎn)是函數(shù)指針列表。最近,看了一文章《c語言設(shè)計(jì)模式–狀態(tài)模式(狀態(tài)機(jī))》(來源:embed linux
    發(fā)表于 12-16 16:53 ?9次下載
    <b class='flag-5'>狀態(tài)</b>模式(<b class='flag-5'>狀態(tài)機(jī)</b>)

    從零開始的狀態(tài)機(jī)漫談(1)——萬物之始的語言

    也許從12年前我第一次開始分享狀態(tài)機(jī)編寫心得開始,“狀態(tài)機(jī)”就像標(biāo)簽一樣緊緊的貼在了“傻孩子”這個(gè)網(wǎng)絡(luò)昵稱的額頭上——真是都扣不下來...
    發(fā)表于 01-26 19:36 ?2次下載
    從零開始的<b class='flag-5'>狀態(tài)機(jī)</b>漫談(1)——萬物之始的語言

    labview狀態(tài)機(jī)分享

    labview狀態(tài)機(jī)
    發(fā)表于 10-31 15:50 ?15次下載

    什么是狀態(tài)機(jī)狀態(tài)機(jī)的種類與實(shí)現(xiàn)

    狀態(tài)機(jī),又稱有限狀態(tài)機(jī)(Finite State Machine,F(xiàn)SM)或米利狀態(tài)機(jī)(Mealy Machine),是一種描述系統(tǒng)狀態(tài)變化的模型。在芯片設(shè)計(jì)中,
    的頭像 發(fā)表于 10-19 10:27 ?9919次閱讀
    主站蜘蛛池模板: 九九久久久| 亚洲中文字幕乱码熟女在线| 热99RE久久精品国产| 亚洲成人欧美| 18video性欧美19sex高清| 日产精品久久久久久久蜜殿| 男人一生要读的书| 久久ZYZ资源站无码中文动漫| 欧美大jiji| 日日夜夜影院在线播放| 一本道手机无码在线看| 国产精品第1页| 国产国拍精品AV在线观看| 美女激清床上戏大全| 老子午夜伦不卡电影院| 欧美性色xo影院69| 与邻居换娶妻子2在线观看| 国产精品久人妻精品| 日本无修肉动漫在线观看| 97视频在线免费播放| 久久www成人看片| 亚洲 欧美 日韩 卡通 另类| 成人无码精品一区二区在线观看| 纯肉高H放荡受BL文库| 国产成人在线播放视频| 狠狠干福利视频| 榴莲推广APP网站入口官网| 亚洲国产高清福利视频| 国产九色在线| 美女全光末满18勿进| 日日摸夜夜嗷嗷叫日日拍| 24小时日本在线观看片| 国产99九九久久无码熟妇| 精品亚洲大全| 亚洲国产成人精品无码区99| 国产午夜精AV在线麻豆| 亚洲 在线 日韩 欧美| 国产露脸150部国语对白| 午夜射精日本三级| 99re久久超碰视频精品| 乐乐亚洲精品综合影院|