技術頻道

      CAN總線技術及其在汽車儀表中的應用

      摘 要:本文首先介紹了CAN總線技術,然后給出了CAN總線技術在以摩托羅拉16位單片機MC9S12為中央控制器的某汽車儀表系統中的應用,并對該系統總體結構及其中CAN通信模塊的軟硬件設計作了詳細說明。

      關鍵詞:CAN總線,MC9S12,汽車,儀表

      0 引言

        控制局域網CAN (controllerareanetwork)是國際上應用最廣泛的現場總線之一,是德國Bosch公司為解決現代汽車中眾多的控制與測試儀器之間的數據交換而開發的一種通訊協議,它作為汽車環境中的微控制器通訊,在車載各電子控制裝置ECU之間交換信息,形成汽車電子控制網絡。比如:發動機管理系統、變速箱控制器、儀表裝備、電子主干系統中,均嵌入CAN控制裝置。CAN是一種多主方式的串行通訊總線,基本設計規范要求有高的位速率,高抗電磁干擾性,而且能夠檢測出產生的任何錯誤。當信號傳輸距離達到10Km時,CAN仍可提供高達50 kbit/s的數據傳輸速率。它是一種有效支持分布式控制或實時控制的串行通訊網絡。CAN的應用范圍遍及從高速網絡到低成本的多線路網絡。在自動化電子領域的汽車發動機控制部件、傳感器、抗滑系統等應用中,CAN的位速率可高達1 Mbps。CAN網絡具有反映快,可靠度高的特性,應用于要求實時處理的場合,例如汽車剎車防鎖死系統安全氣囊等。今天此項通信協議已得到廣泛應用,成為現代汽車設計中必須采用的裝置,奔馳、寶馬、大眾、沃爾沃及雷諾汽車都將CAN作為控制器聯網的手段。

      1 CAN總線的特點及通訊協議

        1.1 CAN總線的特點

        CAN總線是一種有效支持分布式控制或實時控制的串行通信網絡。其通訊介質可以是雙絞線、同軸電纜或光纖。在汽車發動機控制部件、傳感器等應用中,總線的位速率最大可達1Mbit/s。CAN總線具有以下主要特性:

        a. 無破壞性的基于優先權競爭的總線仲裁

        b. 可借助接收濾波的多地址幀傳送

        c. 具有錯誤檢測與出錯幀自動重發功能

        d. 數據傳送方式可分為數據廣播式和遠程數據請求式

        1.2 CAN總線幀格式[1]

        CAN總線通信協議包括CAN2.0A和CAN2.0B兩種,它們的幀格式如下:

        (1)CAN2.0A通信協議規定了4種不同的幀格式:

        數據幀 用于節點間傳遞數據,是網絡信息的主體,其幀格式依次包括: 幀起始、仲裁場、控制場、數據場、CRC場、ACK場和幀結束。其中數據段長度可編程0~8個字節。

        遠程幀 由在線單元發送,用于請求發送具有相同標識符的數據幀,其幀格式與數據幀基本相同,但沒有數據場。]

        出錯幀 出錯幀是檢測總線出錯的一個信號標志,由兩個不同的場構成。第一個場由來自不同節點的錯誤標志疊加,第二個場為錯誤界定符。CAN協議采用CRC檢驗并可提供相應的錯誤處理功能,保證數據通訊的可靠性。

        超載幀 由超載標識和超載界定符組成,表明邏輯鏈路控制層要求的內部超載狀態,并將由媒體訪問控制層的一些出錯條件而被啟動發送。用于擴展幀序列的延遲時間。

        (2)CAN2.0B通信協議分為兩種幀格式:

        ① 標準幀

        標準幀信息為11個字節,包括兩部分:信息和數據部分。前3個字節為信息部分。

        <1>字節1為幀信息。第7位(FF)表示幀格式,在標準幀中,FF=0;第6位(RTR) 表示幀的類型,RTR=0表示為數據幀,RTR=1表示為遠程幀;DLC表示在數據幀時實際的數據長度。

        <2>字節2、3為報文識別碼,11位有效。

        <3>字節4~11為數據幀的實際數據,遠程幀時無效。

        ② 擴展幀

        <1>擴展幀信息為13個字節,包括兩部分,信息和數據部分。前5個字節為信息部分。字節1為幀信息。第7位(FF)表示幀格式,在擴展幀中,FF = 1;第6位(RTR)表示幀的類型,RTR=0表示為數據幀,RTR=1表示為遠程幀;DLC表示在數據幀時實際的數據長度。

        <2>字節2~5為報文識別碼,其高29位有效。

        <3>字節6~13為數據幀的實際數據,遠程幀時無效。

      2 系統總體方案設計

        該系統以摩托羅拉16位單片機MC9S12DP256為中央控制器,并含有CAN通信模塊、LIN通信模塊、數據采集模塊及數據存儲模塊等。發動機及底盤部分通過CAN總線與中央控制器相連,儀表板部分及車身模塊通過LIN總線與中央控制器相連,本文重點介紹的是CAN通信模塊的設計。

        2.1 CAN通信模塊硬件設計

        中央控制器MC9S12DP256內部帶有5路CAN控制器,msCAN是Motorola Scaleable CAN的縮寫,而msCAN12模塊則是在MC9S12系列MCU上的具體實現。它服從CAN2.0A/B 協議,集成了除收發器外CAN總線控制器的所有功能。

        msCAN12基本特點如下[2]:

        (1) 模塊化結構

        (2) 實現了CAN2.0A/B協議,支持標準和擴展幀格式

        (3) 支持遠程請求幀

        (4) 雙緩沖接收存儲方案

        (5) 帶有本地優先級排隊機制的三緩沖區發送存儲方案

        (6) 可屏蔽、可重組標識符驗收過濾器

        (7) 內置低通濾波器的可編程喚醒功能

        (8) 可編程環路檢測模式支持模塊自檢

        (9) 時鐘源可程控選擇CPU總線時鐘或晶體振蕩器時鐘

        采用msCAN12的CAN總線系統如圖1所示:


      圖1 含有MC9S12及其他節點的典型CAN總線網絡系統

        CAN收發器采用摩托羅拉的CAN通信物理接口芯片MC33388,它的主要特點是:

        ● 靜態電流低至15uA;

        ● 波特率范圍為10~125 kbps;

        ● 發生總線錯誤時可自動調整至單線模式,錯誤消失后可自動恢復正常狀態;

        ● 支持單總線傳輸模式;

        ● 總線對地、電源具有短路保護功能;

        ● 具有總線驅動器過熱保護功能;

        ● 支持無遮蔽雙絞線傳輸;

        ● 無功節點不影響總線狀態;

        ● 工作溫度范圍為-40℃~125℃。

        MC33388與MCU應用電路如圖2所示:


      圖2 MC33388與MCU應用電路

        2.2 CAN數據通信接口模塊軟件設計

        通信接口模塊程序主要包括三部分:初始化子程序、發送子程序和接收子程序。初始化程序主要是通過CAN控制器控制段中的寄存器寫入控制字,從而確定CAN控制器的工作方式等。有三種方式進入初始化程序:一是上電復位,二是硬件復位;三是軟件復位,即在運行期間通過給CAN控制器發一個復位請求,置復位請求位為1。在復位期間必須初始化的寄存器有控制寄存器CTL、發送控制寄存器TCR、接收中斷允許寄存器RIER、總線定時寄存器BTR、驗收控制寄存器IDAC、驗收寄存器IDAR、驗收屏蔽寄存器DMR等。

        主節點CAN數據接收采用中斷方式,MCU內部的CAN控制器具有雙緩沖接收結構,對總線數據具有一定的緩存能力,通常系統采用主程序查詢方式對接收數據進行處理,并用廣播方式發送,對特殊數據采用遠程幀申請方式,這樣更有利于程序對多個任務的結構化管理,其程序流程圖如圖3所示。

        CAN總線以報文為單位進行數據傳輸,節點對總線的訪問采取位仲裁方式。報文起始發送節點標識符可分為功能標識符和地址標識符。CAN協議的最大特點是打破了傳統的節點地址編碼方式,而擴展了對通訊數據進行編碼的方式。采用這種方式可使不同的節點同時接收到相同的數據。總線采用CAN2.0B協議,數據標識符用29位二進制表示,即可定義229個不同的數據類型,即使對未來更復雜的汽車控制網絡其容量也足夠了。標識符的值越小,幀數據的優先級越高。通過數據鏈路控制,每個接收器完成幀接收濾波確定此幀數據是否有效。CAN控制器監聽總線電平決定發送接收是否有效,實際汽車應用中一般采用不冗余的通訊線路,而CAN協議提供強大的出錯診斷機制,在保證數據通訊的可靠性方面起了重要作用。


      圖3 CAN通信程序流程圖

      3 結束語

        CAN總線技術,是工業控制與計算機網絡兩者邊緣的產物。無論是從網絡的結構、協議、實時性、還是適應性、靈活性、可靠性乃至成本等,工業控制的底層都有它的特殊性,特別是汽車工業中,要傳輸的信息幀都短小,要求實時性很強、可靠性高,CAN總線協議作為一種簡單而可靠的通訊協議,在車用電控單元和儀表上有很好的應用前景。本文介紹的CAN接口電路與通訊軟件結構對其他微處理器系統來說,加以適當的修改也是適用的。由于在實際的車用電氣環境中,需要考慮溫度、電磁干擾、電源等因素,設計時應考慮軟、硬件的抗干擾能力。

      參考文獻

        [1] 史久根 張培仁 陳真勇,CAN現場總線系統設計技術,北京:國防工業出版社,2004

        [2] 楊國田 白焰,摩托羅拉68HC12系列微控制器原理、應用與開發技術,北京:中國電力出版社,2003

        [3] 李剛炎 宋葉瓊 金海松,CAN及其在轎車中央控制系統中的應用,武漢汽車工業大學學報,2000年2月

      文章版權歸西部工控xbgk所有,未經許可不得轉載。

      主站蜘蛛池模板: 熟女少妇丰满一区二区| 国产精品亚洲一区二区三区 | 国产精品一区二区综合| 在线视频亚洲一区| 国产成人精品久久一区二区三区| 国产成人av一区二区三区在线观看| 国产精品亚洲午夜一区二区三区| 国产综合无码一区二区三区| 视频一区二区在线观看| 午夜一区二区在线观看| 色欲AV蜜桃一区二区三| 久久综合亚洲色一区二区三区| 精品一区二区三区中文字幕| 久久亚洲色一区二区三区| 一区二区在线免费视频| 国产麻豆剧果冻传媒一区| 91在线精品亚洲一区二区| 秋霞午夜一区二区| 精品国产一区二区三区久久| 波多野结衣av高清一区二区三区| 一区二区三区视频| 久热国产精品视频一区二区三区| 亚洲一区综合在线播放| 日本一区二区三区在线观看 | 亚洲一区中文字幕在线观看| 国产一区二区高清在线播放| 中文字幕一区精品| 中文字幕日本精品一区二区三区 | 影音先锋中文无码一区| 国产日韩一区二区三区| 无码国产精品久久一区免费| 亚洲.国产.欧美一区二区三区| 亚洲AV日韩综合一区| 国产一区风间由美在线观看| 免费萌白酱国产一区二区| 中文字幕无线码一区| 无码欧精品亚洲日韩一区| 精品视频一区二区三区四区| 暖暖免费高清日本一区二区三区| 国产一区二区三区在线观看免费| 一级毛片完整版免费播放一区|