結構圖:
SS (synchronization segment):
SS是通過監視幀間空間中從隱性位到顯性位的邊沿來執行同步的段。 幀間空間包括間歇,掛起傳輸和總線空閑。 總線空閑期間,所有節點均可開始傳輸。
TSEG1 (Time segment 1):
TSEG1是吸收CAN網絡上物理延遲的網段。 CAN網絡上的物理延遲是CAN總線上的延遲,輸入比較器中的延遲和輸出驅動器中的延遲的兩倍。
TSEG2 (Time segment 2):
SJW (Resynchronization jump width)
SJW是延長或減少時間段的長度,以補償由於相位誤差引起的相位誤差。
1.采樣點 = (SS + TSEG1)/(SS + TSEG1+TSEG2)
2.Can bit time = 1/ Can speed
3.Can Tq = Fn(分頻數)/Fcan) Fcan 輸入時鍾 Tq: Time quantum
4.CAN bit time = CAN Tq * TqCount ;CAN bit time 也簡寫為NBT (Nominal Bit Time )
5.Tq Count = SS + TSEG1 + TSEG2
舉例
Fcan輸入時鍾為60Mhz,分頻數為6,Can Tq = 6/60M = 0.1us
設置總線波特率為500kbit/s 則CAN bit time = 1/500k = 2us ,TqCount = CAN bit time/CAN Tq = 2/0.1 = 20
那么SS + TSEG1 + TSEG2 = 20
SS固定占用一個Tq,分配TSEG1和TESG2,可以調整采樣點位置
設置TESG1 = 14 ,則TESG1 = 5,(在瑞薩手冊看到要求TSEG1 > TSEG2 > SJW)
則 采用點位置 = (SS + TSEG1)/(SS + TSEG1+TSEG2) = (1+14)/ 20 = 75%
一般采樣點位置要求在75-80% 但很難調整到中間值。
SJW是另外一個參數與采樣點計算無關。