一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

一文搞懂UDS的各種NRC

jf_EksNQtU6 ? 來(lái)源:嵌入式老林 ? 2024-01-20 10:01 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

01NRC介紹

當(dāng)服務(wù)端收到診斷請(qǐng)求時(shí),如果能執(zhí)行則回復(fù)肯定響應(yīng),不能執(zhí)行則回復(fù)否定響應(yīng);也有不給出響應(yīng)的情況,就是抑制正響應(yīng)(Suppress PositiveResponseMessageIndicationBit,簡(jiǎn)寫為SPRMIB),通常來(lái)說(shuō),如果這個(gè)bit被置1,則ECU不會(huì)給出正響應(yīng)(positive response)。

常用的NRC如下:

97b3dac0-b6b3-11ee-8b88-92fbcf53809c.png

這里要說(shuō)一下NRC 0x22,有些客戶要求很細(xì),會(huì)將溫度過(guò)高、溫度過(guò)低、電壓過(guò)高、電壓過(guò)低、發(fā)動(dòng)機(jī)轉(zhuǎn)速過(guò)高等都要報(bào)對(duì)應(yīng)的NRC,不在這些情況內(nèi)的條件不滿足就回復(fù)NRC 0x22,這樣的話NRC 0x22和上面的NRC優(yōu)先級(jí)就是一致的,就看哪個(gè)先滿足就先回復(fù)哪個(gè)NRC。

也有些客戶需求把溫度過(guò)高、溫度過(guò)低、電壓過(guò)高、電壓過(guò)低、發(fā)動(dòng)機(jī)轉(zhuǎn)速過(guò)高等所有的條件不滿足都?xì)w類為NRC 0x22。

02NRC回復(fù)的優(yōu)先級(jí)

不知道你們會(huì)不會(huì)經(jīng)常把NRC回復(fù)的順序搞混,總是不知道當(dāng)有多個(gè)NRC可響應(yīng)的時(shí)候,先回復(fù)哪個(gè)NRC。下面就來(lái)分享一下我的經(jīng)驗(yàn),當(dāng)然這里的NRC優(yōu)先級(jí)是參照ISO14229的,大部分車廠是也是參考這個(gè)來(lái)的,可能有個(gè)別NRC是客戶定制,這種例外的按照客戶需求來(lái)就行了。

NRC的優(yōu)先級(jí)從高到低排列:

NRC 0x11 > 0x7F > 0x13 > 0x12 > 0x7E > 0x33 > 0x24 > 0x31 > 0x22 > 0x78

1)NRC 0x11和0x7F的區(qū)別:都是服務(wù)不支持,但0x11是整個(gè)服務(wù)不支持,而0x7F是在某個(gè)會(huì)話不支持,在其他服務(wù)下是支持的。舉個(gè)例子:28服務(wù),只支持在擴(kuò)展會(huì)話下,但在默認(rèn)會(huì)話下執(zhí)行0x28服務(wù),那此時(shí)回復(fù)的NRC就是0x7F。

2)NRC 0x11和0x12的區(qū)別:0x11是服務(wù)不支持,0x12是子功能不支持。這個(gè)還是比較好理解的。舉個(gè)例子:19服務(wù)有很多子功能,假設(shè)客戶不支持0A子功能,那執(zhí)行19 0A就會(huì)回復(fù)0x12;假設(shè)客戶需求不支持23服務(wù),那執(zhí)行23服務(wù)就回復(fù)0x11,而且不管你后面?zhèn)鞯淖庸δ軈?shù)對(duì)不對(duì),長(zhǎng)度對(duì)不對(duì),都是回復(fù)0x11,因?yàn)?x11優(yōu)先級(jí)最高(看標(biāo)準(zhǔn)0x21總線繁忙的NRC優(yōu)先級(jí)是最高的,但沒怎么用過(guò))。

3)NRC 0x12和0x7E的區(qū)別:0x12是整個(gè)子功能不支持,而0x7E是在當(dāng)前會(huì)話不支持。舉個(gè)例子:19服務(wù)有很多子功能,假設(shè)客戶需求不支持0A子功能,那執(zhí)行19 0A就會(huì)回復(fù)0x12;假設(shè)10 02服務(wù)只在擴(kuò)展會(huì)話下支持,但在默認(rèn)會(huì)話下執(zhí)行了,就會(huì)回復(fù)0x7E。

4)NRC 0x7F和0x7E的區(qū)別:0x7F是當(dāng)前會(huì)話下服務(wù)不支持,0x7E是當(dāng)前會(huì)話下子功能不支持。這兩個(gè)沒啥好說(shuō)的,看具體情況,如果這兩個(gè)都支持,則回復(fù)NRC 0x7F,因?yàn)?x7F優(yōu)先級(jí)更高。

2.1 通用服務(wù)的NRC回復(fù)流程

這是ISO14229-1中的規(guī)范,這個(gè)NRC的回復(fù)優(yōu)先級(jí)適用所有沒有子功能的服務(wù)。從這個(gè)可看出回復(fù)NRC的順序?yàn)椋?x11 > 0x7F > 0x33。

mandatory:強(qiáng)制性的,也就是說(shuō)這一列的NRC必須是按這個(gè)順序來(lái)回復(fù)。

optional:可選擇的,就是不一定有,可以選擇性地由每個(gè)請(qǐng)求消息進(jìn)行評(píng)估。例如出現(xiàn)總線繁忙時(shí),就先回復(fù)NRC 0x21。

manufacture/supplier specific:車廠或主機(jī)廠規(guī)范,這是客戶要求的,有些客戶有特殊的需求,具體的按照客戶要求來(lái)做就行。

97d17b48-b6b3-11ee-8b88-92fbcf53809c.png

2.2 帶sub-function功能參數(shù)的服務(wù)

帶sub-function參數(shù)的服務(wù)回復(fù)NRC的順序,例如:$10、$11、$27、$28、$31、$85、$14、$19等

97e6a400-b6b3-11ee-8b88-92fbcf53809c.png

2.3 0x22服務(wù)回復(fù)NRC的順序

0x22服務(wù)回復(fù)NRC的順序如下圖:

1)如果請(qǐng)求的DID不是客戶支持的,要回復(fù)NRC 0x31,就不是0x12了。因?yàn)?22服務(wù)沒有子功能。

2)如果請(qǐng)求的DID在當(dāng)前會(huì)話不支持,也是回復(fù)NRC31,不是0x7E了。

總結(jié):22服務(wù)里面沒有NRC 0x12、0x7E,其他沒有子功能的服務(wù)也是如此

9805c1c8-b6b3-11ee-8b88-92fbcf53809c.png

2.4 0x2E服務(wù)回復(fù)NRC的順序

0x2E服務(wù)回復(fù)NRC的順序如下圖:

基本上和0x22服務(wù)一樣,最后多一個(gè)NRC 0x72,判斷最后把數(shù)據(jù)有沒有寫到內(nèi)存中去,寫內(nèi)存失敗了就報(bào)NRC 0x72。

98387834-b6b3-11ee-8b88-92fbcf53809c.png

2.5 0x14服務(wù)回復(fù)NRC的順序

$14服務(wù)回復(fù)NRC的順序如下圖:

984f093c-b6b3-11ee-8b88-92fbcf53809c.png

2.6 0x31服務(wù)回復(fù)NRC的順序

0x31服務(wù)的NRC回復(fù)順序如下圖:

986620fe-b6b3-11ee-8b88-92fbcf53809c.png

03物理尋址和功能尋址回復(fù)NRC

3.1 物理尋址但帶sub-function服務(wù)

分成抑制正響應(yīng)(SPRMIB = 1),沒有抑制正響應(yīng)(SPRMIB = 0)兩種情況。

1)NRC 0x31不管SPRMIB有沒有置位,在參數(shù)不對(duì)或不支持的情況下都回復(fù)NRC 0x31;

2)在SID不支持時(shí),SPRMIB沒有置位,則回復(fù)NRC 0x11或0x7F,看具體情況;但SPRMIB置位了,則一定回復(fù)NRC 0x11;

3)在sub-function不支持時(shí),SPRMIB沒有置位,則回復(fù)NRC 0x12或0x7E,看具體情況;但SPRMIB置位了,則一定回復(fù)NRC 0x12。

98a15eda-b6b3-11ee-8b88-92fbcf53809c.png

3.2 功能尋址但帶sub-function服務(wù)

功能尋址和物理尋址又有點(diǎn)不一樣了。

98c6339a-b6b3-11ee-8b88-92fbcf53809c.png

請(qǐng)求的服務(wù)是功能尋址時(shí),NRC為:服務(wù)不支持(0x11),當(dāng)前會(huì)話服務(wù)不支持(0x7F),子功能不支持(0x12),當(dāng)前會(huì)話子功能不支持(0x7E),請(qǐng)求超出范圍(0x31),不管SPRMIB是否置位,都不會(huì)回復(fù)NRC。但前提是沒有回復(fù)NRC 0x78的情況下。括號(hào)里面那句話很重要

也就是說(shuō),如果請(qǐng)求的是功能尋址,且NRC是上面5個(gè)中的任意一個(gè),假設(shè)是NRC 0x7F,但是服務(wù)端先回復(fù)了一個(gè)NRC 0x78,那么服務(wù)端最后就必須回復(fù)NRC 0x7F了。

98d9f8da-b6b3-11ee-8b88-92fbcf53809c.png

這里再講一個(gè)NRC 0x78的,原文如下:

當(dāng)NRC 0x78被使用了,服務(wù)端最終都要給一個(gè)響應(yīng)(正響應(yīng)或否定響應(yīng)),和SPRMIB的值是否置位無(wú)關(guān),和是否是功能尋址,且NRC為0x11,0x7F,0x12,0x7E,0x31無(wú)關(guān)。

簡(jiǎn)單來(lái)說(shuō)就是:

1)當(dāng)服務(wù)端回復(fù)了NRC 0x78,即使SPRMIB是置位的也要回復(fù)正響應(yīng);

2)當(dāng)服務(wù)端回復(fù)了NRC 0x78,即使發(fā)送的請(qǐng)求是功能尋址,且NRC為0x11,0x7F,0x12,0x7E,0x31,也要回復(fù)對(duì)應(yīng)的NRC

98f811a8-b6b3-11ee-8b88-92fbcf53809c.png

舉個(gè)例子:請(qǐng)求了10 02服務(wù),10 82,且服務(wù)端回復(fù)了NRC 78,那是要給正響應(yīng)的。

TX 02 10 82 00 00 00 00 00

RX 03 7F 10 78 AA AA AA AA

RX 06 50 01 00 32 01 F4 AA

3.3 物理尋址但沒有sub-function服務(wù)

不知道你們一開始看到這個(gè)表格一開始是否有個(gè)疑問(wèn),這里為啥沒有SPRMIB是否置位的區(qū)分?因?yàn)檫@些是適用沒有子功能的服務(wù)啊,沒有子功能哪來(lái)的SPRMIB。

物理尋址沒有子功能的服務(wù)請(qǐng)求,該回復(fù)正響應(yīng)的就回復(fù)正響應(yīng),回復(fù)NRC就NRC,沒有啥特殊情況。

991bd566-b6b3-11ee-8b88-92fbcf53809c.png

3.4 功能尋址但沒有sub-function服務(wù)

功能尋址沒有子功能的服務(wù)請(qǐng)求時(shí),服務(wù)不支持,參數(shù)不對(duì),都不回復(fù)NRC,即無(wú)響應(yīng)。

992d0f52-b6b3-11ee-8b88-92fbcf53809c.png

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(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)投訴
  • 發(fā)動(dòng)機(jī)

    關(guān)注

    33

    文章

    2545

    瀏覽量

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

    關(guān)注

    14

    文章

    934

    瀏覽量

    55835
  • 服務(wù)端
    +關(guān)注

    關(guān)注

    0

    文章

    68

    瀏覽量

    7249

原文標(biāo)題:一文搞懂UDS的各種NRC

文章出處:【微信號(hào):談思實(shí)驗(yàn)室,微信公眾號(hào):談思實(shí)驗(yàn)室】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    升壓電路搞懂 升壓電路技術(shù)文檔合集

    升壓電路圖集合,升壓電路設(shè)計(jì)方案,電路設(shè)計(jì)技巧,升壓電路搞懂;給大家分享 升壓電路技術(shù)文檔合集
    的頭像 發(fā)表于 05-15 15:58 ?5461次閱讀
    升壓電路<b class='flag-5'>一</b><b class='flag-5'>文</b><b class='flag-5'>搞懂</b> 升壓電路技術(shù)文檔合集

    Labview 基于CAN UDS燒錄Hex文件

    本帖最后由 xu391600076 于 2021-8-11 13:18 編輯 1. Hex文件讀取解析并計(jì)算CRC-32校驗(yàn)碼2. UDS服務(wù)通訊3. UDS刷寫邏輯過(guò)程復(fù)制下面這段話,打開閑
    發(fā)表于 08-11 11:41

    UDS診斷命令備忘錄

    UDS實(shí)踐性強(qiáng),邏輯復(fù)雜,很多服務(wù)非要體驗(yàn)過(guò)次才能理解,導(dǎo)致包括我在內(nèi)的初學(xué)者感覺晦澀難懂,不明覺厲,因此將自己的理解寫下來(lái)、整理下來(lái),與君共勉。零、UDS診斷命令備忘錄、簡(jiǎn)介
    發(fā)表于 08-26 16:09

    搞懂UPS主要內(nèi)容

    導(dǎo)讀:UPS是系統(tǒng)集成項(xiàng)目中常用到的設(shè)備,也是機(jī)房必備的設(shè)備。本文簡(jiǎn)單介紹了UPS的種類、功能、原理,品質(zhì)選擇與配置選擇方式,基礎(chǔ)維護(hù)等相關(guān)的內(nèi)容。搞懂UPS本文主要內(nèi)容:UPS種類、功能
    發(fā)表于 09-15 07:49

    搞懂開關(guān)電源波紋的產(chǎn)生

    參考搞懂開關(guān)電源波紋的產(chǎn)生、測(cè)量及抑制開關(guān)電源紋波的產(chǎn)生上圖是開關(guān)電源中最簡(jiǎn)單的拓?fù)浣Y(jié)構(gòu)-buck降壓型電源。隨著SWITCH的開關(guān),電感L中的電流也是在輸出電流的有效值上下波動(dòng)的。所以在輸出端
    發(fā)表于 12-30 08:31

    STM32 Bootloader UDS技術(shù)要點(diǎn)是什么?

    STM32 Bootloader UDS技術(shù)要點(diǎn)是什么?
    發(fā)表于 02-11 07:26

    OBDII與UDS的區(qū)別是什么

    PrimaryECU在已經(jīng)開發(fā)完UDS診斷的基礎(chǔ)上增加OBD II診斷、OBD II與UDS的區(qū)別?這里主要介紹在診斷開發(fā)上面OBD II與UDS的區(qū)別,此外為了方便描述,下文中用O
    發(fā)表于 02-23 06:55

    搞懂幾種常見的射頻電路類型及主要指標(biāo)

    搞懂幾種常見的射頻電路類型及主要指標(biāo)。
    發(fā)表于 07-27 10:26 ?9次下載
    <b class='flag-5'>一</b><b class='flag-5'>文</b><b class='flag-5'>搞懂</b>幾種常見的射頻電路類型及主要指標(biāo)

    看懂UDS協(xié)議棧中的時(shí)間參數(shù)

      UDS 協(xié)議是道路車輛通用診斷規(guī)范的簡(jiǎn)稱,目前主要應(yīng)用在商用車電氣零部件系統(tǒng)中,各個(gè)電氣子系統(tǒng)基于該協(xié)議與外部診斷設(shè)備進(jìn)行數(shù)據(jù)交互,從而實(shí)現(xiàn)程序更新、故障讀取等功能。完整的協(xié)議棧包含了多個(gè)
    發(fā)表于 04-02 17:12 ?1次下載

    UDS基礎(chǔ)知識(shí)介紹

    UDS(Unified Diagnostic Services 統(tǒng)的診斷服務(wù))是種通用的診斷服務(wù)標(biāo)準(zhǔn),用于汽車電子控制單元(ECU)的診斷和調(diào)試。
    的頭像 發(fā)表于 05-30 10:57 ?1.5w次閱讀
    <b class='flag-5'>UDS</b>基礎(chǔ)知識(shí)介紹

    UDS常用診斷服務(wù)

    UDS診斷包括6大類,26種服務(wù),每種服務(wù)都有自己獨(dú)立的ID,即SID(Service Identifier) 常見NRC碼 什么是NRC?
    的頭像 發(fā)表于 06-12 10:36 ?2.1w次閱讀
    <b class='flag-5'>UDS</b>常用診斷服務(wù)

    搞懂配線架相關(guān)知識(shí)

    配線架在綜合布線中起到整理各類線纜的作用,不光能提供個(gè)整潔的環(huán)境,對(duì)于線纜的壽命和效果也是很有幫助的,下面就跟著科蘭通訊小編一起來(lái)搞懂配線架相關(guān)知識(shí)。 配線架套什么定額 配線架套用綜合布線中的機(jī)柜
    的頭像 發(fā)表于 08-04 10:02 ?1958次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>文</b><b class='flag-5'>搞懂</b>配線架相關(guān)知識(shí)

    汽車UDS協(xié)議棧與XCP協(xié)議棧

    UDS協(xié)議棧 汽車UDS協(xié)議棧是種用于汽車電子控制單元(ECU)之間進(jìn)行診斷和通信的標(biāo)準(zhǔn)協(xié)議。UDS(Unified Diagnostic Services)協(xié)議定義了
    的頭像 發(fā)表于 10-27 16:35 ?5312次閱讀
    汽車<b class='flag-5'>UDS</b>協(xié)議棧與XCP協(xié)議棧

    UDS之29服務(wù):認(rèn)證服務(wù)

    汽車工業(yè)的很多領(lǐng)域都有嚴(yán)格的國(guó)際標(biāo)準(zhǔn),其中針對(duì)車載診斷的ISO14229規(guī)定了車載診斷服務(wù)的通用需求(UDS),UDS主要應(yīng)用于OSI模型的應(yīng)用層,UDS協(xié)議根據(jù)功能的不同定義了26種診斷服務(wù)
    的頭像 發(fā)表于 11-30 08:24 ?2975次閱讀
    <b class='flag-5'>UDS</b>之29服務(wù):認(rèn)證服務(wù)

    盟通方案|如何集成UDS協(xié)議

    UDS診斷協(xié)議廣泛應(yīng)用于汽車、重卡等領(lǐng)域的設(shè)備診斷和固件更新。該協(xié)議主要針對(duì)全車ECU進(jìn)行標(biāo)準(zhǔn)化的數(shù)據(jù)交互。UDS應(yīng)用層?(ISO14229-1)定義了6大類共26項(xiàng)診斷服務(wù),覆蓋了ECU開發(fā)功能
    的頭像 發(fā)表于 06-06 14:06 ?209次閱讀
    盟通方案|如何集成<b class='flag-5'>UDS</b>協(xié)議