CAN總線由哪些幀格式組成?各自有什么特性?
在下述的內(nèi)容中,小編將會對CAN總線的相關(guān)消息予以報道,如果CAN總線是您想要了解的焦點(diǎn)之一,不妨和小編共同閱讀這篇文章哦。
一、CAN總線
CAN總線的物理層是將ECU(Electronic Control Unit-電子控制單元,又稱“行車電腦”、“車載電腦”等)連接至總線的驅(qū)動電路。ECU的總數(shù)將受限于總線上的電氣負(fù)荷。物理層定義了物理數(shù)據(jù)在總線上各節(jié)點(diǎn)間的傳輸過程,主要是連接介質(zhì)、線路電氣特性、數(shù)據(jù)的編碼/解碼、位定時和同步的實(shí)施標(biāo)準(zhǔn)。
理論上,CAN總線上的節(jié)點(diǎn)數(shù)幾乎不受限制,可達(dá)到2000個,實(shí)際上受電氣特性的限制,最多只能接100多個節(jié)點(diǎn)。
CAN的數(shù)據(jù)鏈路層是其核心內(nèi)容,其中邏輯鏈路控制(LOagie Link Control,LLC)完成過濾、過載通知和管理恢復(fù)等功能,媒體
訪問控制(Medium Access Control,MAC)子層完成數(shù)據(jù)打包/解包、幀編碼、媒體訪問管理、錯誤檢測、錯誤信令、應(yīng)答、串并轉(zhuǎn)換等功能。這些功能都是圍繞信息幀傳送過程展開的。
CAN總線的特點(diǎn)包括:
1、具有實(shí)時性強(qiáng)、傳輸距離較遠(yuǎn)、抗電磁干擾能力強(qiáng)、成本低等優(yōu)點(diǎn);
2、采用雙線串行通信方式,檢錯能力強(qiáng),可在高噪聲干擾環(huán)境中工作;
3、具有優(yōu)先權(quán)和仲裁功能,多個控制模塊通過CAN 控制器掛到CAN-bus 上,形成多主機(jī)局部網(wǎng)絡(luò);
4、可根據(jù)報文的ID決定接收或屏蔽該報文;
5、可靠的錯誤處理和檢錯機(jī)制;
6、發(fā)送的信息遭到破壞后,可自動重發(fā);
7、節(jié)點(diǎn)在錯誤嚴(yán)重的情況下具有自動退出總線的功能;
8、報文不包含源地址或目標(biāo)地址,僅用標(biāo)志符來指示功能信息、優(yōu)先級信息。
二、幀格式及其特性
數(shù)據(jù)幀由七種不同的位域(Bit Field)組成:幀起始(Start of )、仲裁域(Arbitration Field)、控制域(Control Field)、數(shù)據(jù)域(DataField)、CRC域(CRC Field)、應(yīng)答域(ACK Field)和幀結(jié)尾(End of )。數(shù)據(jù)域的長度可以為0~8個字節(jié)。
1)幀起始(SOF):幀起始(SOF)標(biāo)志著數(shù)據(jù)幀和遠(yuǎn)程幀的起始,僅由一個“顯性”位組成。在CAN的同步規(guī)則中,當(dāng)總線空閑時(處于隱性狀態(tài)),才允許站點(diǎn)開始發(fā)送(信號)。所有的站點(diǎn)必須同步于首先開始發(fā)送報文的站點(diǎn)的幀起始前沿(該方式稱為“硬同步”)。
2)仲裁域:仲裁域由標(biāo)識符和RTR位組成,標(biāo)準(zhǔn)幀格式與擴(kuò)展幀格式的仲裁域格式不同。標(biāo)準(zhǔn)格式里,仲裁域由1l位標(biāo)識符和RTR位組成。標(biāo)識符位有ID28~I(xiàn)Dl8。擴(kuò)展幀格式里,仲裁域包括29位標(biāo)識符、SRR位、IDE(Identifier Extension,標(biāo)志符擴(kuò)展)位、RTR位。其標(biāo)識符有ID28~I(xiàn)DO。為了區(qū)別標(biāo)準(zhǔn)幀格式和擴(kuò)展幀格式,CANl.0~1.2版本協(xié)議的保留位r1現(xiàn)表示為IDE位。IDE位為顯性,表示數(shù)據(jù)幀為標(biāo)準(zhǔn)格式;IDE位為隱性,表示數(shù)據(jù)幀為擴(kuò)展幀格式。在擴(kuò)展幀中,替代遠(yuǎn)程請求(Substitute Remote Request,SRR)位為隱性。仲裁域傳輸順序?yàn)閺淖罡呶坏阶畹臀唬渲凶罡?位不能全為零。RTR的全稱為“遠(yuǎn)程發(fā)送請求(Remote TransmissionRequest)”。RTR位在數(shù)據(jù)幀里必須為“顯性”,而在遠(yuǎn)程幀里必須為“隱性”。它是區(qū)別數(shù)據(jù)幀和遠(yuǎn)程幀的標(biāo)志。
3)控制域:控制域由6位組成,包括2個保留位(r0、r1同于CAN總線協(xié)議擴(kuò)展)及4位數(shù)據(jù)長度碼,允許的數(shù)據(jù)長度值為0~8字節(jié)。
4)數(shù)據(jù)域:發(fā)送緩沖區(qū)中的數(shù)據(jù)按照長度代碼指示長度發(fā)送。對于接收的數(shù)據(jù),同樣如此。它可為0~8字節(jié),每個字節(jié)包含8位,首先發(fā)送的是MSB(最高位)。
5)CRC校驗(yàn)碼域:它由CRC域(15位)及CRC邊界符(一個隱性位)組成。CRC計算中,被除的多項(xiàng)式包括幀的起始域、仲裁域、控制域、數(shù)據(jù)域及15位為0的解除填充的位流給定。此多項(xiàng)式被下列多項(xiàng)式X15+X14+X10+X8+X7+X4+X3+1除(系數(shù)按模2計算),相除的余數(shù)即為發(fā)至總線的CRC序列。發(fā)送時,CRC序列的最高有效位被首先發(fā)送/接收。之所以選用這種幀校驗(yàn)方式,是由于這種CRC校驗(yàn)碼對于少于127位的幀是最佳的。
6)應(yīng)答域:應(yīng)答域由發(fā)送方發(fā)出的兩個(應(yīng)答間隙及應(yīng)答界定)隱性位組成,所有接收到正確的CRC序列的節(jié)點(diǎn)將在發(fā)送節(jié)點(diǎn)的應(yīng)答間隙上將發(fā)送的這一隱性位改寫為顯性位。因此,發(fā)送節(jié)點(diǎn)將一直監(jiān)視總線信號已確認(rèn)網(wǎng)絡(luò)中至少一個節(jié)點(diǎn)正確地接收到所發(fā)信息。應(yīng)答界定符是應(yīng)答域中第二個隱性位,由此可見,應(yīng)答間隙兩邊有兩個隱性位:CRC域和應(yīng)答界定位。
7)幀結(jié)束域:每一個數(shù)據(jù)幀或遠(yuǎn)程幀均由一串七個隱性位的幀結(jié)束域結(jié)尾。這樣,接收節(jié)點(diǎn)可以正確檢測到一個幀的傳輸結(jié)束。
以上就是小編這次想要和大家分享的有關(guān)CAN總線的內(nèi)容,希望大家對本次分享的內(nèi)容已經(jīng)具有一定的了解。如果您想要看不同類別的文章,可以在網(wǎng)頁頂部選擇相應(yīng)的頻道哦。