《電子技術(shù)應用》
您所在的位置:首頁 > 測試測量 > 業(yè)界動態(tài) > 一條CAN報文到底有多少位

一條CAN報文到底有多少位

2017-06-10
來源:ZLG致遠電子

  CAN-bus總線是應用最廣泛的現(xiàn)場總線之一,而很多非常熟練的CAN工程師,面對一條CAN報文到底有多少位的問題時,卻不能非常準確地回答。今天我們就從最基本的幀格式來解惑一條CAN報文的到底有多少位。

  CAN報文幀分為幾種呢?CAN-bus通信幀共分為數(shù)據(jù)幀、遠程幀、錯誤幀、過載幀和幀間隔。而數(shù)據(jù)幀和遠程幀又有標準幀和擴展幀兩種。其幀類型以及用途如表 1所示:

  表 1  幀類型及用途

1.png

  數(shù)據(jù)幀

  數(shù)據(jù)幀從結(jié)構(gòu)上看分為7段,分別為起始段、仲裁段、控制段、數(shù)據(jù)段、CRC校驗段、ACK應答段、幀結(jié)束段。如圖1:

2.png

  圖 1  標準數(shù)據(jù)幀跟擴展數(shù)據(jù)幀結(jié)構(gòu)圖

  幀起始段:該段由單個顯性位構(gòu)成,在總線空閑時才允許發(fā)送,所有節(jié)點必須同步于開始發(fā)送的數(shù)據(jù)幀的起始位;

  標準幀仲裁段:標準幀的仲裁段由11位ID碼和一個顯性位RTR碼組成,RTR碼為遠程幀標識位;

  擴展幀仲裁段:擴展幀的仲裁段由29位ID碼、一位顯性的SRR碼、一位隱性的IDE碼和一位顯性的RTR碼組成;

  標準幀控制段:標準幀的控制段由單位顯性的IDE、保留位r0和4位數(shù)據(jù)長度代碼DLC組成,DLC數(shù)據(jù)段采用BCD編碼;

  擴展幀控制段:擴展幀的控制段由兩個保留位r1和r0和4位的DLC數(shù)據(jù)段組成,r1和r0都為顯性填充,接收時無論保留位是顯性還是隱性都沒有影響;

  數(shù)據(jù)段:一個數(shù)據(jù)段為8個字節(jié);

  CRC校驗段:CRC校驗段由15位的校驗碼和1個隱性位填充的CRC界定符組成,CRC校驗范圍為幀起始、仲裁段、控制段和數(shù)據(jù)段;

  ACK段:ACK段由ACK碼和一個隱性位ACK界定符組成,發(fā)送節(jié)點在ACK段發(fā)送兩個隱性位,接收節(jié)點在收到的報文ACK前面的幀格式?jīng)]有錯誤時,他將發(fā)出ACK碼為顯性位的報文。

  幀結(jié)束段:由7個連續(xù)的隱性位組成。

  遠程幀

  遠程幀幀格式跟數(shù)據(jù)幀類似,也分為標準幀跟擴展幀,但是遠程幀屬于被請求發(fā)送節(jié)點發(fā)送的報文,而數(shù)據(jù)幀是發(fā)送節(jié)點的報文。如圖 2,遠程幀沒有數(shù)據(jù)幀。

3.png

  圖 2  標準遠程幀和擴展遠程幀的結(jié)構(gòu)圖

  參照數(shù)據(jù)幀可了解遠程幀的結(jié)構(gòu),但是兩者之間也有不同:

  SRR段和RTR段:數(shù)據(jù)幀是顯性電平,遠程幀是隱性電平;

  節(jié)點性質(zhì):數(shù)據(jù)幀是發(fā)送節(jié)點發(fā)出的報文格式,遠程幀是被請求發(fā)送的節(jié)點發(fā)送的報文格式;

  CRC校驗范圍:數(shù)據(jù)幀是幀起始、仲裁段、控制段和數(shù)據(jù)段,而遠程幀則是幀起始、仲裁段和控制段。

  了解了數(shù)據(jù)幀跟遠程幀的標準報文格式后,有些人可能會問了,我有時看到的報文為什么跟你的標準格式的位數(shù)不一樣呢?

  位填充

  CAN-bus屬于異步串行通信,這種通信方式?jīng)]有時鐘線,所以各個收發(fā)器的時鐘不可能完全一致,時鐘不一致就會造成偏差。所以為了解決這個問題,CAN總線采用同步的方式來校準時鐘。CAN-bus規(guī)定信號的跳變沿為同步信號,只要信號發(fā)生變化,節(jié)點時鐘就被同步一次。CAN-bus還規(guī)定同步的最大周期為5個位。

  但是問題來了,要是出現(xiàn)連續(xù)性的5個位甚至更長時間沒有邊沿跳變(例如數(shù)據(jù)段全為0x56),那該如何解決呢?CAN-bus對這種情況又進行了規(guī)范,如果傳輸?shù)奈恍盘栠B續(xù)5個位是相同的,就要插入一個電平相反的位,這個就是CAN-bus的“位填充”規(guī)則。如圖 4。

4.png

  圖 4  位填充規(guī)則

  0x00和0x55

  由于位填充規(guī)則的存在,所以就存在即使兩個幀都是標準數(shù)據(jù)幀,但發(fā)送不同ID或者數(shù)據(jù)段的時候報文時間會不同,圖5為1M波特率下ID跟數(shù)據(jù)都為0x00的標準數(shù)據(jù)幀報文。原本108個位的標準數(shù)據(jù)幀的真實的報文時間為123us。

5.png

  圖 5 標準數(shù)據(jù)幀0x00報文

  而0x55的標準數(shù)據(jù)幀報文格式則如圖 6:ID為555H,數(shù)據(jù)段為55H,報文沒有出現(xiàn)連續(xù)的相同位,所以填充位最少,8位的數(shù)據(jù)段位時間為標準的8us,全報文時間為108us。

6.png

  圖 6  標準數(shù)據(jù)幀0x55報文

  下表給出了標準數(shù)據(jù)幀、擴展數(shù)據(jù)幀、標準遠程幀、擴展遠程幀四種幀類型在發(fā)送不同ID和數(shù)據(jù)時位時間的差別。

7.png

  表 2  不同ID和數(shù)據(jù)位填充位數(shù)不一樣

  通過CAN-Scope總線分析儀的報文接收和示波器,可以將每一幀報文跟波形做一一對應,快速分析總線上的報文時間和波形情況,實現(xiàn)CAN總線的快速故障定位和干擾排除。


本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經(jīng)濟損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。
主站蜘蛛池模板: 欧美亚洲另类在线 | 99精品视频观看 | 精品国产a| 久久精品不卡 | 国产精品日韩欧美一区二区 | 最近2019中文字幕免费看最新 | 夜夜揉揉日日人人视频 | 日本人欧美xx | 在线欧美视频免费观看国产 | 国产成人啪精品 | 国产成人精品怡红院 | 日韩亚洲国产欧美精品 | 中文精品久久久久国产网站 | 一级黄色片在线 | 97影院理伦在线观看 | 九九免费精品视频在这里 | 免费网站看v片在线成人国产系列 | h成人在线| 欧美一区二区三区香蕉视 | 日本成日本片人免费 | 免费一级欧美大片在线观看 | 欧美视频高清在线观看 | 美女视频黄色网址 | 中文天堂在线最新2022更新 | 成人免费一区二区三区在线观看 | 好男人在线社区www免费看 | 99色99| 日本成人久久 | 手机在线视频一区 | 久久免费精品高清麻豆 | 成人日韩 | 天天槽夜夜槽槽不停 | 日本久久一区二区 | 在线 你懂 | 日韩有码第一页 | 国产99re在线观看只有精品 | 精品在线一区二区三区 | 青草娱乐极品免费视频 | 最近免费中文完整视频观看 | 国产欧美成人免费观看视频 | 777毛片|