在汽車電子診斷領域,UDS協(xié)議的傳輸層由ISO-15765標準定義。這一標準確保了即使在數(shù)據(jù)量較大的情況下,也能高效、準確地傳輸診斷信息。今天,我們將深入探討ISO-15765協(xié)議的傳輸機制。
?UDS中的傳輸協(xié)議(ISO-15765)
1. 單幀傳輸
當請求PDU(協(xié)議數(shù)據(jù)單元)或響應PDU的長度較短,不超過CAN幀數(shù)據(jù)段的8字節(jié)或CAN FD的64字節(jié)時,傳輸過程相對簡單。在這種情況下,協(xié)議會控制CAN FD接口卡以單幀的形式發(fā)送數(shù)據(jù)。單幀的首字節(jié)以0開頭,例如,單幀響應中的“06”表示該幀只有6個有效字節(jié),后續(xù)字節(jié)則是自動填充的無效字節(jié)。

2. 多幀傳輸
然而,當PDU的長度遠遠超過CAN幀數(shù)據(jù)段的8字節(jié)或CAN FD的64字節(jié)時,協(xié)議會控制CAN FD接口卡以多幀的形式進行傳輸。多幀傳輸分為首幀和連續(xù)幀:
- 首幀:首幀的前兩字節(jié)以1開頭,例如“10 0D”表示數(shù)據(jù)長度為13字節(jié),即后續(xù)將跟隨13個字節(jié)的數(shù)據(jù)內(nèi)容。
- 連續(xù)幀:連續(xù)幀以2x開頭,從0x21開始,依次遞增到0x2F,然后循環(huán)回到0x20。直到PDU的內(nèi)容全部發(fā)送完畢,才會填充無效字節(jié)并停止發(fā)送。

3. 流控幀
為了確保傳輸過程的穩(wěn)定性和可靠性,ISO-15765協(xié)議還定義了流控幀。流控幀的前三字節(jié)具有特定的定義:
- 首字節(jié):3(4bit)+流狀態(tài)(FS,4bit)。
- 第二字節(jié):塊大小(BS,8bit)。
- 第三字節(jié):最小間隔時間(STmin,8bit)。
流控幀的具體參數(shù)如下:
- FS(流狀態(tài)):0,繼續(xù)發(fā)送。1,等待。2,過載溢出。
- BS(塊大小):一次能傳輸?shù)膸瑪?shù)。0表示無限制傳輸大小。
例如,“30 08 14”表示遙控,繼續(xù)發(fā)送,最大連續(xù)8幀,幀間隔20毫秒。
具體使用哪個服務,廠商可以根據(jù)自身需求自行選擇。ZLG致遠電子自行開發(fā)的CAN FD接口卡系列,搭配國產(chǎn)汽車總線工具鏈ZXDoc,可以實現(xiàn)相關診斷服務的操作,歡迎使用。

在下一期節(jié)目中,我們將繼續(xù)深入探討UDS診斷協(xié)議,特別是增強和細化了文件下載功能的ECU篩選機制。敬請期待!
-
CAN
+關注
關注
58文章
3019瀏覽量
471715 -
總線
+關注
關注
10文章
3021瀏覽量
91379 -
ISO
+關注
關注
0文章
294瀏覽量
41031
發(fā)布評論請先 登錄
淺談CAN FD總線協(xié)議幀格式
TSMaster 的 CAN UDS 診斷操作指南(上)
TSMaster 的 CAN UDS 診斷操作指南(下)
誰能幫我解答下CAN總線中的UDS診斷?
【野火】瑞薩RA MCU創(chuàng)意氛圍賽+ 基于CAN總線的UDS診斷升級MCU /bootloader/UDS診斷/14229/15765
可以混合使用Classical CAN格式和CAN FD格式的診斷報文嗎?
基于CAN總線的UDS診斷Bootloader升級MCU工具
CAN總線十萬個為什么 | 聊聊幾種常見的CAN網(wǎng)絡拓撲
CAN總線十萬個為什么 | 為什么CAN總線分支不能過長?
CAN總線十萬個為什么 | 為什么CAN總線終端電阻如此重要?
CAN總線十萬個為什么 | CAN自定義波特率有什么用?
CAN總線十萬個為什么 | 如何輕松應對CAN(FD)接口不足?
《CAN(FD)總線十萬個為什么》之UDS診斷(上)

《CAN(FD)總線十萬個為什么》之UDS診斷(下)
評論