0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

CAN數(shù)據(jù)幀為什么要分這么多段,每一段都有什么作用?

科技綠洲 ? 來源:網(wǎng)絡整理 ? 作者:網(wǎng)絡整理 ? 2024-07-24 15:03 ? 次閱讀

CAN(Controller Area Network)是一種用于汽車和工業(yè)控制系統(tǒng)的通信協(xié)議。它具有高可靠性、實時性和靈活性等特點,被廣泛應用于汽車、工業(yè)、醫(yī)療等領域。CAN數(shù)據(jù)幀是CAN通信中的基本數(shù)據(jù)單位,它由多個字段組成,每個字段都有其特定的作用。

  1. 幀起始位(SOF)

幀起始位是CAN數(shù)據(jù)幀的第一個位,用于表示一個新幀的開始。在CAN總線上,幀起始位是一個顯式的位,其值為“0”,用于區(qū)分數(shù)據(jù)幀和空閑位。幀起始位的出現(xiàn),通知CAN控制器和CAN節(jié)點,一個新的數(shù)據(jù)幀即將開始傳輸。

  1. 仲裁場(Arbitration Field)

仲裁場是CAN數(shù)據(jù)幀中用于確定數(shù)據(jù)幀優(yōu)先級的部分。它由11位標識符(ID)組成,其中最高位為主導位(DOM,Dominant Bit),其余10位為從屬位(SOM,Subordinate Bit)。在CAN總線上,多個節(jié)點可以同時發(fā)送數(shù)據(jù)幀,但只有一個數(shù)據(jù)幀能夠成功傳輸。仲裁場的作用就是確定哪個數(shù)據(jù)幀具有更高的優(yōu)先級,從而能夠成功傳輸。

在仲裁過程中,主導位的優(yōu)先級高于從屬位。如果兩個數(shù)據(jù)幀的主導位相同,那么比較它們的從屬位,從屬位較小的數(shù)據(jù)幀具有更高的優(yōu)先級。如果兩個數(shù)據(jù)幀的主導位和從屬位都相同,那么它們具有相同的優(yōu)先級,這種情況下,哪個數(shù)據(jù)幀能夠成功傳輸是隨機的。

  1. 控制場(Control Field)

控制場是CAN數(shù)據(jù)幀中用于描述數(shù)據(jù)幀類型和長度的部分。它由6位組成,其中最低位為幀類型位(FT,F(xiàn)rame Type),其余5位為數(shù)據(jù)長度碼(DLC,Data Length Code)。

幀類型位用于區(qū)分數(shù)據(jù)幀和遠程幀。數(shù)據(jù)幀用于傳輸實際的數(shù)據(jù),而遠程幀用于請求其他節(jié)點發(fā)送數(shù)據(jù)。當幀類型位為“0”時,表示這是一個數(shù)據(jù)幀;當幀類型位為“1”時,表示這是一個遠程幀。

數(shù)據(jù)長度碼用于描述數(shù)據(jù)幀中數(shù)據(jù)場的長度。DLC的取值范圍為015,表示數(shù)據(jù)場的長度為08字節(jié)。當DLC為0時,表示數(shù)據(jù)場為空;當DLC為18時,表示數(shù)據(jù)場的長度為18字節(jié);當DLC為9~15時,表示數(shù)據(jù)場的長度為8字節(jié)。

  1. 數(shù)據(jù)場(Data Field)

數(shù)據(jù)場是CAN數(shù)據(jù)幀中用于傳輸實際數(shù)據(jù)的部分。它的大小由控制場中的數(shù)據(jù)長度碼(DLC)確定。數(shù)據(jù)場可以包含0~8字節(jié)的數(shù)據(jù),每個字節(jié)由8位組成。數(shù)據(jù)場可以傳輸各種類型的數(shù)據(jù),如傳感器數(shù)據(jù)、控制命令等。

  1. CRC場(CRC Field)

CRC場是CAN數(shù)據(jù)幀中用于錯誤檢測的部分。它由15位組成,其中前12位為CRC序列(CRC Sequence),后3位為CRC界定符(CRC Delimiter)。CRC序列是通過對數(shù)據(jù)幀中的數(shù)據(jù)進行循環(huán)冗余校驗(Cyclic Redundancy Check)計算得到的,用于檢測數(shù)據(jù)在傳輸過程中是否出現(xiàn)錯誤。CRC界定符是一個固定的位模式,用于標識CRC序列的結束。

  1. ACK場(Acknowledgment Field)

ACK場是CAN數(shù)據(jù)幀中用于確認數(shù)據(jù)幀成功接收的部分。它由2位組成,其中第1位為應答位(ACK Slot),第2位為應答界定符(ACK Delimiter)。當接收節(jié)點成功接收并校驗數(shù)據(jù)幀后,它會在ACK場的應答位發(fā)送一個顯式的“0”位,表示數(shù)據(jù)幀已被成功接收。發(fā)送節(jié)點檢測到這個應答信號后,會認為數(shù)據(jù)幀傳輸成功。

  1. EOF場(End of Frame Field)

EOF場是CAN數(shù)據(jù)幀的最后一個部分,用于表示數(shù)據(jù)幀的結束。它由7個隱式的“1”位組成,用于將數(shù)據(jù)幀與其他幀或空閑位區(qū)分開來。當CAN控制器或節(jié)點檢測到EOF場時,它們會認為當前數(shù)據(jù)幀傳輸結束,準備接收下一個數(shù)據(jù)幀或進入空閑狀態(tài)。

總結:

CAN數(shù)據(jù)幀由多個字段組成,每個字段都有其特定的作用。幀起始位表示數(shù)據(jù)幀的開始;仲裁場用于確定數(shù)據(jù)幀的優(yōu)先級;控制場描述數(shù)據(jù)幀的類型和長度;數(shù)據(jù)場傳輸實際數(shù)據(jù);CRC場用于錯誤檢測;ACK場用于確認數(shù)據(jù)幀的成功接收;EOF場表示數(shù)據(jù)幀的結束。這些字段共同保證了CAN數(shù)據(jù)幀的可靠性、實時性和靈活性,使其成為汽車和工業(yè)控制系統(tǒng)中廣泛使用的通信協(xié)議。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
收藏 人收藏

    評論

    相關推薦

    為什么OLED初始化的時候這么多命令?

    void OLED_Init(void)這個函數(shù)里面要寫的命令好多啊,不知道為什么初始化的時候這么多命令啊??求解具體在數(shù)據(jù)手冊哪幾頁
    發(fā)表于 09-18 23:58

    can的五種介紹

    、can的五種:1.數(shù)據(jù),包括七起始,仲
    發(fā)表于 08-06 09:13

    為什么這么多架構

    問題:為什么這么多架構?webrtc雖然是項主要使用p2p的實時通訊技術,本應該是無中心化節(jié)點的,但是在些大型多人通訊場景,如果都使用端對端直連,端上會遇到很帶寬和性能的問題,
    發(fā)表于 10-29 06:05

    斬波電路把電壓調(diào)成一段一段不連續(xù)的直流電有什么作用呢?

    斬波電路把電壓調(diào)成一段一段不連續(xù)的直流電有什么作用呢?
    發(fā)表于 05-11 17:12

    斬波電路把電壓調(diào)成一段一段不連續(xù)的直流電有什么作用呢?

    斬波電路把電壓調(diào)成一段一段不連續(xù)的直流電有什么作用呢?
    發(fā)表于 05-11 17:13

    基于8051的Proteus仿真-播放一段音樂

    基于8051的Proteus仿真-播放一段音樂
    發(fā)表于 09-01 23:32 ?8次下載

    基于8051的Proteus仿真-演奏一段音階

    基于8051的Proteus仿真-演奏一段音階
    發(fā)表于 09-01 23:37 ?33次下載

    CAN FD結構介紹

    CAN FD結構 CAN FD節(jié)點可以正常收、發(fā)CAN報文,但CAN節(jié)點不能正確收、發(fā)CAN
    的頭像 發(fā)表于 07-18 10:42 ?7311次閱讀
    <b class='flag-5'>CAN</b> FD<b class='flag-5'>幀</b>結構介紹

    一幀CAN報文多少字節(jié)

    一幀CAN FD報文位數(shù) 根據(jù)CAN FD結構組成,可以算出一幀CAN FD報文位數(shù):
    的頭像 發(fā)表于 07-18 10:48 ?7733次閱讀

    CAN協(xié)議數(shù)據(jù)的介紹

    通過 CAN 總線傳輸數(shù)據(jù)是需要按照定協(xié)議進行的,CAN 協(xié)議提供了 5種格式來傳輸數(shù)據(jù)
    的頭像 發(fā)表于 07-25 10:36 ?1w次閱讀
    <b class='flag-5'>CAN</b>協(xié)議<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>幀</b>的介紹

    CAN協(xié)議的幾種格式介紹

    ,檢查的傳輸錯誤的。⑤、ACK ,表示確認正常接收的。⑥、結束,表示數(shù)據(jù)
    的頭像 發(fā)表于 07-25 10:38 ?2309次閱讀
    <b class='flag-5'>CAN</b>協(xié)議的幾種<b class='flag-5'>幀</b>格式介紹

    高速CAN速率 CAN總線位的4

    )組成,Tq 是 CAN 總線的最小時間單位。由位構成,個位由 4 個構成,每個又由若干個 Tq組成,這個就是位時
    的頭像 發(fā)表于 07-25 10:44 ?1689次閱讀
    高速<b class='flag-5'>CAN</b>速率 <b class='flag-5'>CAN</b>總線位的4<b class='flag-5'>段</b>

    什么是一段過流、二過流、三過流?

    路出口一段距離; 2,帶0.3-0.5秒左右的時限跳閘,般保護全線路,有可能還有少許延伸; 3,帶N秒的延遲跳閘,般是按照躲過最大負
    的頭像 發(fā)表于 10-16 10:25 ?1702次閱讀

    CAN數(shù)據(jù)的各個域及其作用

    CAN數(shù)據(jù)由多個域組成,包括起始、仲裁域、控制域、數(shù)據(jù)域和結束。每個域
    的頭像 發(fā)表于 07-24 15:10 ?837次閱讀

    can網(wǎng)絡數(shù)據(jù)的特點

    特點,在分布式系統(tǒng)中得到了廣泛應用。 數(shù)據(jù)的重要性 :數(shù)據(jù)CAN網(wǎng)絡中用于數(shù)據(jù)傳輸?shù)幕締?/div>
    的頭像 發(fā)表于 07-24 15:18 ?299次閱讀