• 正文
    • 工作原理
    • 類型分類
  • 相關(guān)推薦
申請入駐 產(chǎn)業(yè)圖譜

ElfBoard嵌入式教育科普|CAN接口全面解析

05/29 15:29
427
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論
CAN的全稱是Controller Area Network,譯為控制器區(qū)域網(wǎng)絡(luò),是一種用于車輛、電力系統(tǒng)、工業(yè)設(shè)備等嵌入式系統(tǒng)的半雙工異步串行通信協(xié)議和物理接口。CAN是一種事件驅(qū)動的通信協(xié)議,采用非主從結(jié)構(gòu),所有節(jié)點都可以發(fā)送和接收數(shù)據(jù),而不需要主控節(jié)點。它支持多主機通信,具有優(yōu)先級和沖突解決機制,能夠?qū)崿F(xiàn)高效的數(shù)據(jù)傳輸。CAN只需要兩根信號線,這兩根信號線通常采用的是雙絞線,且傳輸?shù)氖?a class="article-link" target="_blank" href="/baike/1651212.html">差分信號,以差分信號傳輸信息具有抗干擾能力強,有效抑制外部電磁干擾的優(yōu)點。

工作原理

CAN通信的工作原理依賴于CAN接口的核心組件,包括CAN控制器、CAN收發(fā)器和CAN總線。CAN收發(fā)器的作用是將普通信號轉(zhuǎn)化為差分信號,以提高抗干擾能力和輸出可靠性。CAN 總線的工作電壓通常為5V或3.3V,但通信的關(guān)鍵在于CAN_High和CAN_Low兩根總線間的電壓差。

CAN協(xié)議經(jīng)過ISO標準化后有兩個標準:ISO11898標準和ISO11519-2標準;其中標準ISO11519-2-1994已經(jīng)被ISO11898-3-2006 代替,即符合標準ISO11898-3的產(chǎn)品也是符合ISO11519-2標準的產(chǎn)品;ISO11898-2-2016更新并替代了ISO11898-2:2003,ISO11898-5:2007和ISO11898-6:2013。ISO11898標準和ISO11519-2標準對于數(shù)據(jù)鏈路層的定義相同,但物理層不同,兩個標準間的差異如下:

當CAN收到一個低電平信號,CAN_High輸出3.5V,CAN_Low輸出1.5V,兩者的電壓差是2V,此時表示邏輯0,也稱顯性電平。

當CAN收到一個高電平信號,CAN_High和CAN_Low輸出均為2.5V,電壓差是0V,此時表示邏輯1,也稱隱性電平。

為滿足不同通信需求,CAN協(xié)議定義了多種幀類型,包括數(shù)據(jù)幀、遠程幀、錯誤幀、過載幀、幀間隔等。數(shù)據(jù)幀用于傳輸數(shù)據(jù),包含實際的有效數(shù)據(jù)內(nèi)容;遠程幀用于請求數(shù)據(jù),沒有數(shù)據(jù)部分,只發(fā)送標識符和長度信息;錯誤幀用于指示總線上的錯誤,幫助進行錯誤處理;過載幀用于指示總線過載,幫助管理數(shù)據(jù)流;幀間隔是兩幀之間的時間間隔,用于確保幀的正確傳輸,避免幀沖突。其中最常見的幀類型是數(shù)據(jù)幀,分為標準數(shù)據(jù)幀和擴展數(shù)據(jù)幀。

標準數(shù)據(jù)幀格式及字段組成如下:

擴展數(shù)據(jù)幀格式及字段組成如下:

在正常工作時CAN總線上可能會掛載很多設(shè)備,如果兩個設(shè)備同時發(fā)送信息,就會發(fā)生沖突,為了避免總線沖突,需由總線仲裁機構(gòu)合理地控制和管理系統(tǒng)中需要占用總線的申請者,在多個申請者同時提出總線請求時,以一定的優(yōu)先算法仲裁哪個應獲得對總線的使用權(quán)。只有獲得了總線控制權(quán)的設(shè)備,才能開始傳送數(shù)據(jù)。

報文的優(yōu)先級,是通過對 ID(識別碼) 的仲裁來確定的。CAN總線上有兩種電平狀態(tài),如果總線上同時出現(xiàn)顯性電平和隱性電平,總線的狀態(tài)會被置為顯性電平,CAN正是利用這個特性進行仲裁。

類型分類

以上介紹的都是關(guān)于標準CAN的內(nèi)容,此外還有一種CAN FD,它的全稱是Flexible Data Rate,譯為可變速率的CAN。CAN和CAN FD是兩種不同的總線標準,它們都是基于CAN技術(shù)實現(xiàn)的,但它們之間有明顯的區(qū)別。CAN是一種多點總線,它可以用于連接許多設(shè)備,而CAN FD是一種更高級的多點總線,它可以提供更高的傳輸速率和更高的傳輸容量。

CAN和CAN FD之間最大的區(qū)別在于傳輸容量。CAN的最大傳輸容量為8字節(jié),而CAN FD的最大傳輸容量可以達到64字節(jié)。這意味著CAN FD可以提供更多的數(shù)據(jù),因此可以傳輸更大的數(shù)據(jù)包,從而更好地滿足應用需求。

另一個不同點是傳輸速率。CAN的最大傳輸速率為1 Mbps,而CAN FD的最大傳輸速率可以達到8 Mbps。

以上就是關(guān)于CAN接口的核心內(nèi)容解析。希望本文分享能夠為嵌入式開發(fā)技術(shù)愛好者及相關(guān)專業(yè)的高校學生提供切實可行的項目實踐參考。若您在應用場景中遇到CAN接口開發(fā)或調(diào)試問題,歡迎隨時私信與我們技術(shù)團隊深入交流,我們將結(jié)合多年嵌入式開發(fā)經(jīng)驗,為您提供針對性解決方案建議。

飛凌嵌入式

飛凌嵌入式

保定飛凌嵌入式技術(shù)有限公司,創(chuàng)建于2006年,是一家專注嵌入式核心控制系統(tǒng)研發(fā)、設(shè)計和生產(chǎn)的高新技術(shù)企業(yè),是國內(nèi)較早專業(yè)從事嵌入式技術(shù)的企業(yè)之一。 經(jīng)過十幾年的發(fā)展與積累,公司擁有業(yè)內(nèi)優(yōu)秀的軟硬件研發(fā)團隊,在北京及保定建立兩大研發(fā)基地,在蘇州、深圳設(shè)有華東、華南技術(shù)服務中心,并在北美、歐洲以及亞太等其他國家和地區(qū)擁有國際業(yè)務網(wǎng)絡(luò)。公司研發(fā)的智能設(shè)備核心平臺廣泛應用于物聯(lián)網(wǎng)、工控、軌道交通、醫(yī)療、電力、商業(yè)電子、智能家居、安防、機器人、環(huán)境監(jiān)測等諸多領(lǐng)域。

保定飛凌嵌入式技術(shù)有限公司,創(chuàng)建于2006年,是一家專注嵌入式核心控制系統(tǒng)研發(fā)、設(shè)計和生產(chǎn)的高新技術(shù)企業(yè),是國內(nèi)較早專業(yè)從事嵌入式技術(shù)的企業(yè)之一。 經(jīng)過十幾年的發(fā)展與積累,公司擁有業(yè)內(nèi)優(yōu)秀的軟硬件研發(fā)團隊,在北京及保定建立兩大研發(fā)基地,在蘇州、深圳設(shè)有華東、華南技術(shù)服務中心,并在北美、歐洲以及亞太等其他國家和地區(qū)擁有國際業(yè)務網(wǎng)絡(luò)。公司研發(fā)的智能設(shè)備核心平臺廣泛應用于物聯(lián)網(wǎng)、工控、軌道交通、醫(yī)療、電力、商業(yè)電子、智能家居、安防、機器人、環(huán)境監(jiān)測等諸多領(lǐng)域。收起

查看更多

相關(guān)推薦