新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 汽車CAN總線的數(shù)據(jù)幀結(jié)構(gòu)

        汽車CAN總線的數(shù)據(jù)幀結(jié)構(gòu)

        作者: 時間:2016-12-14 來源:網(wǎng)絡(luò) 收藏
        汽車CAN總線的數(shù)據(jù)幀結(jié)構(gòu)
        信息想要在CAN-BUS局域網(wǎng)內(nèi)有效、快速的傳遞,就要把它轉(zhuǎn)換為適合CAN-BUS總線的傳輸格式。我們把這種信息稱之為報文,把適合CAN-BUS總線傳輸?shù)母袷椒Q之為報文格式。總線上的信息是以不同的固定報文格式發(fā)送的,但長度受限。
        報文傳輸格式有以下四種不同的幀類型所表示和控制,所謂幀就是一個計量單位,它的數(shù)據(jù)由兩部分組成:幀頭和幀數(shù)據(jù)。
        數(shù)據(jù)幀:數(shù)據(jù)幀攜帶數(shù)據(jù),是數(shù)據(jù)在網(wǎng)絡(luò)上傳輸時的一個數(shù)據(jù)單元。
        遠程幀:總線單元發(fā)送的遠程幀,請求發(fā)送具有統(tǒng)一識別符的數(shù)據(jù)幀。
        錯誤幀:任何電控單元檢測到總線錯誤就會發(fā)出錯誤幀。
        過載幀:用以在先行和后續(xù)的數(shù)據(jù)幀之間提供以附加的延時。
        本次我們主要講述有關(guān)數(shù)據(jù)幀的相關(guān)內(nèi)容。數(shù)據(jù)幀由7個不同的位場組成:
        1.幀起始SOF(START OF FRAME)
        標志數(shù)據(jù)幀和遠程幀的起始,由單個顯性位構(gòu)成。只有當總線位空閑狀態(tài)時,才允許節(jié)點開始發(fā)送,所有節(jié)點必須同步于首先發(fā)送節(jié)點的幀起始引起的上升沿。
        2.仲裁場AF(Arbitration Field)
        在CAN2.0A中,仲裁場由11位標識符和遠程發(fā)送請求位RTR(Remote Transmission Request)組成;而在CAN2.0B中,仲裁場由29位標識符和遠程發(fā)送請求位RTR構(gòu)成。也就是說CAN協(xié)議支持兩種報文格式,其唯一的區(qū)別是標識符(ID)長度的不同,標準格式為11位,擴展格式為29位。
        (1)標識符ID(Identifier):標識符分為標準格式標識符和擴展格式標識符。在CAN2.0A中標準格式標識符的長度為11位,這些位以ID-10至ID-0的順序發(fā)送,最低位為ID-0,其中最高7位(ID-10到ID-4)必須不是全隱性。
        (2)遠程發(fā)送請求位RTR (Remote Transmission Request):在數(shù)據(jù)幀中,遠程發(fā)送請求位必須是顯性電平,而在遠程幀中,遠程發(fā)送請求位必須是隱性電平。在擴展格式中,先發(fā)送基本標識符,其后是標識符擴展位和替代遠程請求位。擴展標識符在替代遠程請求位后發(fā)送。
        (3)替代遠程請求位SRR (Substitute Remote Request): SRR位為隱性位。在擴展格式中,它在標準格式的遠程發(fā)送請求位位置上被發(fā)送,并替代標準格式中的遠程發(fā)送請求位。這樣,可以解決標準格式和擴展格式的沖突。
        (4)標識符擴展位IDE (Identifier Extension Bit): IDE位對于擴展格式而言屬于仲裁場,對于標準格式來說屬于控制場。標識符擴展位在標準格式中以顯性電平發(fā)送,而在擴展格式中為隱性電平。
        3.控制場CF(Control Field)
        兩種格式的控制場格式不同。在標準格式中,控制場包括DLC (Data Length Code)、IDE位(顯性)和保留位0r(顯性)。在擴展格式中,包括DLC和兩個保留位1r、
        2r,這兩個保留位必須發(fā)送顯性電平。DLC為4位,允許使用0到8之間的數(shù)字。
        4.數(shù)據(jù)場DF(Data Field)
        數(shù)據(jù)場由數(shù)據(jù)幀中被發(fā)送的數(shù)據(jù)組成,它可包括從0到8個字節(jié),每個字節(jié)8位,其中首先發(fā)送最高有效位。
        5.循環(huán)冗余校驗場CRC (Cyclic Redundancy Check)
        CRC場包括15位CRC序列和1位CRC界定符(隱性)。CRC生成器所使用的多項式是:X15 + X14+ X10 + X8 + X7 + X4 + X3 + 1,這個多項式除法的余數(shù)就是發(fā)送到總線上的“循環(huán)冗余校驗碼”,它只用于檢測錯誤而不能校正。
        6.應(yīng)答場ACK (Acknowledge)
        ACK場為兩位,包括應(yīng)答間隙(ACK SLOT)和應(yīng)答界定符(ACK DELIMITER)。在應(yīng)答場里,發(fā)送站發(fā)送兩個隱性位。當接收器接收到有效的報文時,接收器就會在應(yīng)答間隙期間發(fā)送應(yīng)答信號,向發(fā)送器發(fā)送一顯性位以示回答。
        7.幀結(jié)束EOF (END OF FRAME)
        每個數(shù)據(jù)幀和遠程幀均由一標志序列界定,也就是幀結(jié)尾,這個標志序列由7個隱性位組成。



        評論


        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 正阳县| 保靖县| 贡山| 阳朔县| 大埔县| 涟源市| 沽源县| 留坝县| 闽清县| 循化| 古交市| 莆田市| 古蔺县| 青海省| 大同市| 土默特右旗| 乌兰县| 清水县| 景宁| 高碑店市| 凤山市| 青龙| 正阳县| 奉贤区| 平凉市| 陕西省| 绥江县| 邵东县| 贵溪市| 花莲市| 山东省| 高阳县| 桃江县| 西畴县| 芜湖市| 仁化县| 宾阳县| 华阴市| 离岛区| 五原县| 横峰县|