Diagnostic request
形式多種:
1.SID+DID
2.SID+Sub-Func+DID
3.SID+Sub-Func
SID占1個Byte,Sub-func占一個Byte,DID通常兩個Byte
eg.10 01 (SID+Sub-Func)
10 03 05 02 (SID+Sub-Func+DID)
22 02 00 (SID+DID)
肯定響應抑制位
抑制正響應信息除非是收到NRC 0x78的情況下 不會抑制 正負響應都會反饋
就是如果接收到否定響應的情況下就可以反饋所有信息
肯定響應抑制位如果為0就是FALSE 不會禁止postive信息的反饋 如果是1的話就是true會禁止所有postive信息的反饋 肯定響應抑制位是bit7
Positive response
Negtive response
NRC code
第一個是錯的 不是10 是11
當客戶端向ECU發送一個服務請求時,如果ECU檢測到任何異常情況,則會返回帶有否定響應碼(NRC)的結果包。例如,在調用Security Access ( 0x27
)服務過程中,若輸入的安全種子校驗失敗,則ECU將回應數據流為 7F 27 33
,其中 7F
代表否定響應標志,而 33
即表示“安全性訪問受限”的具體原因
正響應回復和負響應回復
尋址模式
一對多就是功能尋址
下圖tester發送0x6FF到總線上被三個節點接收了
一對一是物理尋址
下圖can總線上只有一個節點反饋 就是一對一 物理尋址
診斷報文三個CAN ID :物理尋址id 功能尋址id 只有一個ECU反饋的報文
ISO-15765(網絡層協議)
網絡層用15765 應用層用14229
單幀傳輸
一幀數據發一次就是單包 單幀的高位開頭都是0000 后面控制數據位數
例如:02開頭的0是單包 2是帶了2個數據10 01 后面的FF其實都是診斷補充位
0代表單包4代表有四個數據50 01 00 32 后面都是診斷填充位