<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)的技術(shù)規范與控制器類(lèi)型

CAN總線(xiàn)的技術(shù)規范與控制器類(lèi)型

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


CAN協(xié)議介紹

CAN協(xié)議是參考ISO/OSI的7層協(xié)議模式而做定義的,但因它主要是用來(lái)傳送簡(jiǎn)短且簡(jiǎn)單的信號,而且是一封閉性的系統,并不需要負責系統的安全、產(chǎn)生用戶(hù)接口的數據,以及監控網(wǎng)絡(luò )的登入等動(dòng)作,因此只涉及了實(shí)體層和數據鏈接層的定義。

1、實(shí)體層規范特性

實(shí)體層負責的是網(wǎng)絡(luò )中節點(diǎn)與節點(diǎn)之間的連結,以及在銅線(xiàn)、同軸纜線(xiàn)、光纖,甚至是無(wú)線(xiàn)信號的實(shí)際電性脈沖傳送。傳送器的實(shí)體層會(huì )把從數據鏈接層來(lái)的數據轉換為電子信息,再傳送出去;在接收端,實(shí)體層將這些電子信息傳換為數據格式,再傳送到數據鏈接層。

在一個(gè)網(wǎng)絡(luò )系統中,要確保各個(gè)節點(diǎn)之間能夠順利地溝通,先決條件是每個(gè)節點(diǎn)的實(shí)體層特性必須是相同的,而CAN實(shí)體層的作用就在于規范位表示法、位時(shí)序及同步性,通常還包括腳位連接器和接線(xiàn)的型式。CAN由兩條序列總線(xiàn)(CAN_H和CAN_L)實(shí)時(shí)傳輸數據,傳輸速率可高達1Mb/s。理論上,每個(gè)最多可連結2032個(gè)節點(diǎn),但受限于收發(fā)器的功能,實(shí)際運用上最多大約可連結100個(gè)節點(diǎn),而在一般的運用上則大約是連結3~10個(gè)節點(diǎn)。CAN實(shí)體層示意圖如圖2所示。

newmaker.com
圖2 CAN實(shí)體層架構示意圖

2、數據鏈接層規范特性:總線(xiàn)仲裁

CAN數據鏈接層可以說(shuō)是CAN功能的核心,其目的在于建立數據信框封包,在信框內包含數據和控制數據。數據鏈接層的主要功能之一,就是當系統中出現兩個(gè)信號同時(shí)想使用網(wǎng)絡(luò )中的相同資源時(shí),如何防止沖突的發(fā)生。這就是所謂MAC(Medium Access Control)功能。在CAN協(xié)議中,MAC功能會(huì )讓具有最高優(yōu)先權的數據信框優(yōu)先使用總線(xiàn)的網(wǎng)絡(luò )資源,此機制對于網(wǎng)絡(luò )效能的影響很大。

在網(wǎng)絡(luò )的接取控制上有兩大方向,即先決式和隨機式。在先決式的接取控制中,總線(xiàn)的使用權必須在節點(diǎn)接取總線(xiàn)前就預先定義好了,以確保不會(huì )發(fā)生任何沖突。此類(lèi)網(wǎng)絡(luò )需要一個(gè)中央管控裝置來(lái)進(jìn)行網(wǎng)絡(luò )管理,但一旦此裝置失常,整個(gè)網(wǎng)絡(luò )就無(wú)法運作;也有非中心化的架構,但相對會(huì )復雜許多。

在隨機式接取控制中,當總線(xiàn)閑置時(shí),每個(gè)節點(diǎn)都能夠要求使用網(wǎng)絡(luò )資源。最常見(jiàn)的隨機式接取控制方式是載波偵測多重存?。–arrier Sense Multiple Access,CSMA),CSMA又分成限制或防止信號碰撞的CSMA/CA方式和允許碰撞再進(jìn)行處置的CSMA/CD方式。由于CSMA/CD較浪費頻寬資源及會(huì )產(chǎn)生較長(cháng)的延遲性,因此CAN采用的是CSMA/CA的方式,此作法又稱(chēng)為非破壞性的按位仲裁機制。

CAN協(xié)議讓優(yōu)先權較高的信號先接取使用總線(xiàn)資源,在每個(gè)信號信框的一開(kāi)始處就存在仲裁域,仲裁域中有一個(gè)識別碼,識別碼的數值越小,表示其優(yōu)先權限越高。此作法能有效地利用總線(xiàn)資源,其具有最高優(yōu)先權的信號,最大的延遲時(shí)間大約只有150ms。

在CAN的2.0A標準中,一開(kāi)始定義識別碼的長(cháng)度為11位,后來(lái)因市場(chǎng)的需求又提出了延伸性的2.0B版本。2.0B的格式通常被稱(chēng)為延伸性CAN,它允許29位的識別碼,而且有主動(dòng)及被動(dòng)式兩種:2.0B主動(dòng),也就是能收、發(fā)延伸信框的節點(diǎn);以及2.0B被動(dòng),它會(huì )放棄掉接收到的延伸信框。2.0B的29位識別碼能夠提供51200萬(wàn)個(gè)獨特的信號及優(yōu)先等級,足以滿(mǎn)足來(lái)自越來(lái)越多節點(diǎn)的大量存取要求。

三、數據鏈接層規范特性:信框格式

所謂的信框即包含由傳送器送出的完整信號的數據封包。在CAN協(xié)議中具有4種信框,即數據信框、遠程信框、誤碼信框及額外負載信框。以下主要介紹數據信框的組成。

數據信框包含了識別碼和各種控制信息,以及最多8字節的數據。其基本組成包括:信框開(kāi)始、仲裁域(又包括識別碼和RTR)、控制域(又包括IDE、r0和數據長(cháng)度碼)、數據域、循環(huán)冗余碼檢驗域、確認域,以及信框終點(diǎn)等,如圖3所示。

newmaker.com
圖3 延伸型CAN的數據信框組成架構

其中控制信息是用來(lái)識別信框,決定對總線(xiàn)的使用,以及進(jìn)行誤碼偵測??刂菩畔⒌牧硪豁椫饕δ?,就在于能夠分辨出某一信號是否已損毀了。當數據在任何網(wǎng)絡(luò )中傳送時(shí),隨機性的誤碼是很常見(jiàn)的,所以數據鏈接層的重要任務(wù)之一,就是要限制這類(lèi)錯誤的發(fā)生。


評論


相關(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>