博客專欄

        EEPW首頁 > 博客 > 詳解CAN總線:CAN總線故障界定與管理

        詳解CAN總線:CAN總線故障界定與管理

        發布人:美男子玩編程 時間:2022-10-21 來源:工程師 發布文章

        CAN總線故障界定的目標是實現數據傳輸系統即使在節點發生故障的情況下也能維持很高的可用性。


        因此故障界定策略必須證明在以下2個方面是可靠的:


        • 區分短期故障和永久性故障;

        • 找到并斷開故障節點。



        故障界定策略是每個節點都配備有一個發送錯誤接收器及一個接收錯誤接收器,前者記錄發送幀期間發生的錯誤數目,后者則記錄接收幀期間發生的錯誤數目。



        1


        錯誤狀態的種類


        對故障界定而言,CAN節點根據錯誤計數結果的不同,可以處于下列3種狀態之:主動錯誤狀態、被動錯誤狀態和總線關閉態。



        1、主動錯誤狀態


        主動錯誤狀態是可以正常參加總線通信的狀態。處于主動錯誤狀態的單元檢測出錯誤時,輸出主動錯誤標志。



        2、被動錯誤狀態


        被動錯誤狀態是易引起錯誤的狀態。


        處于被動錯誤狀態的單元雖能參加總線通信,但為不妨礙其它單元通信,接收時不能積極地發送錯誤通知。


        處于被動錯誤狀態的單元即使檢測出錯誤,而其它處于主動錯誤狀態的單元如果沒發現錯誤,整個總線也被認為是沒有錯誤的。


        處于被動錯誤狀態的單元檢測出錯誤時,輸出被動錯誤標志。


        另外,處于被動錯誤狀態的單元在發送結束后不能馬上再次開始發送。在開始下次發送前,在間隔幀期間內必須插入“延遲傳送”(8 個位的隱性位)。



        3、總線關閉態


        總線關閉態是不能參加總線上通信的狀態。信息的接收和發送均被禁止。


        這些狀態依靠發送錯誤計數和接收錯誤計數來管理,根據計數值決定進入何種狀態。錯誤狀態和計數值的關系如下表和圖所示:



        圖片

        圖片

        2


        故障界定規則


        發送錯誤計數值和接收錯誤計數值根據一定的條件發生變化。錯誤計數器在錯誤標志的第一個位出現的時間點上開始計數。一次數據的接收和發送可能同時滿足多個條件。


        錯誤計數值的變動條件如下表所示:



        圖片



        *博客內容為網友個人發布,僅代表博主個人觀點,如有侵權請聯系工作人員刪除。



        關鍵詞: CAN總線

        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 临江市| 永清县| 石狮市| 厦门市| 扬中市| 勐海县| 白城市| 六安市| 文昌市| 蒲城县| 巍山| 玛多县| 盐城市| 哈尔滨市| 滨海县| 静安区| 开鲁县| 盐山县| 天津市| 丽江市| 清新县| 江西省| 乌拉特前旗| 台州市| 车致| 怀化市| 广平县| 桑日县| 乌兰浩特市| 图片| 驻马店市| 天津市| 苗栗县| 滨海县| 钦州市| 金堂县| 望谟县| 荆州市| 禹州市| 灵宝市| 巢湖市|