<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > CAN總線的技術(shù)規(guī)范與控制器類型

          CAN總線的技術(shù)規(guī)范與控制器類型

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


          CAN協(xié)議介紹

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

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

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

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

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

          2、數(shù)據(jù)鏈接層規(guī)范特性:總線仲裁

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

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

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

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

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

          三、數(shù)據(jù)鏈接層規(guī)范特性:信框格式

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

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

          newmaker.com
          圖3 延伸型CAN的數(shù)據(jù)信框組成架構(gòu)

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


          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();