詳解UDS CAN診斷:ECUReset Service(SID:0X11)
診斷和通信管理功能單元(Diagnostic and communication management functional unit)包含10種服務,本篇博文將詳細講解ECUReset Service(SID:0X11)的特性和協(xié)議。
本篇博文素材來源于:ISO 14229-1-2020:規(guī)范和要求。
在學習本篇博文之前推薦學習:
詳解UDS CAN診斷:什么是UDS(ISO 14229)診斷?
詳解UDS CAN診斷:DiagnosticSessionControl Service(SID:0X10)
很多關聯(lián)知識已經(jīng)詳細講解過,這里不再贅述了。
客戶端使用ECUReset Service請求復位重啟服務端。
正常情況下,服務端在復位重啟前應答客戶端肯定響應,重啟成功后服務端激活進入Default Session。
1
診斷請求
使用ECUReset Service請求復位重啟服務端發(fā)送請求協(xié)議:0X11 0X**(A_Data.A_PCI.SI和A_Data.Parameter 1~k數(shù)據(jù))。
其中:
0X11是服務ID(SID),1字節(jié);
0X**是服務的子功能,范圍為:0X00~0XFF,1字節(jié)。
在ISO 14229-1-2020協(xié)議中規(guī)定了各類數(shù)值子功能的意義和使用場景,如下所示:
2
診斷響應
診斷響應有肯定響應和否定響應兩種類型。
2.1、肯定響應
肯定響應表示服務端回復客戶端請求成功,響應協(xié)議:0X51 0X** 0X&&(A_Data.A_PCI.SI和A_Data.Parameter 1~k數(shù)據(jù))。
其中:
0X51是響應服務的SID,相當于0X11+0X40,1字節(jié);
0X**是響應服務的子功能,范圍為:0X00~0X7F,1字節(jié)。例如,客戶端使用0X01子服務,此時肯定響應的子服務就是0X01;
0X&&數(shù)據(jù)向客戶端提示服務端將保持在斷電順序中的待機最小時間,需要注意該參數(shù)只有當SubFunction為0X04時才會使能,范圍為:0X00~0XFF,1字節(jié),協(xié)議規(guī)定如下所示:
2.2、否定響應
否定響應表示客戶端或者服務端存在問題,否定響應會提示失敗原因。
響應協(xié)議:0X7F 0X** 0X&&(A_Data.A_PCI.NR_SI、A_Data.A_PCI. SI和A_Data.Parameter 1數(shù)據(jù))。
其中:
0X7F是否定響應固定數(shù)值,1字節(jié);
0X**是診斷服務ID(SID),本篇博文使用的是0X11服務,則否定響應會返回0X11,1字節(jié);
0X&&是NRC錯誤碼,描述了返回錯誤的原因,1字節(jié)。ECUReset Service(SID:0X11)有4種類型錯誤,如下所示:
*博客內容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權請聯(lián)系工作人員刪除。