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

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

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

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