最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

UDS 診斷教程(一)

2023-03-20 22:09 作者:一只開心的鳥  | 我要投稿


UDS 由 ISO-14229系列標準定義,ISO 14229-1 定義了診斷服務,不涉及網(wǎng)絡及實

現(xiàn),只有應用層的內(nèi)容。而 ISO 14229-3則定義了 UDS 在 CAN總線上的實現(xiàn)。

診斷通信的過程從用戶角度來看非常容易理解,診斷儀發(fā)送診斷請求(request),

ECU給出診斷響應(response),而 UDS 就是為不同的診斷功能的 request 和

response定義了統(tǒng)一的內(nèi)容和格式。

最近關(guān)于 UDS 的一系列專欄文章只關(guān)注應用層的診斷服務,忽略下層的通信機制。

Diagnostic request? 的格式: :

Diagnostic request 的格式可以分為兩類:一類是擁有 sub-function 的,另一類是沒

有 sub-function的,如下面兩張圖所示。Service ID(以下簡稱 SID)的長度固定為 1

個字節(jié),代表了這條診斷命令執(zhí)行的什么功能。sub-function 的長度也是 1 個字節(jié),

它通常表示對這個診斷服務的具體操作,比如是啟動、停止還是查詢這個診斷服務。

而后面的 parameter則根據(jù)各個診斷服務的不同具有不同的內(nèi)容,長度和格式并沒

有統(tǒng)一規(guī)格,它用于限定診斷服務執(zhí)行的條件,比如某個診斷服務執(zhí)行的時間等。

parameter的一個重要應用是作為標識符,標識診斷請求要讀出的數(shù)據(jù)內(nèi)容,我會

在后續(xù)的文章里詳細講述各個診斷服務的應用。

擁有 sub-function 的診斷請求

無 sub-function 的診斷請求

有一點要補充的是,其實 sub-function 嚴格來說是 7個 bit,而不是 1個 byte,因為

它的最高位 bit 被用于抑制正響應(suppress positive response,SPR),如果這個 bit

被置 1,則 ECU不會給出正響應(positive response); 如果這個 bit 被置 0,則

ECU會給出正響應。這樣做的目的是可以告訴 ECU不要發(fā)不必要的 response,從

而節(jié)約通信資源。

Diagnostic response? 的格式: :

Diagnostic response分為 positive和 negative 兩類。positive response 意味著診斷儀發(fā)

過來的診斷請求被執(zhí)行了,而 negative response則意味著 ECU因為某種原因無法

執(zhí)行診斷儀發(fā)過來的診斷請求,而無法執(zhí)行的原因則存在于 negative response的報

文中。

positive response


positive response的格式如上圖所示,也基本上是由三部分組成,其中的 response

SID這個字節(jié)作為診斷請求的 echo,它等于 SID + 0X40。后面的兩個部分則視具

體的診斷服務而定。

negative response
negative response

negative response的格式固定為 3個字節(jié),第一個字節(jié)為 0x7F,第二個字節(jié)是被拒

絕掉的 SID,第三個字節(jié)是這個診斷服務無法被執(zhí)行的原因。下面這張圖列舉了部

分原因代碼,比如,如果 ECU給出 7F 22 13 這個 negative response,則說明 22這

個服務因為診斷請求數(shù)據(jù)長度不對的原因無法執(zhí)行。

Negative Response Code

總結(jié):診斷通信的過程就是診斷儀和 ECU交換數(shù)據(jù),前者發(fā)的是 request,后者發(fā)

的是 response,而 UDS 最重要的作用就是定義了這些 request 和 response的格式和

內(nèi)容。本文對 request 和 response進行了簡要介紹,在后面描述各種診斷服務的文

章中我會通過更多的示例來說明這兩個基本概念。


UDS 診斷教程(一)的評論 (共 條)

分享到微博請遵守國家法律
彩票| 梧州市| 嫩江县| 林周县| 扬州市| 高尔夫| 济宁市| 桂林市| 昌邑市| 佛山市| 南京市| 通江县| 乡宁县| 万源市| 阿巴嘎旗| 大悟县| 新竹县| 南澳县| 浑源县| 厦门市| 新和县| 正阳县| 都江堰市| 五华县| 通渭县| 澎湖县| 巴南区| 蕲春县| 吉水县| 海安县| 开封市| 诸城市| 收藏| 延川县| 子长县| 新昌县| 昂仁县| 盐池县| 洛宁县| 康平县| 中宁县|