(惠州經濟職業技術學院 廣東 惠州 516057)
CAN是控制器局域網絡(Controller Area Network,CAN)的簡稱,由以研發和生產汽車電子產品著稱的德國BOSCH公司在80年代末開發,并最終成為國際標準(ISO 11898),是國際上應用最廣泛的現場總線之一。在北美和西歐,CAN總線協議已經成為汽車計算機控制系統和嵌入式工業控制局域網的標準總線,并且擁有以CAN為底層協議專為大型貨車和重工機械車輛設計的J1939協議。下圖一、CAN網絡接口電路

圖一 CAN網絡接口電路
高速CAN和低速CAN的在位傳輸時序、位仲裁、錯誤、校驗、幀結構等方面(即數據鏈路層)并沒有區別的。數據鏈路層之上的傳送層、網絡層、會話層、應用層等的協議,為開發者自己定義,不會純在重大差別,主要差別為如下幾方面:
1.終端節點的不同,高速CAN總線網絡上有兩個終端節點,在每個終端節點端需要接入120Ω的終端電阻。而在低速CAN總線網絡上每種設備都有它自己的終端節點,由于終端節點的類型不同,因此高速CAN總線和低速CAN總線設備不能在同一個網絡中使用。
2.電平轉換效率的不同,高速CAN同樣可以使用低速CAN的波特率,而且在實際應用中也不會有問題。但低速CAN使用高速CAN的波特率就會出現問題,這個問題不是純粹由波特率引起的,而是由收發器引起的,因為在電平轉換效率方面,低速CAN的收發器明顯比高速CAN的收發器低。
3.電平邏輯的不同,高速CAN和低速CAN的一個重要區別為數據傳輸電平邏輯的差異,隱性電平高速CAN_H和CAN_L均為2.5V,低速CAN_H和CAN_L分別為0V和5V,顯性電平高速CAN_H和CAN_L分別為3.5V和1.5V,低速CAN_H和CAN_L分別為3.6V和1.4V,睡眠電平高速CAN_H和CAN_L均為0V,低速CAN_H和CAN_L分別為0V和12V,CAN總線的電平物理特性差異將會直接反映在CAN收發器上,但無論是高速CAN還是低速CAN總線,經過收發器后與微控制器的接口(TXD和RXD引腳)后的電平邏輯將會變得一致。當前市場上很多MCU內部已經集成了CAN總線模塊,另還有有各種總線收發器可以方便電平的轉換,目前CAN總線的應用更多的變成了上層協議的工作。具體高低速CAN電平邏輯圖詳見下圖二和下圖三。

圖二 高速CAN的電平邏輯 圖三 低速CAN的電平邏輯
4.故障現象表現不同,CAN總線常見故障經常會表現為線路斷路或短路,根據高速CAN總線傳輸特性,當高速CAN總線兩條線出現短路時,會導致兩條線路上信號互相抵消,數據傳輸失敗,高速CAN總線其中一條線路出現斷路時會導致另一條高速條線路上由于阻抗不匹配發生信號反射,會造成信號失真,當其中一條線路和地或者電源短路時,另一條線路的電壓變化并導致數據無法傳送。當如上問題在低速CAN模式都不存在問題,根據低速CAN傳輸特性,其中一條線異常時,另一條線會自動進入單線傳送模式,數據正常運行。
5.使用場合不同,高速CAN總線的使用主要應用在汽車發動機,變速箱等對數據實時性和數據傳輸速度要求較高的場合,而低速CAN總線的使用主要應用在對車身控制系統等對可靠性要求高的場合。
CAN總線經過30多年的發展,已經成為汽車計上最重要的數據傳送總線,低速CAN總線和高速CAN總線,各有其優點和缺點,傳輸速率的高低并不是區別的關鍵區分因素,深入了解高速和低速CAN總線的硬件電路連接和數據傳輸原理才能更準確的理解這兩種總線的精髓,作為CAN總線協議開發和維護相關人員更加需要提高對高速CAN和低速CAN差異的深度認識,以防止走進CAN總線知識的誤區。