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

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > CAN總線(xiàn)基礎(chǔ)知識(shí)(一)

          CAN總線(xiàn)基礎(chǔ)知識(shí)(一)

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

          1.CAN總線(xiàn)是什么?

          CAN(Controller Area Network)是ISO國(guó)際標(biāo)準(zhǔn)化的串行通信協(xié)議。廣泛應(yīng)用于汽車(chē)、船舶等。具有已經(jīng)被大家認(rèn)可的高性能和可靠性。

          本文引用地址:http://www.ex-cimer.com/article/201612/330334.htm

          CAN控制器通過(guò)組成總線(xiàn)的2根線(xiàn)(CAN-H和CAN-L)的電位差來(lái)確定總線(xiàn)的電平,在任一時(shí)刻,總線(xiàn)上有2種電平:顯性電平和隱性電平。

          “顯性”具有“優(yōu)先”的意味,只要有一個(gè)單元輸出顯性電平,總線(xiàn)上即為顯性電平,并且,“隱性”具有“包容”的意味,只有所有的單元都輸出隱性電平,總線(xiàn)上才為隱性電平。(顯性電平比隱性電平更強(qiáng))。

          總線(xiàn)上執(zhí)行邏輯上的線(xiàn)“與”時(shí),顯性電平的邏輯值為“0”,隱性電平為“1”。

          下圖顯示了一個(gè)典型的CAN拓?fù)溥B接圖。

          連接在總線(xiàn)上的所有單元都能夠發(fā)送信息,如果有超過(guò)一個(gè)單元在同一時(shí)刻發(fā)送信息,有最高優(yōu)先級(jí)的單元獲得發(fā)送的資格,所有其它單元執(zhí)行接收操作。

          2.CAN總線(xiàn)的特點(diǎn)

          CAN總線(xiàn)協(xié)議具有下面的特點(diǎn):

          1) 多主控制

          當(dāng)總線(xiàn)空閑時(shí),連接到總線(xiàn)上的所有單元都可以啟動(dòng)發(fā)送信息,這就是所謂的多主控制的概念。

          先占有總線(xiàn)的設(shè)備獲得在總線(xiàn)上進(jìn)行發(fā)送信息的資格。這就是所謂的CSMA/CR(Carrier Sense MultipleAccess/Collosion Avoidance)方法

          如果多個(gè)設(shè)備同時(shí)開(kāi)始發(fā)送信息,那么發(fā)送最高優(yōu)先級(jí)ID消息的設(shè)備獲得發(fā)送資格。

          2) 信息的發(fā)送

          在CAN協(xié)議中,所有發(fā)送的信息要滿(mǎn)足預(yù)先定義的格式。當(dāng)總線(xiàn)沒(méi)有被占用的時(shí)候,連接在總線(xiàn)上的任何設(shè)備都能起動(dòng)新信息的傳輸,如果兩個(gè)或更多個(gè)設(shè)備在同時(shí)刻啟動(dòng)信息的傳輸,通過(guò)ID來(lái)決定優(yōu)先級(jí)。ID并不是指明信息發(fā)送的目的地,而是指示信息的優(yōu)先級(jí)。如果2個(gè)或者更多的設(shè)備在同一時(shí)刻啟動(dòng)信息的傳輸,在總線(xiàn)上按照信息所包含的ID的每一位來(lái)競(jìng)爭(zhēng),贏得競(jìng)爭(zhēng)的設(shè)備(也就是具有最高優(yōu)先級(jí)的信息)能夠繼續(xù)發(fā)送,而失敗者則立刻停止發(fā)送并進(jìn)入接收操作。因?yàn)榭偩€(xiàn)上同一時(shí)刻只可能有一個(gè)發(fā)送者,而其它均處于接收狀態(tài),所以,并不需要在底層協(xié)議中定義地址的概念。

          3) 系統(tǒng)的靈活性

          連接到總線(xiàn)上的單元并沒(méi)有類(lèi)似地址這樣的標(biāo)識(shí),所以,添加或去除一個(gè)設(shè)備,無(wú)需改變軟件和硬件,或其它設(shè)備的應(yīng)用層軟件。

          4) 通信速度

          可以設(shè)置任何通訊速度,以適應(yīng)網(wǎng)絡(luò)規(guī)模。

          對(duì)一個(gè)網(wǎng)絡(luò),所有單元必須有相同的通訊速度,如果不同,就會(huì)產(chǎn)生錯(cuò)誤,并妨礙網(wǎng)絡(luò)通訊,然而,不同網(wǎng)絡(luò)間可以有不同的通訊速度。

          5) 遠(yuǎn)程數(shù)據(jù)請(qǐng)求

          可以通過(guò)發(fā)送“遙控幀”,請(qǐng)求其他單元發(fā)送數(shù)據(jù)。

          6) 錯(cuò)誤檢測(cè)、錯(cuò)誤通知、錯(cuò)誤恢復(fù)功能

          所有單元均可以檢測(cè)出錯(cuò)誤(錯(cuò)誤檢測(cè)功能)。

          檢測(cè)到錯(cuò)誤的單元立刻同時(shí)通知其它所有的單元(錯(cuò)誤通知功能)。如果一個(gè)單元發(fā)送信息時(shí)檢測(cè)到一個(gè)錯(cuò)誤,它會(huì)強(qiáng)制終止信息傳輸,并通知其它所有設(shè)備發(fā)生了錯(cuò)誤,然后它會(huì)重傳直到信息正常傳輸出去(錯(cuò)誤恢復(fù)功能)。

          7) 錯(cuò)誤隔離

          在CAN總線(xiàn)上有兩種類(lèi)型的錯(cuò)誤:暫時(shí)性的錯(cuò)誤(總線(xiàn)上的數(shù)據(jù)由于受到噪聲的影響而暫時(shí)出錯(cuò));持續(xù)性的錯(cuò)誤(由于設(shè)備內(nèi)部出錯(cuò)(如驅(qū)動(dòng)器壞了、連接有問(wèn)題等)而導(dǎo)致的)。CAN能夠區(qū)別這兩種類(lèi)型,一方面降低常出錯(cuò)單元的通訊優(yōu)先級(jí)以阻止對(duì)其它正常設(shè)備的影響,另一方面,如果是一種持續(xù)性的錯(cuò)誤,將這個(gè)設(shè)備從總線(xiàn)上隔離開(kāi)。

          8) 連接

          CAN總線(xiàn)允許多個(gè)設(shè)備同時(shí)連接到總線(xiàn)上且在邏輯上沒(méi)有數(shù)目上的限制。然而由于延遲和負(fù)載能力的限制,實(shí)際可連接得設(shè)備還是有限制的,可以通過(guò)降低通訊速度來(lái)增加連接的設(shè)備個(gè)數(shù)。相反,如果連接的設(shè)備少,通訊的速度可以增加。

          3.錯(cuò)誤

          3.1 錯(cuò)誤狀態(tài)

          設(shè)備總是處于下面三個(gè)狀態(tài)之一:

          1)主動(dòng)錯(cuò)誤狀態(tài)

          在此狀態(tài)下,設(shè)備能夠參加總線(xiàn)上的正常通訊。如果處于主動(dòng)錯(cuò)誤狀態(tài)的設(shè)備檢測(cè)到一個(gè)錯(cuò)誤,它會(huì)發(fā)送一個(gè)主動(dòng)錯(cuò)誤標(biāo)志,更細(xì)節(jié)見(jiàn)第6章的“CAN協(xié)議”。

          2)被動(dòng)錯(cuò)誤狀態(tài)

          是指易于引起錯(cuò)誤的狀態(tài)。

          盡管處于被動(dòng)錯(cuò)誤狀態(tài)的設(shè)備能夠參加總線(xiàn)上的通訊,但是在接收期間,它不可能主動(dòng)地向其它設(shè)備發(fā)送錯(cuò)誤通知,以避免影響它們的通訊。處于被動(dòng)錯(cuò)誤狀態(tài)的設(shè)備即使檢測(cè)到一個(gè)錯(cuò)誤,如果其它處于主動(dòng)錯(cuò)誤狀態(tài)的設(shè)備沒(méi)曾檢測(cè)到錯(cuò)誤,那么也認(rèn)為在總線(xiàn)上未曾出現(xiàn)過(guò)任何錯(cuò)誤。

          當(dāng)處于被動(dòng)錯(cuò)誤狀態(tài)的設(shè)備檢測(cè)到一個(gè)錯(cuò)誤的時(shí)候,它發(fā)送一個(gè)被動(dòng)錯(cuò)誤標(biāo)志。

          另外,處于被動(dòng)錯(cuò)誤狀態(tài)的單元在發(fā)送結(jié)束后不能立刻再次開(kāi)始發(fā)送。在開(kāi)始下次發(fā)送前,在間隔幀期間內(nèi)必須插入“暫停發(fā)送期”(由8個(gè)位的隱性位組成)。

          更細(xì)節(jié)見(jiàn)第6章的“CAN協(xié)議”。

          3)總線(xiàn)切斷狀態(tài)

          處于此狀態(tài)下時(shí),設(shè)備不能參加總線(xiàn)的通訊。設(shè)備所有的收發(fā)操作都被禁止。

          這些狀態(tài)是通過(guò)發(fā)送錯(cuò)誤計(jì)數(shù)器和接收錯(cuò)誤寄存器來(lái)管理,相關(guān)錯(cuò)誤狀態(tài)由這些計(jì)數(shù)器值的組合來(lái)標(biāo)識(shí),錯(cuò)誤狀態(tài)和計(jì)數(shù)器值之間的關(guān)系見(jiàn)表1和圖4。



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

          關(guān)鍵詞: CAN總線(xiàn)基礎(chǔ)知

          評(píng)論


          技術(shù)專(zhuān)區(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); })();