新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > CAN總線學習系列之五——CAN協議簡單介紹

        CAN總線學習系列之五——CAN協議簡單介紹

        作者: 時間:2016-12-14 來源:網絡 收藏
        硬件設計好了,在進行軟件編程之前我們最好對CAN總線的協議有個了解。
        一報文傳送由以下四種幀類型
        1數據幀:數據幀攜帶數據從發送器至接收器。
        2遠程幀:總線單元發出遠程幀,請求發送具有同一識別符的數據幀。
        3錯誤幀:任何單元檢測到一總線錯誤時就發送錯誤幀。
        4超載幀: 用來在先行的和后續的數據幀(或遠程幀)之間提供一附加的延時。

        二幀格式介紹
        1數據幀
        數據幀由7個不同的位場組成,即幀起始、仲裁場、控制場、數據場、CRC場、應答場、幀結束。
        2遠程幀
        遠程幀由6個不同的位場組成,即幀起始、仲裁場、控制場、CRC場、應答場、幀結束。
        3錯誤幀
        錯誤幀由兩個不同的場組成。第一個場是錯誤標志,用做為不同站提供錯誤標志的疊加;第二個場是錯誤界定符。
        4超載幀
        超載幀包括兩個位場:超載標志和超載界定符。

        三幀格式中重點部分介紹
        1幀起始
        幀起始標志數據幀和遠程幀的起始,由一個單獨的“顯性”位組成。由控制芯片完成。
        2仲裁場
        仲裁場包括標識符和遠程發送請求位(RTR)。
        對于CAN2.0A標準,標識符的長度為11位。RTR位在數據幀中必須是顯性位,而在遠程幀必須為隱性位。
        對于CAN2.0,標準格式和擴展格式的仲裁場不同。在標準格式中,仲裁場由11位標識符和遠程發送請求位組成。在擴展格式中,仲裁場由29位標識符和替代遠程請求位(SRR)、標志位(IDE)和遠程發送請求位組成。
        仲裁場的作用之一是說明數據幀或遠程幀發送目的地;之二是指出數據幀或遠程幀。仲裁場的數據由軟件編程配置SJA1000完成。
        3 控制場
        控制場由6個位組成,說明數據幀中有效數據的長度。控制場的數據由軟件編程配置SJA1000完成。
        4數據場
        數據場由數據幀中的發送數據組成。它可以為0~8個字節。數據場的數據由軟件編程配置SJA1000完成。
        5CRC場
        CRC場包括CRC序列,這部分由SJA1000控制芯片完成。
        6應答場
        應答場長度為兩個位,包括應答間隙和應答界定符。由SJA1000控制芯片自動完成。
        7 幀結束
        每一個數據幀和遠程幀均由一標志序列界定,這個標志序列由7個“隱性”位組成。這部分由SJA1000控制芯片自動完成。
        總之,仲裁場、控制場、數據場由軟件編程配置SJA1000完成;幀起始、CRC場、應答場、幀結束由CAN總線控制芯片SJA1000自動完成。

        其中要重點理解的就是數據幀和遠程幀以及組成幀的重要部分。所以初學者首先把這兩種幀格式掌握了,學習CAN總線應該就可以入門了。


        關鍵詞: CAN總線CAN協

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 内丘县| 大名县| 上杭县| 全南县| 大荔县| 南京市| 宾川县| 云南省| 乌拉特前旗| 巴彦淖尔市| 泽州县| 台南市| 湖南省| 都昌县| 正定县| 垣曲县| 安岳县| 嘉善县| 阿瓦提县| 靖边县| 慈溪市| 东乡族自治县| 察雅县| 乾安县| 西充县| 左云县| 株洲市| 米泉市| 陈巴尔虎旗| 巫山县| 无棣县| 河源市| SHOW| 大庆市| 济宁市| 万宁市| 大悟县| 上林县| 建宁县| 安溪县| 黔东|