UDS——ISO14229
目錄
一、前言
二、診斷服務(wù)標(biāo)識(shí)符
三、服務(wù)響應(yīng)執(zhí)行規(guī)則
四、診斷流程
五、定時(shí)參數(shù)
六、診斷和通信管理功能
七、數(shù)據(jù)傳輸功能
八、故障信息功能
九、示例
一、前言
診斷服務(wù)按類劃分為6個(gè)功能單元,包括診斷和通信管理功能單元、數(shù)據(jù)傳輸功能單元、傳輸存儲(chǔ)的數(shù)據(jù)功能單元、輸入輸出控制的功能單元、遠(yuǎn)程激活例程功能單元、上傳下載功能單元
二、診斷服務(wù)標(biāo)識(shí)符
ID劃分:
請(qǐng)求服務(wù)標(biāo)識(shí)符SI范圍00-FF,請(qǐng)求標(biāo)識(shí)符的ID:X0XX XXXX(第6位為0);
肯定響應(yīng)服務(wù)ID=請(qǐng)求服務(wù)ID+0x40
否定響應(yīng)服務(wù)ID為0x7F + NRC
具體診斷服務(wù)ID:
10:控制診斷會(huì)話,一般01-03,也可以定義自己的session,比如超級(jí)會(huì)話06
11:使ECU復(fù)位,包括硬件復(fù)位01,軟件復(fù)位02
27:安全相關(guān),對(duì)于某些不希望別人讀到的數(shù)據(jù),27加解密
28:網(wǎng)絡(luò)控制,禁止或者打開(kāi)網(wǎng)絡(luò)收發(fā)
3E:告訴ECU保持某個(gè)非默認(rèn)會(huì)話模式
83-87:是一些設(shè)置控制相關(guān)服務(wù)
22-3D:讀寫(xiě)數(shù)據(jù)服務(wù),包括直接讀寫(xiě)和E2PROM讀寫(xiě)
14、19:是診斷故障碼DTC服務(wù)
2F:IO控制服務(wù)
31-37:啟動(dòng)例程和刷寫(xiě)服務(wù)
否定響應(yīng):
否定響應(yīng)表示ECU不滿足請(qǐng)求的條件,不支持該服務(wù),或者無(wú)法給出正確的響應(yīng)
0x12:不支持請(qǐng)求服務(wù)的子功能
0x13:表示報(bào)文的數(shù)據(jù)長(zhǎng)度(或者格式)不符合標(biāo)準(zhǔn)
......
三、服務(wù)響應(yīng)執(zhí)行規(guī)則
(1)物理尋址
對(duì)于帶子功能參數(shù)的請(qǐng)求消息響應(yīng),對(duì)于物理尋址的客戶端請(qǐng)求消息:NRC為11表示不支持服務(wù)標(biāo)識(shí)符,12表示不支持這個(gè)子功能。
對(duì)不帶子功能參數(shù)的請(qǐng)求響應(yīng)(物理尋址):如果支持服務(wù)標(biāo)識(shí)符但是發(fā)生了某些錯(cuò)誤,NRC=xx;如果不支持該參數(shù),回復(fù)0x31,如果不支持服務(wù)標(biāo)識(shí)符,NRC=0x11
(2)功能尋址
對(duì)于帶子功能參數(shù)的請(qǐng)求消息響應(yīng)(功能尋址):
對(duì)于不帶子功能參數(shù)的請(qǐng)求消息響應(yīng)(功能尋址):
?
四、診斷流程
根據(jù)上述服務(wù)標(biāo)識(shí)符適用會(huì)話類型:默認(rèn)會(huì)話模式或者非默認(rèn)會(huì)話模式,如果診斷需要在非默認(rèn)會(huì)話模式進(jìn)行則需要切換會(huì)話模式用到10控制會(huì)話服務(wù)
如果需要操作機(jī)密的數(shù)據(jù),需要適用27安全驗(yàn)證服務(wù)
31啟動(dòng)例程Routine去擦除指定區(qū)域的數(shù)據(jù),34去請(qǐng)求將軟件包下載到指定的地址塊,36傳輸數(shù)據(jù),37離開(kāi)傳輸數(shù)據(jù),如果數(shù)據(jù)傳輸完畢,使用31對(duì)程序進(jìn)行校驗(yàn)。
五、定時(shí)參數(shù)
應(yīng)用層定時(shí)參數(shù):
REQ:02 10 01
RES:06 50 01?P2CAN P2*CAN
P2CAN 表示從接收到一個(gè)數(shù)據(jù)包到返回?cái)?shù)據(jù)包被確認(rèn)的時(shí)間間隔,最大值50ms
P2*CAN表示應(yīng)用層在忙暫時(shí)無(wú)法處理當(dāng)前發(fā)過(guò)來(lái)的請(qǐng)求,需要發(fā)送方等一段時(shí)間,這時(shí)回復(fù)一個(gè)否定響應(yīng)碼0x78,最大值5000ms
會(huì)話層定時(shí)參數(shù):
發(fā)送3E服務(wù)的請(qǐng)求間隔時(shí)間,比如說(shuō)10 03 ECU處于非默認(rèn)會(huì)話狀態(tài)下,如果超過(guò)5000ms沒(méi)有發(fā)送3E的請(qǐng)求,ECU認(rèn)為超時(shí),ECU會(huì)回到默認(rèn)會(huì)話狀態(tài);推薦發(fā)送3E的時(shí)間間隔是2000ms
六、診斷和通信管理功能
(1)0x10服務(wù)
用于使能服務(wù)器不同的診斷會(huì)話:默認(rèn)會(huì)話模式和非默認(rèn)會(huì)話模式(編程模式、擴(kuò)展模式),不同的診斷會(huì)話有不同的功能,不同的定時(shí)參數(shù)、受到不同的安全訪問(wèn)保護(hù);0x10服務(wù)對(duì)應(yīng)的子功能包括:
會(huì)話模式狀態(tài)機(jī):
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
?
(2)3E服務(wù)
向服務(wù)器指示診斷儀依然連接在網(wǎng)絡(luò)上,之前激活的特定診斷服務(wù)和通信功能依然保持激活狀態(tài)
周期性發(fā)送3E 00/80; 3E 80 子功能最高位置為1表示不需要肯定響應(yīng)
支持的否定響應(yīng)碼:0x12 不支持請(qǐng)求服務(wù)子功能,0x13請(qǐng)求報(bào)文數(shù)據(jù)長(zhǎng)度不對(duì)
?
七、數(shù)據(jù)傳輸功能
(1)22/2E讀寫(xiě)由數(shù)據(jù)標(biāo)識(shí)符定義的數(shù)據(jù)
03 22/2E? DID_H? DID_L,2字節(jié)參數(shù),DID
示例:
讀寫(xiě)VIN的例子:
?
八、故障信息功能
19服務(wù):
J1939-73 DTCFormat:
SPN:表示哪種故障類型
FMI:表示程度由高到低,由大到小, 由不足到超出
CM:表示轉(zhuǎn)換方式
OC: 表示發(fā)生次數(shù)
ISO14229-1、ISO15031-6 DTC格式:
ISO14229-1中第4個(gè)字節(jié)狀態(tài)有8個(gè)bit,每個(gè)bit的含義如下:
2pending的DTC表示不確定的DTC
ISO15031-6的DTC格式如下:
19服務(wù)子功能:
?
statusOfDTC:描述某個(gè)DTC狀態(tài)
DTCStatusMask:DTC狀態(tài)掩碼,表示想請(qǐng)求哪一類的DTC
DTCStatusAvailabilityMask:ECU支持的DTC狀態(tài)
19 01 + DTCStatusMask(08)
19 02 +?DTCStatusMask
DTCStatusMask:01表示當(dāng)前的故障碼; 08表示確認(rèn)的故障掩碼
19服務(wù)響應(yīng) : 59 01?+故障DTC數(shù)量
59 02?+ECU支持的故障掩碼?
14服務(wù)清除DTC
04 14 FF FF FF 00 00 00
九、示例
27 01 請(qǐng)求秘鑰(種子)
27 02 請(qǐng)求解鎖
?
?
參考:
UDS入門(mén):https://blog.csdn.net/cheatscat/article/details/109493618
UDS診斷基礎(chǔ):https://www.bilibili.com/video/BV1wt4y1D71K/?spm_id_from=333.788.recommend_more_video.0
?
總結(jié)
以上是生活随笔為你收集整理的UDS——ISO14229的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 【使用心得】ChatGPT做出行攻略
- 下一篇: 现货白银入门技巧之白银K线卖出信号