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

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

一文搞懂UDS的各種NRC

jf_EksNQtU6 ? 來源:嵌入式老林 ? 2024-01-20 10:01 ? 次閱讀

01NRC介紹

當服務端收到診斷請求時,如果能執行則回復肯定響應,不能執行則回復否定響應;也有不給出響應的情況,就是抑制正響應(Suppress PositiveResponseMessageIndicationBit,簡寫為SPRMIB),通常來說,如果這個bit被置1,則ECU不會給出正響應(positive response)。

常用的NRC如下:

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

這里要說一下NRC 0x22,有些客戶要求很細,會將溫度過高、溫度過低、電壓過高、電壓過低、發動機轉速過高等都要報對應的NRC,不在這些情況內的條件不滿足就回復NRC 0x22,這樣的話NRC 0x22和上面的NRC優先級就是一致的,就看哪個先滿足就先回復哪個NRC。

也有些客戶需求把溫度過高、溫度過低、電壓過高、電壓過低、發動機轉速過高等所有的條件不滿足都歸類為NRC 0x22。

02NRC回復的優先級

不知道你們會不會經常把NRC回復的順序搞混,總是不知道當有多個NRC可響應的時候,先回復哪個NRC。下面就來分享一下我的經驗,當然這里的NRC優先級是參照ISO14229的,大部分車廠是也是參考這個來的,可能有個別NRC是客戶定制,這種例外的按照客戶需求來就行了。

NRC的優先級從高到低排列:

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

1)NRC 0x11和0x7F的區別:都是服務不支持,但0x11是整個服務不支持,而0x7F是在某個會話不支持,在其他服務下是支持的。舉個例子:28服務,只支持在擴展會話下,但在默認會話下執行0x28服務,那此時回復的NRC就是0x7F。

2)NRC 0x11和0x12的區別:0x11是服務不支持,0x12是子功能不支持。這個還是比較好理解的。舉個例子:19服務有很多子功能,假設客戶不支持0A子功能,那執行19 0A就會回復0x12;假設客戶需求不支持23服務,那執行23服務就回復0x11,而且不管你后面傳的子功能參數對不對,長度對不對,都是回復0x11,因為0x11優先級最高(看標準0x21總線繁忙的NRC優先級是最高的,但沒怎么用過)。

3)NRC 0x12和0x7E的區別:0x12是整個子功能不支持,而0x7E是在當前會話不支持。舉個例子:19服務有很多子功能,假設客戶需求不支持0A子功能,那執行19 0A就會回復0x12;假設10 02服務只在擴展會話下支持,但在默認會話下執行了,就會回復0x7E。

4)NRC 0x7F和0x7E的區別:0x7F是當前會話下服務不支持,0x7E是當前會話下子功能不支持。這兩個沒啥好說的,看具體情況,如果這兩個都支持,則回復NRC 0x7F,因為0x7F優先級更高。

2.1 通用服務的NRC回復流程

這是ISO14229-1中的規范,這個NRC的回復優先級適用所有沒有子功能的服務。從這個可看出回復NRC的順序為:0x11 > 0x7F > 0x33。

mandatory:強制性的,也就是說這一列的NRC必須是按這個順序來回復。

optional:可選擇的,就是不一定有,可以選擇性地由每個請求消息進行評估。例如出現總線繁忙時,就先回復NRC 0x21。

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

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

2.2 帶sub-function功能參數的服務

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

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

2.3 0x22服務回復NRC的順序

0x22服務回復NRC的順序如下圖:

1)如果請求的DID不是客戶支持的,要回復NRC 0x31,就不是0x12了。因為$22服務沒有子功能。

2)如果請求的DID在當前會話不支持,也是回復NRC31,不是0x7E了。

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

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

2.4 0x2E服務回復NRC的順序

0x2E服務回復NRC的順序如下圖:

基本上和0x22服務一樣,最后多一個NRC 0x72,判斷最后把數據有沒有寫到內存中去,寫內存失敗了就報NRC 0x72。

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

2.5 0x14服務回復NRC的順序

$14服務回復NRC的順序如下圖:

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

2.6 0x31服務回復NRC的順序

0x31服務的NRC回復順序如下圖:

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

03物理尋址和功能尋址回復NRC

3.1 物理尋址但帶sub-function服務

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

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

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

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

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

3.2 功能尋址但帶sub-function服務

功能尋址和物理尋址又有點不一樣了。

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

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

也就是說,如果請求的是功能尋址,且NRC是上面5個中的任意一個,假設是NRC 0x7F,但是服務端先回復了一個NRC 0x78,那么服務端最后就必須回復NRC 0x7F了。

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

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

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

簡單來說就是:

1)當服務端回復了NRC 0x78,即使SPRMIB是置位的也要回復正響應;

2)當服務端回復了NRC 0x78,即使發送的請求是功能尋址,且NRC為0x11,0x7F,0x12,0x7E,0x31,也要回復對應的NRC

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

舉個例子:請求了10 02服務,10 82,且服務端回復了NRC 78,那是要給正響應的。

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服務

不知道你們一開始看到這個表格一開始是否有個疑問,這里為啥沒有SPRMIB是否置位的區分?因為這些是適用沒有子功能的服務啊,沒有子功能哪來的SPRMIB。

物理尋址沒有子功能的服務請求,該回復正響應的就回復正響應,回復NRC就NRC,沒有啥特殊情況。

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

3.4 功能尋址但沒有sub-function服務

功能尋址沒有子功能的服務請求時,服務不支持,參數不對,都不回復NRC,即無響應。

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

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 發動機
    +關注

    關注

    33

    文章

    2482

    瀏覽量

    69427
  • ecu
    ecu
    +關注

    關注

    14

    文章

    889

    瀏覽量

    54569
  • 服務端
    +關注

    關注

    0

    文章

    66

    瀏覽量

    7022

原文標題:一文搞懂UDS的各種NRC

文章出處:【微信號:談思實驗室,微信公眾號:談思實驗室】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    Labview 基于CAN UDS燒錄Hex文件

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

    UDS診斷命令備忘錄

    UDS實踐性強,邏輯復雜,很多服務非要體驗過次才能理解,導致包括我在內的初學者感覺晦澀難懂,不明覺厲,因此將自己的理解寫下來、整理下來,與君共勉。零、UDS診斷命令備忘錄、簡介
    發表于 08-26 16:09

    搞懂UPS主要內容

    導讀:UPS是系統集成項目中常用到的設備,也是機房必備的設備。本文簡單介紹了UPS的種類、功能、原理,品質選擇與配置選擇方式,基礎維護等相關的內容。搞懂UPS本文主要內容:UPS種類、功能
    發表于 09-15 07:49

    搞懂開關電源波紋的產生

    參考搞懂開關電源波紋的產生、測量及抑制開關電源紋波的產生上圖是開關電源中最簡單的拓撲結構-buck降壓型電源。隨著SWITCH的開關,電感L中的電流也是在輸出電流的有效值上下波動的。所以在輸出端
    發表于 12-30 08:31

    STM32 Bootloader UDS技術要點是什么?

    STM32 Bootloader UDS技術要點是什么?
    發表于 02-11 07:26

    OBDII與UDS的區別是什么

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

    搞懂幾種常見的射頻電路類型及主要指標

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

    看懂UDS協議棧中的時間參數

      UDS 協議是道路車輛通用診斷規范的簡稱,目前主要應用在商用車電氣零部件系統中,各個電氣子系統基于該協議與外部診斷設備進行數據交互,從而實現程序更新、故障讀取等功能。完整的協議棧包含了多個
    發表于 04-02 17:12 ?1次下載

    搞懂跳線架與配線架區別別再搞混了

    說起網絡布線,不得不提跳線架 配線架 這些產品,很多人會把跳線架和配線架搞混,搞懂跳線架與配線架區別別再搞混了,下面跟著科蘭小編起來了解
    的頭像 發表于 05-19 11:27 ?1819次閱讀

    UDS基礎知識介紹

    UDS(Unified Diagnostic Services 統的診斷服務)是種通用的診斷服務標準,用于汽車電子控制單元(ECU)的診斷和調試。
    的頭像 發表于 05-30 10:57 ?1.4w次閱讀
    <b class='flag-5'>UDS</b>基礎知識介紹

    UDS常用診斷服務

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

    搞懂配線架相關知識

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

    基于MM32F0140的UDS Bootloader學習筆記

    基于MM32F0140的UDS Bootloader學習筆記
    的頭像 發表于 10-30 17:11 ?787次閱讀
    基于MM32F0140的<b class='flag-5'>UDS</b> Bootloader學習筆記

    汽車UDS協議棧與XCP協議棧

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

    UDS之29服務:認證服務

    汽車工業的很多領域都有嚴格的國際標準,其中針對車載診斷的ISO14229規定了車載診斷服務的通用需求(UDS),UDS主要應用于OSI模型的應用層,UDS協議根據功能的不同定義了26種診斷服務
    的頭像 發表于 11-30 08:24 ?2221次閱讀
    <b class='flag-5'>UDS</b>之29服務:認證服務
    主站蜘蛛池模板: 一区二区三区高清视频| 第一福利在线永久视频| 国产成人久视频免费| 忘忧草秋观看未满十八| 国产曰批试看免费视频播放免费| 亚洲国产三级在线观看| 久久久久国产一级毛片高清片| 99精品国产免费观看视频| 日日做夜夜欢狠狠免费软件| 花蝴蝶在线观看免费中文版高清| 456亚洲人成在线播放网站| 色妞色视频一区二区三区四区| 国产睡熟迷奷系列网站| 中国女人逼| 十九禁啊啪射视频在线观看| 久久电影午夜| 高跟丝袜岳第一次| 伊人久久大香线蕉综合亚洲| 青青视频国产色偷偷| 国内精品伊人久久久影院| 99久久国产综合精品成人影院| 午夜噜噜噜私人影院在线播放 | 亚洲精品九色在线网站| 免费国产成人高清在线看软件| 国产精品久久久久久久AV下载| 在线播放免费人成视频| 色悠久久综合| 美女扣逼软件| 国产欧美一区二区三区在线看| 洗濯屋H纯肉动漫在线观看 | 麻豆啊传媒app黄版破解免费| 高h gl肉文| 9477小游戏| 亚洲免费在线| 色四房播播| 免费女性裸身照无遮挡网站| 国产免费阿v精品视频网址| 99在线免费视频| 在线观看亚洲 日韩 国产| 性满足久久久久久久久| 日韩精品真人荷官无码|