<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 詳解基于CAN總線(xiàn)的汽車(chē)儀表系統設計―CAN報文傳輸

詳解基于CAN總線(xiàn)的汽車(chē)儀表系統設計―CAN報文傳輸

作者: 時(shí)間:2016-09-12 來(lái)源:網(wǎng)絡(luò ) 收藏

CAN報文傳送

本文引用地址:http://dyxdggzs.com/article/201609/303521.htm

當CAN總線(xiàn)上的一個(gè)節點(diǎn)(站)發(fā)送數據時(shí),它以報文形式廣播給網(wǎng)絡(luò )中所有節點(diǎn)。對每個(gè)節點(diǎn)來(lái)說(shuō),無(wú)論數據是否是發(fā)給自己的,都對其進(jìn)行接收。每組報文開(kāi)頭的n位字符為標識符(擴展幀格式為29位),定義了報文的優(yōu)先級。在同一系統中,標識符是唯一的,不可能有兩個(gè)站發(fā)送具有相同標識符的報文 1241。當幾個(gè)站同時(shí)競爭總線(xiàn)讀取時(shí),這種配置十分重要。當一個(gè)站要向其他站發(fā)送數據時(shí),該站的CPU將要發(fā)送的數據和自己的標識符傳送給本站的CAN 芯片,并處于準備狀態(tài);當他收到總線(xiàn)分配時(shí),轉為發(fā)送報文狀態(tài)。將數據根據協(xié)議組織成一定的報文格式發(fā)出,這時(shí)網(wǎng)上的其他站處于接收狀態(tài)。每個(gè)處于接收狀態(tài)的站對接收到的報文進(jìn)行檢測,判斷這些報文是否是發(fā)給自己的,以確定是否接收處理它。CAN總線(xiàn)以報文為單位進(jìn)行數據傳送,報文的優(yōu)先級結合在標識符(n位或29位)中,具有最低二進(jìn)制數的標識符有最高的優(yōu)先級??偩€(xiàn)讀取中的沖突可通過(guò)位仲裁解決。當幾個(gè)站同時(shí)發(fā)送報文時(shí),發(fā)送優(yōu)先級最高的報文的站將獲得總線(xiàn)控制權。這種非破壞性位仲裁方法的優(yōu)點(diǎn)在于,在網(wǎng)絡(luò )最終確定哪一個(gè)站的報文被傳送以前,報文的起始部分己經(jīng)在網(wǎng)絡(luò )上傳送了。所有未獲得總線(xiàn)讀取權的站都成為具有最高優(yōu)先權報文的接收站,并且不會(huì )在總線(xiàn)再次空閑前發(fā)送報文。

在進(jìn)行數據傳送時(shí),發(fā)出報文的單元稱(chēng)為該報文的發(fā)送器。該單元在總線(xiàn)空閑或丟失仲裁前恒為發(fā)送器。如果一個(gè)單元不是報文發(fā)送器,并且總線(xiàn)不處于空閑狀態(tài),則該單元為接收器。對于報文發(fā)送器和接收器,報文的實(shí)際有效時(shí)刻是不相同的。對于發(fā)送器而一言,如果直到幀結束末尾一直未出錯,則對于發(fā)送器報文是有效的,o如果報文受損,將允許按照優(yōu)先權順序自動(dòng)重發(fā)送。為了能同其他報文進(jìn)行總線(xiàn)訪(fǎng)問(wèn)競爭,總線(xiàn)一旦空閑,重發(fā)送立即開(kāi)始。對于接收器而言,如果知道幀結束的最后一位一直未出錯,則對于接收器的報文是有效的。構成一幀的幀起始、總裁場(chǎng)、控制場(chǎng)、數據場(chǎng)CRC序列均借助位填充規則進(jìn)行編碼。當發(fā)送器在發(fā)送的位流中檢測到5位連續的相同數值時(shí),將自動(dòng)地在實(shí)際發(fā)送位流中插入一個(gè)補碼位。數據幀和遠程幀的其余位場(chǎng)采用固定格式,不進(jìn)行填充。出錯幀和超載幀同樣是固定格式,也不進(jìn)行位填充。報文中的位流按照非歸零(NRz)碼方法編碼,這意味著(zhù)一個(gè)完整位的位電平要么是“0”要么是“1”。報文傳送由4種不同類(lèi)型的幀表示和控制:數據幀攜帶數據由發(fā)送器送至接收器;遠程幀通過(guò)總線(xiàn)單元發(fā)送,以請求發(fā)送具有相同標識符的數據幀;出錯幀由檢測出總線(xiàn)錯誤的任何單元發(fā)出;超載幀用于提供當前的和后續的數據幀的附加時(shí)間延遲。

2.2.6CAN的幀結構

CAN2.OB建立了兩種不同的幀格式(適用于數據幀和遠程幀):一種是具有n位標識符的 Bas1cCAN(標準幀格式),另一種是具有29位標識符的 PeliCAN。

報文傳輸有以下4種不同類(lèi)型的幀:

數據幀 (dataframe):數據幀將數據從發(fā)送器傳輸到接收器;

遠程幀 (remoteframe):總線(xiàn)單元發(fā)出遠程幀,請求發(fā)送具有同一標識符的數據幀;

錯誤幀 (errorframe):任何單元檢測到總線(xiàn)錯誤就發(fā)出錯誤幀;

過(guò)載幀 (overioadframe):過(guò)載幀用在相鄰數據幀或遠程幀之間提供附加的延時(shí)。

1.數據幀

數據幀由7個(gè)不同的位場(chǎng)組成:即幀起始、仲裁場(chǎng)、控制場(chǎng)、數據場(chǎng)、CRC

場(chǎng)、應答場(chǎng)、幀結束。結構如圖2一4所示

標準幀格式與擴展幀格式中仲裁和控制域結構不同,其結構分別如下:

圖2一5標準格式的幀結構

圖2一6擴展格式的幀結構

(1)幀起始 (sOF)標志數據幀和遠程幀的起始,它僅由一個(gè)“1”構成。只有在總線(xiàn)處于空閑狀態(tài)時(shí),才允許節點(diǎn)開(kāi)始發(fā)送。所有節點(diǎn)都必須同步于首先開(kāi)始發(fā)送的那個(gè)節點(diǎn)的幀起始前沿。

(2)仲裁場(chǎng)由標識一符和遠程發(fā)送請求位(RTR)組成。仲裁場(chǎng)如圖2一7所示:

標識符:標識符的長(cháng)度為11位,這些位以從高位到低位的順序發(fā)送,發(fā)送位為ID.0,其中最高7位(ID.10一ID.4)不能全為“1”。RTR位為“O”代表是數據幀,為“1”代表遠程幀。為“0”還是為“1”是由用戶(hù)填寫(xiě)的。

(3)控制場(chǎng)由6位組成,如下圖2一8所示:

(4)數據場(chǎng)由數據幀中被發(fā)送的數據組成,它包括O一8個(gè)字節,每個(gè)字節8位。首先發(fā)送的是最高有效位。

(5)CRC場(chǎng)包括CRC序列,后隨CRC界定符,CRC場(chǎng)結構如下圖2一9所示

(6)應答場(chǎng)(AC均為兩位,包括應答間隙和應答界定符,結構如下圖2一10

(7)幀結束:每個(gè)數據幀和遠程幀均由“1111111”7個(gè)隱性位組成的標志序列界定

2.遠程幀
需要獲得數據的節點(diǎn)可以借助于發(fā)送一個(gè)遠程幀來(lái)請求對應的節點(diǎn)發(fā)送數據給它。遠程幀同樣存在標準的和擴展的兩種格式。在兩種格式下,均由6個(gè)不同的位場(chǎng)組成:幀起始、仲裁場(chǎng)、控制場(chǎng)、CRC場(chǎng)、應答場(chǎng)和幀結束。同數據幀相比較,不同的是:遠程幀的RTR位是“1”(這須由用戶(hù)用程序填充)。遠程幀不存在數據場(chǎng)。DLC的數據值是獨立的,它可以是0一8中的任何數值。遠程幀的組成如下圖2一11所示:


上一頁(yè) 1 2 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>