這篇文章給大家介紹一下14229-1中給出的服務原語(Service primitive)的概念,在開發的時候可以參考使用。
本文的内容包括:
一、應用層服務與應用層協定的概念
二、診斷資料傳輸步驟詳解
三、有确認服務和無确認服務
四、應用層的服務原語(Service Primitive)
一、應用層服務與協定的概念
我們首先來看一張圖:
圖中左側是診斷請求的發送方,常指診斷儀,也稱用戶端;右側是診斷請求的接收方,常指ECU,也稱伺服器。圖中展示了診斷儀發送一條診斷請求,和ECU傳回一條響應的過程,我們後面會逐漸分析這個過程。
我們首先來看圖中分成了上下兩部分,UDS屬于應用層,但标準中進一步将其劃分為兩層——應用層服務(Application Layer Service)和應用層協定(Application Layer Protocol)。
應用層服務就是指我們前面說到的診斷服務,每個診斷服務有不同的參數封裝格式,我們按照每個服務特定的格式将其參數封裝成一個整體,就組成了應用層服務資料單元 A_SDU(ApplicationLayer_ServiceDateUn