一張圖看懂CAN總線的原理
圖1 CAN通信原理
參考上圖,簡(jiǎn)單來(lái)說(shuō)CAN總線就如兩根黃線,通信的原理就好比開(kāi)一個(gè)電話會(huì)議,大家都同時(shí)撥進(jìn)來(lái),然后有各種不同的狀態(tài),比如:一個(gè)人說(shuō)話,其他人聽(tīng);或者多個(gè)人同時(shí)想發(fā)言,但也會(huì)讓其中一個(gè)人先說(shuō),其他人聽(tīng);還有一個(gè)人要求另一個(gè)人來(lái)說(shuō);還有些掉線了,卡頓了等等。
為了確保每次電話會(huì)議針對(duì)上述情況正確有效地進(jìn)行,我們需要一些每個(gè)人都應(yīng)該遵守的規(guī)則或協(xié)議。CAN總線通信與這種電話會(huì)議形式既有相似之處,也有不同之處。那究竟什么是CAN總線通信?
CAN總線架構(gòu)簡(jiǎn)介
CAN總線是一種用于不同控制單元之間數(shù)據(jù)傳輸?shù)膶?dǎo)線。CAN總線協(xié)議是ISO國(guó)際標(biāo)準(zhǔn)化的串行通信協(xié)議,由兩個(gè)系列組成:ISO-11898和ISO-11519。其定義有:
ISO-11898 定義了通信速率為 125 Kbps ~1Mbps 的高速 CAN 通信標(biāo)準(zhǔn),屬于閉環(huán)總線,傳輸速率可達(dá)1Mbps,總線長(zhǎng)度≤ 40米,如圖2。
ISO11519 定義了通信速率為 10~125 Kbps 的低速 CAN 通信標(biāo)準(zhǔn),屬于開(kāi)環(huán)總線,傳輸速率為40kbps時(shí),總線長(zhǎng)度可達(dá)1000米,如圖2。
圖2
CAN的應(yīng)用
CAN總線會(huì)有終端電阻,一般來(lái)說(shuō)都是120歐姆,實(shí)際上在設(shè)計(jì)的時(shí)候,也是兩個(gè)60歐姆的電阻串起來(lái)的,而總線上一般有兩個(gè)120歐姆的節(jié)點(diǎn)。終端電阻的作用有三個(gè):
①提高干擾防護(hù)能力,快速消除高頻低能量信號(hào)。
②確??偩€快速進(jìn)入隱藏狀態(tài),這樣寄生電容器的能量可以更快地耗散。
③通過(guò)將它們放置在總線兩端以減少反射能量來(lái)提高信號(hào)質(zhì)量。
圖3
電信號(hào)的傳輸是通過(guò)區(qū)分高電壓和低電壓來(lái)進(jìn)行的,就像CAN通信一樣。CAN總線的兩條信號(hào)線是CAN高(CAN_H)和CAN低(CAN_L)。關(guān)于CAN的邏輯0和邏輯1以及CAN總線的顯式和隱式方面,編制了以下圖表,以使每個(gè)人都能清楚地理解。
如下圖 4 所示:
圖4
注1:在實(shí)際開(kāi)發(fā)中,兩條線路的電壓都以默認(rèn)值波動(dòng),這也是使用差動(dòng)傳輸減少誤差和噪聲干擾的優(yōu)點(diǎn);
注2:CAN總線采用“線路和”規(guī)則進(jìn)行總線套利,即如果同時(shí)發(fā)送多個(gè)CAN信號(hào),有些發(fā)送1,有些發(fā)送0,只要有0,則當(dāng)前總線為0(1&0=0)。因此,總線上的顯式平面由邏輯“0”表示,而隱式平面則由邏輯“1”表示;
雖然差分信號(hào)有較好的抗干擾能力,但是長(zhǎng)距離信號(hào)傳輸時(shí),我們通常會(huì)采用雙絞線進(jìn)行數(shù)據(jù)傳輸,以此來(lái)從物理上減弱噪聲對(duì)信號(hào)傳輸過(guò)程中的耦合。
圖 5 消除電容耦合
圖 6 消除電感耦合
圖 7 消除對(duì)外界的干擾
CAN信號(hào)傳輸
上述的電位差(差分電平)與邏輯電平是通過(guò)CAN收發(fā)器實(shí)現(xiàn)的。在傳輸過(guò)程中,CAN控制器將CPU傳輸?shù)男盘?hào)轉(zhuǎn)換為邏輯電平。CAN收發(fā)器接收到邏輯電平后,將其轉(zhuǎn)換為差分電平并輸出到CAN總線。
圖9 CAN信號(hào)發(fā)送
在接收過(guò)程中,CAN收發(fā)器發(fā)送CAN_H和CAN_L線路上傳輸?shù)牟铍娖奖晦D(zhuǎn)換為邏輯電平并輸出到CAN控制器,然后CAN控制器將邏輯電平轉(zhuǎn)換為相應(yīng)的信號(hào)并發(fā)送到CPU。
圖10 CAN信號(hào)接收
簡(jiǎn)單地說(shuō),這意味著變送器通過(guò)CAN收發(fā)器改變總線電平,并將其信息傳輸?shù)紺AN總線。接收器通過(guò)監(jiān)測(cè)總線電平將總線上的信息讀取到自己的CAN收發(fā)器中。
如上所示,CAN總線有兩種架構(gòu),兩種形式的CAN信號(hào),以及發(fā)送和接收CAN信號(hào)的兩個(gè)過(guò)程。
-
-
CAN
+關(guān)注
關(guān)注
57文章
2747瀏覽量
463674 -
通信
+關(guān)注
關(guān)注
18文章
6032瀏覽量
135985 -
信號(hào)
+關(guān)注
關(guān)注
11文章
2791瀏覽量
76754
原文標(biāo)題:快速了解CAN通訊原理及應(yīng)用
文章出處:【微信號(hào):mcu168,微信公眾號(hào):硬件攻城獅】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論