當(dāng)前位置:首頁 > 嵌入式 > 嵌入式硬件
[導(dǎo)讀]CAN報(bào)文傳送當(dāng)CAN總線上的一個(gè)節(jié)點(diǎn)(站)發(fā)送數(shù)據(jù)時(shí),它以報(bào)文形式廣播給網(wǎng)絡(luò)中所有節(jié)點(diǎn)。對每個(gè)節(jié)點(diǎn)來說,無論數(shù)據(jù)是否是發(fā)給自己的,都對其進(jìn)行接收。每組報(bào)文開頭的n位字符

CAN報(bào)文傳送

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

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

2.2.6CAN的幀結(jié)構(gòu)

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

報(bào)文傳輸有以下4種不同類型的幀:

數(shù)據(jù)幀 (dataframe):數(shù)據(jù)幀將數(shù)據(jù)從發(fā)送器傳輸?shù)浇邮掌?

遠(yuǎn)程幀 (remoteframe):總線單元發(fā)出遠(yuǎn)程幀,請求發(fā)送具有同一標(biāo)識符的數(shù)據(jù)幀;

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

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

1.數(shù)據(jù)幀

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

場、應(yīng)答場、幀結(jié)束。結(jié)構(gòu)如圖2一4所示

 

標(biāo)準(zhǔn)幀格式與擴(kuò)展幀格式中仲裁和控制域結(jié)構(gòu)不同,其結(jié)構(gòu)分別如下:

 

圖2一5標(biāo)準(zhǔn)格式的幀結(jié)構(gòu)

 

圖2一6擴(kuò)展格式的幀結(jié)構(gòu)

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

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

 

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

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

 

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

(5)CRC場包括CRC序列,后隨CRC界定符,CRC場結(jié)構(gòu)如下圖2一9所示

 

(6)應(yīng)答場(AC均為兩位,包括應(yīng)答間隙和應(yīng)答界定符,結(jié)構(gòu)如下圖2一10

 

(7)幀結(jié)束:每個(gè)數(shù)據(jù)幀和遠(yuǎn)程幀均由“1111111”7個(gè)隱性位組成的標(biāo)志序列界定

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

 



3、出錯幀
出錯幀由兩個(gè)不同場組成,第一個(gè)場由來自個(gè)站的錯誤標(biāo)志疊加得到,后隨的第二個(gè)是出錯界定符。出錯幀的組成如下圖2一12所示:

 



4、超載幀
超載幀包括兩個(gè)位場;超載標(biāo)志和超載界定符,其組成如下圖2一13所示

 



5、幀間空間

數(shù)據(jù)幀和遠(yuǎn)程幀同前面的幀相同,不管是何種幀(數(shù)據(jù)幀、遠(yuǎn)程幀、出錯
幀和超載幀)均被稱為幀間空間的位場分開。幀間空間包括間歇場和總線空閑
場,對于“錯誤認(rèn)可”節(jié)點(diǎn)還有暫停發(fā)送場。對于非”錯誤認(rèn)可“的接收器,
其幀空間如下圖2一14所示:

 



對于“錯誤認(rèn)可”節(jié)點(diǎn),其幀空間如下圖2-15所示:



2.2.7CAN數(shù)據(jù)錯誤監(jiān)測


CAN協(xié)議可使用五種檢查錯誤的方法,其中前三種為基于報(bào)文內(nèi)容檢查。


1.循環(huán)冗余檢查(CRC):在一幀報(bào)文中加入冗余檢查位可保證報(bào)文正確。接收站通過cRc可判斷報(bào)文是否有錯【25]。其工作原理如下:



(5).根據(jù)R(x)和R‘(x)是否相等來判斷傳輸是否出錯,如果計(jì)算余數(shù)多項(xiàng)式和接收余項(xiàng)多項(xiàng)式相等,則數(shù)據(jù)傳輸無差錯,如果不等,則表明出現(xiàn)了錯誤,由發(fā)送方重新發(fā)送數(shù)據(jù),知道數(shù)據(jù)傳送正確為止。

2.幀檢查:這種方法通過位場檢查幀的格式和大小來確定報(bào)文的正確性,用于檢查格式上的錯誤。
3.應(yīng)答錯誤:被接收到的幀由接收站通過明確的應(yīng)答來確認(rèn)。如果發(fā)送站未收到應(yīng)答,那么表明接收站發(fā)現(xiàn)幀中有錯誤,也就以錯誤類型和界定是說,ACK場己損壞或網(wǎng)絡(luò)中的報(bào)文無站接收。
4.總線檢測:CAN中的一個(gè)節(jié)點(diǎn)可監(jiān)測自己發(fā)出的信號。因此,發(fā)送報(bào)文的站可以觀測總線電平并探測發(fā)送位和接收位的差異。
5.位填充:如果在一幀報(bào)文中有太多相同電平的位,就有可能失去同步。為保證同步,在五個(gè)連續(xù)相等位后,發(fā)送站自動插入一個(gè)與之互補(bǔ)的補(bǔ)碼位;接收時(shí),這個(gè)填充位被自動去掉。例如,五個(gè)連續(xù)的低電平位后,CAN自動插入一個(gè)高電平位。CAN過這種編碼規(guī)則檢查錯誤,如果在一幀報(bào)文中有6個(gè)相同位,CAN就知道發(fā)生了錯誤。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉