CAN總線的工作原理
CAN總線是一種多主方式的串行通訊總線,基本設(shè)計(jì)規(guī)范要求有高的位速率,高抗電子干擾性,并且能夠檢測(cè)出產(chǎn)生的任何錯(cuò)誤。CAN總線可以應(yīng)用于汽車電控制系統(tǒng)、電梯控制系統(tǒng)、安全監(jiān)測(cè)系統(tǒng)、醫(yī)療儀器、紡織機(jī)械、船舶運(yùn)輸?shù)阮I(lǐng)域。
CAN總線的特點(diǎn)
1、具有實(shí)時(shí)性強(qiáng)、傳輸距離較遠(yuǎn)、抗電磁干擾能力強(qiáng)、成本低等優(yōu)點(diǎn);
2、采用雙線串行通信方式,檢錯(cuò)能力強(qiáng),可在高噪聲干擾環(huán)境中工作;
3、具有優(yōu)先權(quán)和仲裁功能,多個(gè)控制模塊通過(guò)CAN 控制器掛到CAN-bus 上,形成多主機(jī)局部網(wǎng)絡(luò);
4、可根據(jù)報(bào)文的ID決定接收或屏蔽該報(bào)文;
5、可靠的錯(cuò)誤處理和檢錯(cuò)機(jī)制;
6、發(fā)送的信息遭到破壞后,可自動(dòng)重發(fā);
7、節(jié)點(diǎn)在錯(cuò)誤嚴(yán)重的情況下具有自動(dòng)退出總線的功能;
8、報(bào)文不包含源地址或目標(biāo)地址,僅用標(biāo)志符來(lái)指示功能信息、優(yōu)先級(jí)信息。
CAN總線的工作原理
CAN總線使用串行數(shù)據(jù)傳輸方式,可以1Mb/s的速率在40m的雙絞線上運(yùn)行,也可以使用光纜連接,而且在這種總線上總線協(xié)議支持多主控制器。CAN與I2C總線的許多細(xì)節(jié)很類似,但也有一些明顯的區(qū)別。
當(dāng)CAN總線上的一個(gè)節(jié)點(diǎn)(站)發(fā)送數(shù)據(jù)時(shí),它以報(bào)文形式廣播給網(wǎng)絡(luò)中所有節(jié)點(diǎn)。對(duì)每個(gè)節(jié)點(diǎn)來(lái)說(shuō),無(wú)論數(shù)據(jù)是否是發(fā)給自己的,都對(duì)其進(jìn)行接收。每組報(bào)文開(kāi)頭的11位字符為標(biāo)識(shí)符,定義了報(bào)文的優(yōu)先級(jí),這種報(bào)文格式稱為面向內(nèi)容的編址方案。在同一系統(tǒng)中標(biāo)識(shí)符是唯一的,不可能有兩個(gè)站發(fā)送具有相同標(biāo)識(shí)符的報(bào)文。當(dāng)幾個(gè)站同時(shí)競(jìng)爭(zhēng)總線讀取時(shí),這種配置十分重要。
當(dāng)一個(gè)站要向其它站發(fā)送數(shù)據(jù)時(shí),該站的CPU將要發(fā)送的數(shù)據(jù)和自己的標(biāo)識(shí)符傳送給本站的CAN芯片,并處于準(zhǔn)備狀態(tài);當(dāng)它收到總線分配時(shí),轉(zhuǎn)為發(fā)送報(bào)文狀態(tài)。CAN芯片將數(shù)據(jù)根據(jù)協(xié)議組織成一定的報(bào)文格式發(fā)出,這時(shí)網(wǎng)上的其它站處于接收狀態(tài)。每個(gè)處于接收狀態(tài)的站對(duì)接收到的報(bào)文進(jìn)行檢測(cè),判斷這些報(bào)文是否是發(fā)給自己的,以確定是否接收它。
由于CAN總線是一種面向內(nèi)容的編址方案,因此很容易建立高水準(zhǔn)的控制系統(tǒng)并靈活地進(jìn)行配置。我們可以很容易地在CAN總線中加進(jìn)一些新站而無(wú)需在硬件或軟件上進(jìn)行修改。當(dāng)所提供的新站是純數(shù)據(jù)接收設(shè)備時(shí),數(shù)據(jù)傳輸協(xié)議不要求獨(dú)立的部分有物理目的地址。它允許分布過(guò)程同步化,即總線上控制器需要測(cè)量數(shù)據(jù)時(shí),可由網(wǎng)上獲得,而無(wú)須每個(gè)控制器都有自己獨(dú)立的傳感器。
評(píng)論