控制器局域網(wǎng) (CAN) 總線的工作方式
掃描二維碼
隨時(shí)隨地手機(jī)看文章
現(xiàn)實(shí)中,如果兩個(gè)人同時(shí)說話,怎樣來決定誰先說呢?有時(shí)候是嗓門最大的先說,而這基本上也是控制器局域網(wǎng)(CAN)總線的工作方式。
在一條CAN總線中,所有收發(fā)器發(fā)出消息的優(yōu)先級(jí)(從最低有效位(LSB)到最高有效位(MSB));最高優(yōu)先級(jí)的消息將被發(fā)送。特別是對(duì)于CAN來說,如果兩個(gè)收發(fā)器同時(shí)發(fā)送,他們都“張開嘴”說一個(gè)“0”(邏輯高電平);數(shù)值越低,這條消息的重要性越高。換句話說,如果兩個(gè)收發(fā)器都在“喊”,首先“閉嘴”的收發(fā)器必須等到另外一個(gè)收發(fā)器完成發(fā)送之后才能說話。整個(gè)過程被稱為仲裁,更確切的說是非破壞性仲裁。
在設(shè)計(jì)通信系統(tǒng)時(shí),你可以隨意使用很多穩(wěn)健的語言。其中的一些表達(dá)方式比較成熟并且意思明確,而其他的語言仍舊在不斷的發(fā)展中,比如說CAN總線。CAN 是一款非常穩(wěn)健的差分信令通信協(xié)議。這款協(xié)議最初設(shè)計(jì)用于汽車應(yīng)用,在無需主機(jī)控制器的情況下,實(shí)現(xiàn)微控制器、傳感器或集成電路之間的通信。
CAN的工作原理也是其非常穩(wěn)健的一個(gè)原因。他的差分信令拓?fù)浣Y(jié)構(gòu)使其能夠輕松應(yīng)對(duì)耦合噪聲。在出現(xiàn)由接地層噪聲導(dǎo)致的位移時(shí),這一特性可以使傳輸線路,CANL和CANH保持在一起。與其他差分協(xié)議不同的是,當(dāng)CAN處于接收狀態(tài)(一個(gè)邏輯1)時(shí),兩條線路都將處于同樣電壓,通常為VCC/2(除非是一款3V CAN總線收發(fā)器,那樣的話就是完全另外一種對(duì)話方式了)。當(dāng)CAN線路被分別驅(qū)動(dòng)時(shí),這成為主導(dǎo)狀態(tài)和一個(gè)邏輯0。將CANL和CANH想象為一張嘴的兩片嘴唇:L是下嘴唇,而H是上嘴唇。當(dāng)你想說話時(shí),你告訴自己分開你的嘴唇并張開嘴。這是一個(gè)低電平有效邏輯信令,其中“0”在你開口說話時(shí)置位。當(dāng)你不在說話時(shí),你的嘴唇緊閉,CANH和CANL線路一起處于VCC/2電平上。
圖1:CAN信令和邏輯電平
除了這些基本原理之外,CAN總線也在不斷的發(fā)展中。全新調(diào)整和增強(qiáng)功能正在使這項(xiàng)技術(shù)更加高效,并且釋放出全新的性能水平。其中一個(gè)最新進(jìn)展是對(duì)于靈活數(shù)據(jù)速率的思考,或稱為FD。這是關(guān)于“CAN”語言表達(dá)方式的一課。您可以在之前的博文中找到更多與CAN FD和我們的產(chǎn)品相關(guān)的內(nèi)容,“對(duì)于更高速的需要:CAN FD。”。