一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

CAN總線的特點、幀類型及應用中的注意事項

電子設計 ? 來源:電子設計 ? 作者:電子設計 ? 2020-12-24 13:54 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1980年,Bosch工程師開始研究汽車上高速串行通信的問題,并在1986年發(fā)布了CAN(Controller Area Network)總線。CAN以其多主,高速(最高1Mbps),抗干擾的特性被廣泛應用汽車及各種工業(yè)環(huán)境。在此我們主要介紹一下CAN總線的特點,幀類型,以及應用中的注意事項。

1.CAN總線特點

1.1多主控制

跟我們常用的RS485只有一個主機,從機只能等待主機的輪詢不同,在CAN總線中,當任意一個節(jié)點監(jiān)測到總線空閑時,就可以立即啟動信息的發(fā)送,也就是每一個節(jié)點都可以當主機。當然,這馬上會引起我們的擔心。如同一個家庭每個人都當家做主,那還不亂了套嗎?不急,我們來看一下。這個問題是如何被巧妙地解決的。

物理層,CAN采用差分總線。單片機引腳的邏輯電平0,被CAN收發(fā)器(PHY)轉(zhuǎn)換為顯性電平(Dominant),邏輯電平1被轉(zhuǎn)換為隱性電平(Reccesive)??偩€上執(zhí)行的是“線與”邏輯,只要有一個節(jié)點輸出顯性電平,那么總線上就是顯性電平。

仲裁(Arbitration),CAN的發(fā)送總是以SOF(Start Of Frame)起始,緊跟器后是ID。在發(fā)送ID的同時,節(jié)點監(jiān)聽總線上的顯隱狀態(tài),當監(jiān)聽到的狀態(tài)與自己發(fā)送的不一致時,此節(jié)點將停止發(fā)送,進入只收模式。如下圖所示,每一幀消息所具有的ID決定了此消息的優(yōu)先級,發(fā)送最高優(yōu)先級消息的節(jié)點獲得總線最后的控制權(quán),得以最終完整的發(fā)送自己的消息。

接收濾波(Filter)。一個掛在總線上的節(jié)點可以監(jiān)聽到所有的消息(Message),但通常我們只對其中某些消息感興趣,這時怎么辦呢?CAN模塊一般會提供接收濾波功能(Filter)。通過設置濾波寄存器,我們可以達到接收消息時,比對ID所有位,也可以只比對ID某些位,從而達到只接收ID與自己完全相同的消息,或接收ID與自己部分相同的消息的目的。利用這種機制可以給節(jié)點編組,給組成員群發(fā)消息。

1.2速度快,距離遠

CAN總線可以達到1Mbps的速率??偩€速度隨著傳輸距離增加而下降,下面是一些典型速率。在一個數(shù)據(jù)幀內(nèi)可以傳送8個字節(jié)的數(shù)據(jù)。

1000kbps 40m

500kbps 130m

100kbps 620m

50kbps 1300m

5kbps 10000m

2012年,Bosch又發(fā)布了CANFD(CAN with Flexible Data-rate),最高速率可以達到10Mbps,在一個數(shù)據(jù)幀內(nèi)可以傳送64字節(jié)的數(shù)據(jù)。2015 年 ,國際標準化組織(ISO)正式發(fā)布支持CAN FD的11898-1協(xié)議。

2.幀類型

CAN協(xié)議很簡潔,只包含4種幀類型。

數(shù)據(jù)幀(Data Frame),用來把數(shù)據(jù)從發(fā)送節(jié)點傳送至接收節(jié)點。

遠程幀(Remote Frame),一個節(jié)點用來請求其它節(jié)點發(fā)送數(shù)據(jù)。一個節(jié)點發(fā)送遠程幀時會把Arbitration Filed最后一位RTR(置1),具有相同ID的節(jié)點會把數(shù)據(jù)發(fā)送到總線上。

錯誤幀(Error Frame),當一個節(jié)點檢測到錯誤時會向總線發(fā)出錯誤幀,以通知其它節(jié)點。

過載幀(Overload Frame),用來在數(shù)據(jù)幀或遠程幀之間插入延時。

幀間隔(Interframe Space),不是一種幀類型。它是幀之間的間隙,由多個連續(xù)的隱性電平構(gòu)成。

編程時我們直接用到的就是數(shù)據(jù)幀和遠程幀。軟件編程比較簡單,需要注意的是一般需要設置寄存器中的初始化請求位(Initialization request),使模塊進入初始化狀態(tài),才能開始進行CAN模塊的各種配置,初始化完成后退出初始化狀態(tài),進入運行狀態(tài)。

3.CAN總線應用注意事項

3.1終端匹配電阻

在CAN總線的兩端要用120歐的電阻端接進行阻抗匹配,因為CAN總線長度一般會比較長,傳輸?shù)?a target="_blank">信號速度快,特別是信號的邊沿跳變部分頻率很高。

傳輸線效應 平常我們總是認為電信號從一個引腳發(fā)出,通過導線,瞬間就會到達接收引腳,導線上的電壓處處是相等的。但是當信號的頻率很高,或者導線特別長,總之導線的長度接近傳導信號波長的1/10后,我們就需要轉(zhuǎn)變一下我們的觀念,此時信號的傳輸主要受電纜特性阻抗的影響。

電纜特性阻抗 = 信號電場強度(伏特/米) / 磁場強度(安培/米)

電纜的特性阻抗與電纜的材質(zhì),粗細,線纜之間的距離有關(guān),而與電纜的長度無關(guān)。電纜的特性阻抗還和信號的頻率有關(guān),但是當頻率增加到一定數(shù)值時,特性阻抗不再變化。常用的帶屏蔽雙絞線的特性阻抗是120歐。

信號在阻抗不連續(xù)處會產(chǎn)生反射,所以要保持電纜阻抗的連續(xù)性,而且線纜終點需要用等于電纜特性阻抗的電阻進行端接,以消耗掉傳輸至端點的信號,否則信號會反射回去和后續(xù)發(fā)出的信號產(chǎn)生疊加,引起錯誤。

頻率與波長對應關(guān)系

150K 2000m

500K 600m

1M 300m

10M 30m

端接電阻的另一個作用是可以使CAN總線從顯性狀態(tài)快速回到隱性狀態(tài)。因為在顯性狀態(tài)下,兩條線纜CAN_H, CAN_L之間的寄生電容會被充電,如果沒有一個放電回路,總線不能快速回到隱性狀態(tài)。

3.2EMC防護

CAN常常工作在強干擾的工業(yè)環(huán)境中,采用屏蔽雙絞線會極大的提升EMC防護性能。同時如果數(shù)字電路部分和CAN收發(fā)器之間用高速光耦隔離開,并且對兩部分采用完全隔離的電源供電,那么可以把總線上的干擾最大限度地隔離在外部。

需要注意的是屏蔽層只能在一點接入大地。如果在多個點接地,那么通過大地會形成電流環(huán)路,反而會引入噪聲。

3.3時鐘容差(Oscillator Tolerance)

總線的速度越高,需要的時鐘精度越高。一般在低于125kpbs時可以用低成本的陶瓷震蕩器(ceramic resonators),更高的速度下建議使用晶體振蕩器(Quartz,or Crystal Oscilators)。

3.4CAN模塊死機現(xiàn)象

CAN模塊內(nèi)部有監(jiān)控電路,總線上的異常,如短路等,會引起錯誤計數(shù)器增長。TEC(Transmit Error Counter), REC(Receive Error Counter)。當發(fā)送錯誤TEC計數(shù)超過255后,CAN模塊進入BUS-OFF模式,此節(jié)點不能發(fā)送也不能接收。這樣做的好處是可以避免由個別模塊的問題引起整個總線不能工作。

芯片一般會提供兩種恢復機制:自動和手動模式。比如在STM32單片機中,如果ABOM位設置為1,CAN模塊將不斷嘗試自動恢復。如果ABOM=0,則需要程序進入CAN初始化模式,重新配置后,再退出初始化進入正常工作模式。

由于CAN總線非??煽浚灰壮鲥e,所以在測試階段建議人為制造一些總線錯誤,比如短路,斷路,強干擾之類,看程序是否能從異常狀態(tài)下恢復。

審核編輯:符乾江
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 單片機
    +關(guān)注

    關(guān)注

    6067

    文章

    44991

    瀏覽量

    650403
  • CAN總線
    +關(guān)注

    關(guān)注

    145

    文章

    1986

    瀏覽量

    132844
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    智多晶DDR Controller使用注意事項

    最后一期我們主要介紹智多晶DDR Controller使用時的注意事項。
    的頭像 發(fā)表于 01-24 11:14 ?752次閱讀
    智多晶DDR Controller使用<b class='flag-5'>注意事項</b>

    基于Vector工具進行CAN協(xié)議錯誤的分析實踐

    廣播發(fā)送的短結(jié)構(gòu),還體現(xiàn)在其錯誤檢測機制上。通過總線數(shù)據(jù)以及總線波形來分析總線故障時,CAN協(xié)議錯誤檢測機制
    的頭像 發(fā)表于 01-15 10:03 ?577次閱讀
    基于Vector工具進行<b class='flag-5'>CAN</b>協(xié)議錯誤<b class='flag-5'>幀</b>的分析實踐

    多層板埋孔設計注意事項

    多層板埋孔設計注意事項
    的頭像 發(fā)表于 12-20 16:06 ?796次閱讀

    接線端子的類型與選擇注意事項

    降低故障風險、簡化維護過程并延長設備壽命。因此,了解接線端子的各種類型,以及在設計和應用的選擇考慮事項,是實現(xiàn)高效且可靠電氣連接的必要步驟。本文將為您介紹接線端子的類型與選擇時須
    的頭像 發(fā)表于 11-29 14:35 ?1480次閱讀

    使用CAN總線注意事項 CAN總線與其他通信協(xié)議對比

    使用CAN總線注意事項 電氣特性 :CAN總線對電氣特性有嚴格的要求,包括電壓水平、終端電阻、電纜長度等。確保遵循
    的頭像 發(fā)表于 11-21 10:16 ?1370次閱讀

    CAN總線通信中的數(shù)據(jù)結(jié)構(gòu)解析

    CAN總線由Bosch公司在1980年代開發(fā),旨在為汽車電子系統(tǒng)提供一個可靠的通信網(wǎng)絡。隨著技術(shù)的發(fā)展,CAN總線已經(jīng)被廣泛應用于各種工業(yè)和自動化領域。 2.
    的頭像 發(fā)表于 11-12 10:12 ?3198次閱讀

    汽車CAN總線報文類型格式解析#CAN #常學常新

    CAN總線
    北匯信息POLELINK
    發(fā)布于 :2024年11月08日 18:25:47

    繞線電感定制的注意事項

    電子發(fā)燒友網(wǎng)站提供《繞線電感定制的注意事項.docx》資料免費下載
    發(fā)表于 09-20 11:24 ?4次下載

    共模電感定制的注意事項

    電子發(fā)燒友網(wǎng)站提供《共模電感定制的注意事項.docx》資料免費下載
    發(fā)表于 09-04 11:47 ?0次下載

    CAN總線的接口類型

    CAN總線(Controller Area Network)是一種基于廣播的串行通信協(xié)議,廣泛用于連接分布式系統(tǒng)的各個設備,實現(xiàn)它們之間的數(shù)據(jù)交換和控制。CAN
    的頭像 發(fā)表于 09-03 14:13 ?4255次閱讀

    LiFePO4設計注意事項

    電子發(fā)燒友網(wǎng)站提供《LiFePO4設計注意事項.pdf》資料免費下載
    發(fā)表于 09-03 09:24 ?0次下載
    LiFePO4設計<b class='flag-5'>注意事項</b>

    can標準和擴展能否共存

    CAN(Controller Area Network)是一種用于汽車和工業(yè)自動化領域的現(xiàn)場總線通信協(xié)議。CAN協(xié)議具有多種格式,包括標準
    的頭像 發(fā)表于 07-24 15:24 ?2946次閱讀

    can標準和擴展的區(qū)別

    CAN(Controller Area Network)是一種用于汽車和工業(yè)領域的通信協(xié)議,它允許多個設備在同一總線上進行通信。CAN協(xié)議有兩種
    的頭像 發(fā)表于 07-24 15:20 ?3525次閱讀

    can網(wǎng)絡數(shù)據(jù)特點

    特點,在分布式系統(tǒng)得到了廣泛應用。 數(shù)據(jù)的重要性 :數(shù)據(jù)CAN網(wǎng)絡中用于數(shù)據(jù)傳輸?shù)幕締卧浣Y(jié)構(gòu)設計和特性直接關(guān)系到整個網(wǎng)絡的通信
    的頭像 發(fā)表于 07-24 15:18 ?823次閱讀

    CAN總線的數(shù)據(jù)結(jié)構(gòu)

    CAN總線是一種基于時間分割的通信協(xié)議,它允許多個設備共享一個通信介質(zhì)(如雙絞線或光纖)。CAN總線的數(shù)據(jù)傳輸速率可以達到1 Mbps,適用于短距離通信。
    的頭像 發(fā)表于 07-24 15:06 ?1909次閱讀