can幀格式 dlc Can報文及結構

2021-10-12 15:29:04 字數 1397 閱讀 7005

can資訊包格式說明:

can資訊包分為兩部分:資訊部分和資料部分。

頭兩個位元組為資訊部分,其前十一位為識別符號,識別符號中的前八位用作接收判斷,應包含本資訊包的目的站位址。

然後是一位rtr位(應設為0),最後是四位的dlc(資料長度位,即所發資料的實際長度,單位:位元組)。

其餘八個位元組是資料部分,存有實際要發的資料。詳見下圖:

在進行資料傳送時,發出報文的單元稱為該報文的傳送器。該單元在匯流排空閒或丟失仲裁前恒為傳送器。如果乙個單元不是報文傳送器,並且匯流排不處於空閒狀態,則該單元為接收器。

對於報文傳送器和接收器,報文的實際有效時刻是不同的。對於傳送器而言,如果直到幀結束末尾一直末出錯,則對於傳送器報文有效。如果報文受損,將允許按照優先權順序自動重傳送。為了能同其他報文進行匯流排訪問競爭,匯流排一旦空閒,重傳送立即開始。

對於接收器而言,如果直到幀結束的最後一位一直末出錯,則對於接收器報文有效。

構成一幀的幀起始、仲裁場、控制場、資料場和crc序列均借助位填充規則進行編碼。

當傳送器在傳送的位流中檢測到5位連續的相同數值時,將自動地在實際傳送的位流中插入乙個補碼位。

資料幀和遠端幀的其餘位場採用固定格式,不進行填充。出錯幀和超載幀同樣是固定格式,也不進行位填充。

報文傳送由 4 種不同型別的幀表示和控制:資料幀攜帶資料由傳送器至接收器;

遠端幀通過匯流排單元傳送,以請求傳送具有相同識別符號的資料幀;

出錯幀由檢測出匯流排錯誤的任何單元傳送;

超載幀用於提供當前的和後續的資料幀的附加延遲。

資料幀和遠端幀借助幀間空間與當前幀分開。

同步機制

can匯流排的位同步只有在節點檢測到「隱性位」(邏輯1)到「顯性位」(邏輯0)的跳變時才會產生,當跳變沿不位於位週期的同步段之內時將會產生相位誤差。該相位誤差就是跳變沿與同步段結束位置之間的距離。

如果跳變沿發生在同步段之後取樣點之前為正的相位誤差;如果跳變沿位於同步段之前取樣點之後為負的相位誤差。

相位誤差源於節點的振盪器漂移,網路節點之間的傳播延遲以及雜訊干擾等。can協議規定了兩種型別的同步:硬同步和重同步。

硬同步硬同步只在匯流排空閒時通過乙個下降沿(幀起始)來完成,此時不管有沒有相位誤差,所有節點的位時間重新開始。強迫引起硬同步的跳變沿位於重新開始的位時間的同步段之內。

重同步在訊息幀的隨後位中,每當有從「隱性位」到「顯性位」的跳變,並且該跳變落在了同步段之外,就會引起一次重同步。重同步機制可以根據跳變沿增長或者縮短位時間以調整取樣點的位置,保證正確取樣。

can協議的位填充機制除實現仲裁場、控制場、資料場和crc序列的資料的透明性外,還增加了從「隱性位」到「顯性位」跳變的機會,也就是增多重同步的數量,提高同步質量。嵌入式基地:can協議規範​zhuanlan.zhihu.com嵌入式基地:can協議基本概念​zhuanlan.zhihu.com免費分享海量學習資源​mp.weixin.qq.com

can幀格式 dlc CAN報文格式

can協議的報文傳輸過程中有 資料幀 遠端幀 錯誤幀 過載幀和幀間隔。1.資料幀 用於傳送節點向接收節點傳送資料的幀。2.遠端幀 用於接收節點向具有相同id的傳送節點傳送資料的幀。3.錯誤幀 用於當檢測出錯誤時向其他節點通知錯誤的幀。4.過載幀 用於接收節點通知其尚未做好準備的幀。5.幀間隔 用於將...

CAN報文格式

can協議的報文傳輸過程中有 資料幀 遠端幀 錯誤幀 過載幀和幀間隔。1.資料幀 用於傳送節點向接收節點傳送資料的幀。2.遠端幀 用於接收節點向具有相同id的傳送節點傳送資料的幀。3.錯誤幀 用於當檢測出錯誤時向其他節點通知錯誤的幀。4.過載幀 用於接收節點通知其尚未做好準備的幀。5.幀間隔 用於將...

CAN匯流排之CAN的報文格式

來自部落格 一 幀can協議的報文傳輸主要由下面的4種幀來實現 資料幀 從傳送端攜帶資料到接收端。遠端幀 匯流排單元發出遠端幀,請求傳送具有同一識別符的資料幀。錯誤幀 任何單元檢測到一匯流排錯誤就發出錯誤幀。過載幀 過載幀用以在先行的和後續的資料幀 或遠端幀 之間提供一附加的延時。同時幀間空間用來間...