1. 程式人生 > >CAN匯流排取樣點測試

CAN匯流排取樣點測試

取樣點是什麼?

取樣點是接受節點判斷訊號邏輯的位置,CAN通訊屬於非同步通訊。需要通過不斷的重新同步才能保證收發節點的取樣準確。

若取樣點太靠前,則因為線纜原因,DUT外發報文尚未穩定,容易發生取樣錯誤,若取樣點太靠後,則因為SJW原因,也會引起接受節點同步跳轉寬度的調整。調整不好就容易出現錯誤。

取樣點在一個位時間的相位緩衝段1(PBS1)結束處,所以針對CAN節點進行取樣點測試目睹用於檢查DUT傳送的CAN報文訊號的取樣點是否符合車企規範。

位時間是什麼?

位時間是表示一個二進位制位在總線上傳輸時所需的時間。

位速率=1/位時間,位速率又叫位元率、資訊傳輸速率,表示單位時間內,總線上傳輸的資訊量,即,每秒能夠傳的二進位制位的數量。

波特率:傳位元速率、訊號傳輸率、表示單位時間內傳輸的碼元的數量。

當位速率和波特率調製時,則一個碼元=一個二進位制位,CAN正是兩者調製。

 

CAN協議是將一個位時間分4段,而段又由Time Quantum(Tq)構成

  1. 同步段(SS)多個連線在總線上的單元通過此段,實現時許調整,同步進行接收和傳送工作,邊沿包含在此段中(通常為1Tq)
  2. 傳播段(PTS)用於補償網路上所有的物理延遲(通常1-8Tq)
  3. 相位緩衝段1(PBS1)
  4. 相位緩衝段2(PBS2)當訊號邊沿不能被包含於SS段中時,可在PBS1和PBS2段進行補償。

時間段1(TSEG1)=傳播段+相位緩衝段1

時間段2(TSEG2)=相位緩衝段2

 

 取樣點怎麼計算?

取樣點是讀取匯流排電平,並將讀到的電平作為位值的點,所以一個位的開始到取樣點的時間佔一個完整位的總時間的百分比就是所求的取樣點的值。

 

 取樣點該如何測試?

波特率取樣點是CAN節點判斷位邏輯的判斷點,採用干擾方式,將取樣點位置的邏輯電平破壞,使這個CAN報文將出現錯誤,以此來確定干擾位置位取樣點位置,

表現形式就是,使用干擾儀對DUT報文進行干擾(一般是從後往前干擾),直到出現錯誤幀,從而將出現錯誤幀的位置記錄下來,按照公式進行計算,得到DUT的取樣點。

&n