新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > CAN總線學習系列之— CAN總線特點介紹

        CAN總線學習系列之— CAN總線特點介紹

        作者: 時間:2016-12-14 來源:網絡 收藏
        CAN 總線作為一種工業界的流行總線廣泛應于工業自動化、多種控制設備、交通工具、醫療儀器以及建筑、環境控制等各個行業中,它是是一種多主機局域網,所以這樣 一種總線的潛力是很巨大的,接下來將寫幾篇入門的小文章,來介紹一下CAN的學習和開發方法,主要是配合我們的開發板,其實入門還是很容易的,通過這幾篇 文章如果你能建立起一個初步的概念,能夠自己搭起自己的一個節點(包括硬件和軟件),那就說明你學會了CAN的基本開發技術,實際的工業現場CAN的開發 不是那么簡單,包括很多要考慮的因素如隔離、可靠性等,但是我們作為初學者建立起基本的概念還是很重要的,基礎一旦打好,等到了實際工作中,就會如魚得 水,所以希望正要或是想開發CAN的朋友們能夠喜歡這一系列小文章,如果某一篇甚至是某一句話能夠給你帶來啟迪,那將是我最最高興的,希望大家踴躍評論或 是參與討論,給我一下寫下去的信心,呵呵,可以加入我們的群。
        下面正題正式開始嘍!第一篇,當然要介紹一下什么是“能”總線(CAN總線)呵呵
        CAN總線的特點
        CAN(Controller Area Network)總線,也稱控制器局部網,屬于現場總線的范疇,它是一種有效支持分布控制或實時控制的串行通信網絡。由于采用了許多新技術及獨特的設 計,CAN總線與一般的通信總線相比,它的數據通信具有突出的可靠性、實時性和靈活性。其特點如下:
        CAN為多主工作方式,網絡上任何一個節點均可在任意時刻主動地向 網絡上其它節點發送信息,而不分主從。
        在報文標識符上,CAN上的節點分成不同的優先級,可滿足不同的實時要求,優先級高的數據最多可在134us內得到傳輸。
        CAN采用非破壞總線仲裁技術。當多個節點同時向總線發送信息出現沖突時,優先級低的節點會主動地退出發送,而優先級高的節點可以不受影響的繼續傳輸數據,從而大大節省了總線沖突的仲裁時間。尤其是網絡負載很重的情況下,也不會出現網絡癱瘓情況(以太網則可能)。
        CAN節點只需通過報文的標識符濾波即可實現點對點、一點對多點及全局廣播等幾種方式傳送接收數據。
        CAN的直接通信距離最遠可達10km(速率5kbps以下);通信速率最高可達1Mbps(此時通信距離最長為40m)。
        CAN上的節點數主要取決于總線驅動電路,目前可達110個。在標準幀的報文標識符有11位,而在擴展幀的報文標識符(29位)個數幾乎不受限制。
        報文采用短幀格式,傳輸時間短,受干擾概率低,保證了數據出錯率極低。
        CAN的每幀信息都有CRC校驗及其他檢錯措施,具有極好的檢錯效果。
        CAN的通訊介質可以為雙絞線、同軸電纜或光纖,選擇靈活。
        CAN節點在錯誤幀的情況下具有自動關閉輸出功能,而總線上其它節點的操作不受影響。
        CAN總線具有較高的性能價格比。它結構簡單,器件容易購置,每個節點的價格較低,而且開發技術容易掌握,能充分利用現有的單片機開發工具。
        CAN 協議也是建立在國際標準組織的開放系統互聯模型基礎上的。不過,由于CAN的數據結構簡單,又是范圍較小的局域網,其模型結構只取OSI底層的物理層、數 據鏈路層和應用層3層,不需要其他中間層,應用層數據直接取自數據鏈路層或直接向數據鏈路層寫數據。結構層次少,利于系統中實時控制信號的傳送。
        CAN總線的位數值表示
        CAN 總線上采用“顯性”(Dominant)和“隱性”(Recessive)兩個互補的邏輯值表示“0”和“1”。當總線上出現同時發送顯性和隱性位時,其 結果是總線數值為顯性(即“0”與“1”的結果為“0”)。如下圖所示,VCAN-H和VCAN-L為CAN總線收發器和總線間的兩接口引腳,信號是以兩 線間的“差分”電壓形式出現。在隱性狀態,VCAN-H和VCAN-L被固定在平均值附近,Vdiff近似于0。在總線空閑或隱性期間,發送隱性位。顯性 位以大于最小閥值的差分電壓表示。


        關鍵詞: CAN總線特點介

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 呼伦贝尔市| 武隆县| 陆川县| 溧水县| 澜沧| 凤阳县| 申扎县| 图片| 北票市| 竹溪县| 社旗县| 柳州市| 娄底市| 临海市| 沙坪坝区| 晋宁县| 合阳县| 延长县| 巴南区| 喀喇沁旗| 汝州市| 南陵县| 扎鲁特旗| 宜州市| 沧州市| 仪陇县| 定兴县| 遂川县| 墨竹工卡县| 资阳市| 龙胜| 句容市| 海丰县| 哈巴河县| 开封市| 怀化市| 德格县| 炎陵县| 武宣县| 兰考县| 柘荣县|