色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

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

CAN節(jié)點錯誤管理機制工作原理解析

ZLG致遠(yuǎn)電子 ? 2025-03-25 11:44 ? 次閱讀

CAN節(jié)點的穩(wěn)定性、可靠性和安全性得益于其強大的錯誤管理機制。那么,CAN節(jié)點為什么能感知錯誤?又是如何響應(yīng)錯誤?您是否能清晰地想象出這一過程?本文將為大家詳細(xì)分析CAN節(jié)點錯誤管理的工作過程。


節(jié)點電路構(gòu)成

如圖1所示,MCU作為主控制器,完成CAN控制器和功能電路的控制。

75e64ec0-092b-11f0-9434-92fbcf53809c.jpg

圖1 CAN節(jié)點組成框圖

CAN控制器是工作于數(shù)據(jù)鏈路層的器件,集成了CAN規(guī)范中數(shù)據(jù)鏈路層的全部功能,其功能由軟件和硬件共同實現(xiàn),從設(shè)備供應(yīng)商買回來的CAN控制器已經(jīng)把相應(yīng)的邏輯固化在其硅片之中;MCU是工作于應(yīng)用層的器件,其功能由軟件和硬件共同實現(xiàn),MCU運行的程序可由設(shè)計者靈活設(shè)計,以實現(xiàn)CAN節(jié)點的特定功能;CAN收發(fā)器工作于物理層,其功能完全由硬件實現(xiàn),其作用是將CAN控制器的邏輯電平轉(zhuǎn)化為CAN總線的模擬差分信號,以及把總線模擬差分信號轉(zhuǎn)換成CAN控制器的邏輯電平。

CAN節(jié)點的錯誤管理屬于CAN通信規(guī)范數(shù)據(jù)鏈路層的內(nèi)容,具體來說,錯誤管理是通過MCU和CAN控制器來實施的。可以說,CAN控制器是錯誤管理的基礎(chǔ)設(shè)施,我們可以從兩個方面理解其工作邏輯:一是如何感知錯誤,二是如何響應(yīng)錯誤。

注:本文所說的CAN規(guī)范指的是德國BOSCH公司的《CAN Specification Version 2.0》。

節(jié)點如何感知錯誤?

如前文所述,節(jié)點對總線錯誤的識別是通過CAN控制器來完成的。CAN控制器輸出給收發(fā)器發(fā)送引腳TX的邏輯信號位會從收發(fā)器接收引腳RX接收,這使得CAN控制器可以在發(fā)送一個邏輯位期間同時監(jiān)測總線的實際電平值。CAN控制器檢測總線錯誤原理如圖2所示:

7602b196-092b-11f0-9434-92fbcf53809c.jpg

圖2 監(jiān)測總線錯誤原理圖

如圖2描述,CAN控制器監(jiān)測一個總線電平的電平值是在采樣點位置進(jìn)行的,判斷是否出現(xiàn)錯誤是在信息處理時間內(nèi)完成的。

綜上所述,CAN控制器對錯誤的識別可概括為:無論是作為發(fā)送器還是接收器,在采樣點位置成功監(jiān)測到當(dāng)前總線的實際電平值后,CAN控制器便按照CAN規(guī)范中描述的錯誤管理規(guī)則判斷是否出現(xiàn)錯誤。

CAN通信過程中的錯誤類型包括5種,分別是:位錯誤、填充錯誤、CRC錯誤、幀格式錯誤、應(yīng)答錯誤。接下來分別對5種錯誤的檢測識別過程進(jìn)行解析。

1、位錯誤

位錯誤是由作為發(fā)送器的節(jié)點在發(fā)送報文期間進(jìn)行檢測識別的。CAN控制器的程序邏輯發(fā)送的電平與監(jiān)測到總線的實際信號不一致即在此位期間檢測到位錯誤。

例外情況,在仲裁場或應(yīng)答間隙期間發(fā)送一“隱性”位卻監(jiān)視到一“顯性”位,以及當(dāng)發(fā)送器發(fā)送一個被動錯誤標(biāo)志但檢測到“顯性”位時,均也不被視為位錯誤,以實現(xiàn)特定的功能。

2、填充錯誤

在CAN幀的位場中,幀起始、仲裁場、控制場、數(shù)據(jù)場以及CRC序列,均通過位填充的方法編碼。無論何時,發(fā)送器只要檢測到這些位場對應(yīng)位流里有5個連續(xù)相同值的位,便自動在接著的下一位插入一個補碼位。CAN控制器在監(jiān)測總線電平值的同時對連續(xù)相同的位電平值會進(jìn)行計數(shù),如果在使用位填充法進(jìn)行編碼的信息中,出現(xiàn)了第6個連續(xù)相同的位電平值時,便檢測到一個填充錯誤。

3、CRC錯誤

CRC錯誤是由作為接收器的節(jié)點進(jìn)行檢測識別的。CRC序列共15位(不包含填充位),其內(nèi)容由幀起始、仲裁場、控制場、數(shù)據(jù)場(如果有)的無填充位流計算而來。

CRC序列計算使用CAN規(guī)范規(guī)定的方法,作為發(fā)送器的節(jié)點發(fā)送CAN報文時CRC序列由規(guī)定的計算方法確定。作為接收器的節(jié)點從總線上接收完數(shù)據(jù)場最后一個數(shù)據(jù)位(沒有數(shù)據(jù)場時是接收完控制場的最后一個位)后,如果接下來接收到實際的CRC序列與接收器的計算結(jié)果不一致,便檢測到CRC錯誤。

4、格式錯誤

節(jié)點無論是作為發(fā)送器的還是作為接收器均可在監(jiān)測報文期間檢測識別格式錯誤。由于CAN通信嚴(yán)格按照CAN規(guī)范定義的幀格式進(jìn)行報文封裝傳輸,CAN控制器在監(jiān)測總線電平位時明確知道當(dāng)前位、后續(xù)位屬于幀格式中哪個位場,以及屬于位場的第幾個位,當(dāng)接收到一個屬于幀格式固定形式的位時,如果實際電平值與幀格式定義不一致,則檢測到一個格式錯誤。

例外情況,對于接收器來說,幀結(jié)束最后的位被置于“不重要”狀態(tài),監(jiān)測到的幀結(jié)束最后一位期間的顯性位不被當(dāng)作幀錯誤。

5、應(yīng)答錯誤

應(yīng)答錯誤是由作為發(fā)送器的節(jié)點檢測識別的。在發(fā)送報文時,只要在發(fā)送應(yīng)答間隙(隱性)期間所監(jiān)測到的位不為“顯性”,則發(fā)送器會檢測到一個應(yīng)答錯誤。

注:1、上述5種錯誤不會相互排斥,也就是說CAN幀中的某個錯誤有可能同屬一種以上的錯誤類型。

2、如上所述,作為發(fā)送器或接收器的不同角色時,直接能檢測到的錯誤類型是不一樣的。

節(jié)點如何響應(yīng)錯誤?

CAN規(guī)范中規(guī)定每個CAN控制器中實現(xiàn)一個發(fā)送錯誤計數(shù)器和一個接收錯誤計數(shù)器。根據(jù)計數(shù)值不同,節(jié)點會處于不同的節(jié)點狀態(tài),并根據(jù)計數(shù)值的變化進(jìn)行狀態(tài)轉(zhuǎn)換,狀態(tài)轉(zhuǎn)換如圖3所示。

761b27ee-092b-11f0-9434-92fbcf53809c.png

圖3 節(jié)點狀態(tài)轉(zhuǎn)換圖

當(dāng)CAN控制器檢測到總線錯誤后通過發(fā)送錯誤標(biāo)志指示錯誤。對于“錯誤主動”的節(jié)點,錯誤標(biāo)志表現(xiàn)為“主動錯誤標(biāo)志”,對于“錯誤被動”的節(jié)點,錯誤標(biāo)志表現(xiàn)為“被動錯誤標(biāo)志”。

無論檢測到位錯誤、填充錯誤、CRC錯誤、幀格式錯誤、還是應(yīng)答錯誤,CAN控制器一般會在緊鄰的下一位發(fā)送錯誤標(biāo)志。例外情況,如果檢測到的錯誤類型是CRC錯誤,錯誤標(biāo)志的發(fā)送開始于ACK定界符之后的位,即幀結(jié)尾。

綜上所述,CAN控制器對錯誤的響應(yīng)可概括為:根據(jù)當(dāng)前的節(jié)點狀態(tài)在位流序列相應(yīng)的位置用錯誤標(biāo)志標(biāo)示錯誤,并按照CAN規(guī)范更新錯誤計數(shù)值,進(jìn)行節(jié)點狀態(tài)轉(zhuǎn)換。并且是每成功監(jiān)測到一次錯誤便進(jìn)行一次響應(yīng)。

注:1、由于篇幅有限,關(guān)于錯誤計數(shù)的詳細(xì)規(guī)則、節(jié)點狀態(tài)轉(zhuǎn)換以及錯誤幀格式等細(xì)節(jié)均不在本文進(jìn)行討論,請讀者查閱CAN協(xié)議規(guī)范。

2、上述分析可知道,錯誤響應(yīng)的關(guān)鍵要素包括錯誤標(biāo)志的類型和響應(yīng)的位置。

錯誤管理機制的作用

錯誤管理機制的作用主要體現(xiàn)在對錯誤的響應(yīng)過程。

作為發(fā)送器發(fā)送錯誤標(biāo)志時,無論“主動錯誤”還是“被動錯誤”都必然包括6個連續(xù)同極性的位,使其他節(jié)點也識別到總線錯誤,進(jìn)而使所有節(jié)點都能丟棄當(dāng)前出錯的幀。

作為接收器發(fā)送錯誤標(biāo)志時,“主動錯誤”標(biāo)志使其他節(jié)點也識別到總線錯誤從而使所有節(jié)點(包括作為發(fā)送器的節(jié)點)都能丟棄當(dāng)前出錯的幀;“被動錯誤”標(biāo)志不影響總線通信從而使其他節(jié)點都能成功接收當(dāng)前幀,處于“被動錯誤”狀態(tài)的節(jié)點屬于“不可信”狀態(tài),其檢測到錯誤僅是自己丟棄當(dāng)前幀,這也是錯誤管理的靈活性所在,即錯誤響應(yīng)并不是嚴(yán)格在任何情況下都使所有節(jié)點丟棄同一幀報文。

綜上所述,錯誤管理機制可以使所有的節(jié)點同時接收或丟棄總線的同一幀報文,又可以使作為接收器的被動錯誤狀態(tài)的節(jié)點僅自己丟棄當(dāng)前報文而不影響其他節(jié)點。因此,錯誤管理是實現(xiàn)CAN通信數(shù)據(jù)一致性的機制之一。

總結(jié)

CAN節(jié)點錯誤管理功能是由CAN節(jié)點組成中的CAN控制器負(fù)責(zé)的,對錯誤管理的工作過程可以從“錯誤識別”和“錯誤響應(yīng)”兩個方面進(jìn)行理解。錯誤管理是實現(xiàn)CAN通信數(shù)據(jù)的一致性的機制之一。

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

    關(guān)注

    146

    文章

    17550

    瀏覽量

    355738
  • CAN
    CAN
    +關(guān)注

    關(guān)注

    57

    文章

    2806

    瀏覽量

    465532
  • CAN節(jié)點
    +關(guān)注

    關(guān)注

    0

    文章

    9

    瀏覽量

    9118
收藏 0人收藏

    評論

    相關(guān)推薦

    CAN控制器總線錯誤分析之CAN節(jié)點BusOff恢復(fù)過程分析與測試

    “ 總線關(guān)閉(bus off)是CAN節(jié)點比較重要的錯誤處理機制。那么,在總線關(guān)閉狀態(tài)下,CAN節(jié)點的恢復(fù)流程是怎樣的?又該如何
    發(fā)表于 08-04 11:16 ?1.5w次閱讀
    <b class='flag-5'>CAN</b>控制器總線<b class='flag-5'>錯誤</b>分析之<b class='flag-5'>CAN</b><b class='flag-5'>節(jié)點</b>BusOff恢復(fù)過程分析與測試

    校驗碼工作原理解析

    校驗碼工作原理解析   元件故障噪聲干擾等各種因素常常導(dǎo)致計算機在處理信息過程中出現(xiàn)錯誤。為了防止錯誤,可將信號采用專門的邏輯線路進(jìn)行編碼以檢測錯誤,甚
    發(fā)表于 04-13 14:16 ?2213次閱讀
    校驗碼<b class='flag-5'>工作原理解析</b>

    觸摸屏的應(yīng)用與工作原理解析

    觸摸屏的應(yīng)用與工作原理解析
    發(fā)表于 02-08 02:13 ?38次下載

    最全SPARK內(nèi)存管理機制

    最全SPARK內(nèi)存管理機制
    發(fā)表于 09-08 14:17 ?5次下載
    最全SPARK內(nèi)存<b class='flag-5'>管理機制</b>

    淺談局部網(wǎng)絡(luò)管理 基于CAN總線的局部網(wǎng)絡(luò)管理機制設(shè)計

    CAN總線局部網(wǎng)絡(luò)管理機制及實現(xiàn) 近年來, 汽車 的節(jié)能問題備受關(guān)注,消減不必要的能源損耗是一種非常有效的方法。
    發(fā)表于 04-12 17:32 ?7171次閱讀
    淺談局部網(wǎng)絡(luò)<b class='flag-5'>管理</b> 基于<b class='flag-5'>CAN</b>總線的局部網(wǎng)絡(luò)<b class='flag-5'>管理機制</b>設(shè)計

    節(jié)點位置信息驅(qū)動的終端緩存管理機制

    ,合理的節(jié)點緩存管理機制可以在提高消息投遞成功率的同時減少網(wǎng)絡(luò)開銷、降低終端能耗。然而·現(xiàn)有緩存管理機制都是從消息隊列特征或靜態(tài)屬性方面展開研究,忽視了節(jié)點的位置、移動方冋等特征。從而
    發(fā)表于 03-31 10:15 ?16次下載
    <b class='flag-5'>節(jié)點</b>位置信息驅(qū)動的終端緩存<b class='flag-5'>管理機制</b>

    深入探討CAN節(jié)點錯誤管理機制

    CAN節(jié)點的穩(wěn)定性、可靠性和安全性得益于其強大的錯誤管理機制。那么,CAN節(jié)點為什么能感知
    的頭像 發(fā)表于 10-20 09:49 ?2398次閱讀
    深入探討<b class='flag-5'>CAN</b><b class='flag-5'>節(jié)點錯誤</b><b class='flag-5'>管理機制</b>

    關(guān)于CAN總線錯誤的相關(guān)知識

    在本系列文章中,我們將為您詳細(xì)介紹CAN總線錯誤的相關(guān)知識,包括CAN總線錯誤的基礎(chǔ)概念、CAN總線錯誤
    的頭像 發(fā)表于 05-27 17:56 ?3255次閱讀

    CAN總線錯誤的類型介紹

    在本系列文章中,我們將為您詳細(xì)介紹CAN總線錯誤的相關(guān)知識,包括CAN總線錯誤的基礎(chǔ)概念、CAN總線錯誤
    的頭像 發(fā)表于 06-13 16:08 ?8465次閱讀

    虹科干貨 | 帶你全面認(rèn)識“CAN總線錯誤”(二)——CAN錯誤類型

    節(jié)點錯誤狀態(tài),并通過實際的應(yīng)用測試生成并記錄CAN錯誤CAN總線錯誤類型CAN總線協(xié)議規(guī)定了5
    的頭像 發(fā)表于 06-09 09:46 ?2408次閱讀
    虹科干貨 | 帶你全面認(rèn)識“<b class='flag-5'>CAN</b>總線<b class='flag-5'>錯誤</b>”(二)——<b class='flag-5'>CAN</b><b class='flag-5'>錯誤</b>類型

    虹科干貨 | 帶你全面了解“CAN總線錯誤”(三)——CAN節(jié)點狀態(tài)與錯誤計數(shù)器

    節(jié)點錯誤狀態(tài),并通過實際的應(yīng)用測試生成并記錄CAN錯誤。前文回顧虹科干貨|帶你全面認(rèn)識“CAN總線錯誤”(一)——
    的頭像 發(fā)表于 06-09 09:46 ?2652次閱讀
    虹科干貨 | 帶你全面了解“<b class='flag-5'>CAN</b>總線<b class='flag-5'>錯誤</b>”(三)——<b class='flag-5'>CAN</b><b class='flag-5'>節(jié)點</b>狀態(tài)與<b class='flag-5'>錯誤</b>計數(shù)器

    虹科干貨 | 帶你全面認(rèn)識“CAN總線錯誤”(一)——CAN總線錯誤錯誤

    節(jié)點錯誤狀態(tài),并通過實際的應(yīng)用測試生成并記錄CAN錯誤。什么是CAN總線錯誤?控制器局域網(wǎng)絡(luò)(ControllerAreaNetwork,
    的頭像 發(fā)表于 05-27 10:39 ?4855次閱讀
    虹科干貨 | 帶你全面認(rèn)識“<b class='flag-5'>CAN</b>總線<b class='flag-5'>錯誤</b>”(一)——<b class='flag-5'>CAN</b>總線<b class='flag-5'>錯誤</b>與<b class='flag-5'>錯誤</b>幀

    虹科干貨 | 帶你全面認(rèn)識“CAN總線錯誤”(二)——CAN錯誤類型

    節(jié)點錯誤狀態(tài),并通過實際的應(yīng)用測試生成并記錄CAN錯誤CAN總線錯誤類型CAN總線協(xié)議規(guī)定了5
    的頭像 發(fā)表于 06-02 09:41 ?1630次閱讀
    虹科干貨 | 帶你全面認(rèn)識“<b class='flag-5'>CAN</b>總線<b class='flag-5'>錯誤</b>”(二)——<b class='flag-5'>CAN</b><b class='flag-5'>錯誤</b>類型

    虹科干貨 | 帶你全面了解“CAN總線錯誤”(四)——在實踐中生成和記錄CAN錯誤

    節(jié)點錯誤狀態(tài),并通過實際的應(yīng)用測試生成并記錄CAN錯誤。在之前發(fā)布的文章中,我們介紹了CAN錯誤錯誤
    的頭像 發(fā)表于 06-09 10:21 ?1882次閱讀
    虹科干貨 | 帶你全面了解“<b class='flag-5'>CAN</b>總線<b class='flag-5'>錯誤</b>”(四)——在實踐中生成和記錄<b class='flag-5'>CAN</b><b class='flag-5'>錯誤</b>

    CAN總線控制器的工作原理

    CAN(Controller Area Network,控制器局域網(wǎng))總線控制器的工作原理涉及多個方面,包括消息傳輸、沖突檢測與解決、總線仲裁等關(guān)鍵機制。以下是對CAN總線控制器
    的頭像 發(fā)表于 09-30 11:33 ?1466次閱讀
    主站蜘蛛池模板: 少妇一夜未归暴露妓女身份 | 人妖欧美一区二区三区四区 | 国产精品1区2区 | 欧美动物交ideos | 日本后进式猛烈xx00动态图 | 伊人久久影视 | 52av我爱 | 国产精品69人妻无码久久久 | 日韩精品亚洲专区在线影院 | 古代荡女丫鬟高H辣文纯肉 姑娘视频日本在线播放 | 久久亚洲精品成人综合 | 性插图动态图无遮挡 | WWW婷婷AV久久久影片 | 一个人高清在线观看日本免费 | 天美传媒色情原创精品 | 青草久久精品亚洲综合专区 | 青青精品国产自在线拍 | 午夜福利体验试看120秒 | 久久国产欧美日韩精品免费 | 日韩精品免费在线观看 | 丰满少妇67194视频 | 国产成人一区免费观看 | 少妇高潮惨叫久久久久久欧美 | 97在线播放视频 | 亚洲福利天堂网福利在线观看 | 久久中文字幕亚洲 | 暖暖日本手机免费完整版在线观看 | 伦理片2499电影伦理片 | 2012中文字幕在线动漫电影 | 92国产精品午夜免费福利视频 | 成人毛片手机版免费看 | 纯h超级大尺度小黄文 | 日日噜噜夜夜狠狠视频 | 欧美精品九九99久久在观看 | 亚洲国产中文字幕新在线 | 国产AV精品白浆一区二 | 奇米网一区二区三区在线观看 | 强开乳罩摸双乳吃奶视频 | 欧美日韩国产高清综合二区 | 成人免费视频无遮挡在线看 | 日本视频中文字幕一区二区 |

    電子發(fā)燒友

    中國電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會員交流學(xué)習(xí)
    • 獲取您個性化的科技前沿技術(shù)信息
    • 參加活動獲取豐厚的禮品