CAN收發器的改良和隔離器件引入,大大提高了通信的可靠性,但同時也引入了額外的延時,導致通信距離變短,或總線錯誤幀增加,本文以1Mbps波特率下的應用為例,對CAN總線信號延時做簡要分析。
CAN總線傳輸距離的相關因素
1、ACK應答
CAN 總線采用多主通信模式、非破壞式總線仲裁機制。以標準數椐幀為例,從結構上看分成7段,分別為起始段、仲裁段、控制段、數椐段、CRC校驗段、ACK應答段、幀結束段,如圖1所示:
圖1 標準數椐幀結構及應答
ACK段長度為2個位,包含應答間隙(ACK SLOT)和應答界定符(ACK DELIMITER)。在應答場里,發送站發送兩個“隱性”位。當接收器正確地接收到有效的報文,接收器就會在應答間隙(ACK SLOT)期間(發送ACK信號)向發送器發送一“顯性”的位以示應答。發送節點檢測到總線呈顯式狀態時,就認為有節點進行了有效的應答并且自己所發出的幀是正常的。
2、CAN總線位時間組成
CAN網絡通信位定時參數如圖2所示。
圖2 位定時示意圖
CAN 總線通信中每一位的時間由4 部分組成,即同步段、傳播段、相位緩沖段1、相位緩沖段2,劃分為3段。
同步段:用于總線諸節點之間的同步;
時間段1:由傳播段與相位段1組成,傳播段用于補償信號的物理傳播延時;
時間段2:即相位緩沖段2,相位段1 和相位段2 用于補償沿的相位誤差。
在實際控制器設計中,通過調整時間段1、時間段2 的值可以改變對總線傳播延時的補償時間。
3、CAN總線延時理論分析