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

CAN總線DSP系統(tǒng)與上位機CAN的通訊

基于CANoen協(xié)議實現(xiàn)DSP系統(tǒng)與上位機CAN的通訊

帶你快速的了解串行通訊

報文的傳輸原理你了解嗎

CAN基礎:電平、邏輯、報文是怎么來的
DSP28035的CAN通訊程序

評論