CAN總線錯誤狀態(tài)的種類主要包括以下幾種,每種狀態(tài)都反映了CAN總線網(wǎng)絡中節(jié)點或總線的不同錯誤情況,以及相應的通信能力和限制。
一、主動錯誤狀態(tài)(Error Active)
定義與特點 :
- 主動錯誤狀態(tài)是CAN總線節(jié)點的一種正常通信狀態(tài),在這種狀態(tài)下,節(jié)點能夠正常地參與總線通信,并在檢測到錯誤時主動發(fā)出錯誤標志。
- 節(jié)點在主動錯誤狀態(tài)下,能夠發(fā)送和接收數(shù)據(jù)幀,并積極參與總線的錯誤檢測和報告過程。
觸發(fā)條件 :
- 當節(jié)點的發(fā)送錯誤計數(shù)器(TEC)和接收錯誤計數(shù)器(REC)均小于或等于127時,節(jié)點處于主動錯誤狀態(tài)。
行為表現(xiàn) :
- 當節(jié)點檢測到任何錯誤(如位錯誤、填充錯誤、格式錯誤、CRC錯誤、應答錯誤等)時,它會立即在下一個位時間發(fā)送一個主動錯誤標志(Active Error Flag),以通知其他節(jié)點發(fā)生了錯誤。
- 主動錯誤標志的發(fā)送會導致總線上的通信暫時中斷,直到錯誤處理完成。
二、被動錯誤狀態(tài)(Error Passive)
定義與特點 :
- 被動錯誤狀態(tài)是CAN總線節(jié)點在檢測到較多錯誤后所進入的一種狀態(tài)。在這種狀態(tài)下,節(jié)點雖然仍能參與通信,但在接收數(shù)據(jù)時不會積極發(fā)送錯誤通知,以避免干擾其他節(jié)點。
- 被動錯誤狀態(tài)的節(jié)點在發(fā)送數(shù)據(jù)后需要等待一段時間(稱為“掛起發(fā)送”或“延遲傳送”)才能再次發(fā)送,并在此期間插入特定的延遲傳送位。
觸發(fā)條件 :
- 當節(jié)點的發(fā)送錯誤計數(shù)器(TEC)大于或等于128,或接收錯誤計數(shù)器(REC)大于或等于128時,節(jié)點會進入被動錯誤狀態(tài)。
行為表現(xiàn) :
- 被動錯誤狀態(tài)的節(jié)點在檢測到錯誤時,會發(fā)送一個被動錯誤標志(Passive Error Flag)而不是主動錯誤標志。被動錯誤標志的發(fā)送對總線通信的影響較小,不會立即導致通信中斷。
- 節(jié)點在發(fā)送數(shù)據(jù)幀時,如果檢測到其他節(jié)點正在發(fā)送錯誤標志或過載標志,則會推遲自己的發(fā)送,并等待一個預定的時間后再嘗試發(fā)送。
三、總線關閉狀態(tài)(Bus Off)
定義與特點 :
- 總線關閉狀態(tài)是CAN總線節(jié)點在檢測到嚴重錯誤后所進入的一種狀態(tài)。在這種狀態(tài)下,節(jié)點無法參與總線上的任何通信活動,包括數(shù)據(jù)的接收和發(fā)送。
- 總線關閉狀態(tài)是CAN總線通信中最嚴重的錯誤狀態(tài),通常需要通過人工干預才能恢復。
觸發(fā)條件 :
- 當節(jié)點的發(fā)送錯誤計數(shù)器(TEC)大于或等于256時,節(jié)點會進入總線關閉狀態(tài)。
行為表現(xiàn) :
- 進入總線關閉狀態(tài)的節(jié)點會關閉其輸出驅動器,不再向總線發(fā)送任何信號。
- 節(jié)點在總線關閉狀態(tài)下無法接收或發(fā)送數(shù)據(jù)幀,也無法參與總線的錯誤檢測和報告過程。
- 要從總線關閉狀態(tài)恢復,節(jié)點通常需要重置其錯誤計數(shù)器,并等待一段時間后再嘗試重新加入總線。在某些情況下,可能還需要進行硬件或軟件的修復工作。
四、錯誤處理機制
CAN總線協(xié)議通過一系列的錯誤處理機制來確保網(wǎng)絡的可靠性和穩(wěn)定性。這些機制包括:
- 錯誤檢測 :通過CRC校驗、位檢測、幀格式檢查等方式來檢測通信過程中可能出現(xiàn)的錯誤。
- 錯誤報告 :當節(jié)點檢測到錯誤時,會發(fā)送相應的錯誤標志(主動錯誤標志或被動錯誤標志)來通知其他節(jié)點。
- 錯誤計數(shù) :每個節(jié)點都維護發(fā)送錯誤計數(shù)器(TEC)和接收錯誤計數(shù)器(REC),用于記錄節(jié)點在通信過程中檢測到的錯誤數(shù)量。
- 狀態(tài)轉換 :根據(jù)錯誤計數(shù)器的值,節(jié)點會在主動錯誤狀態(tài)、被動錯誤狀態(tài)和總線關閉狀態(tài)之間進行轉換。
- 錯誤恢復 :當節(jié)點進入被動錯誤狀態(tài)或總線關閉狀態(tài)時,會采取相應的恢復措施來嘗試重新加入總線。
五、總結
CAN總線錯誤狀態(tài)的種類包括主動錯誤狀態(tài)、被動錯誤狀態(tài)和總線關閉狀態(tài)。每種狀態(tài)都反映了節(jié)點在通信過程中的不同錯誤情況和相應的通信能力。通過錯誤處理機制,CAN總線能夠確保在出現(xiàn)錯誤時及時檢測和報告,并采取相應的恢復措施來維護網(wǎng)絡的可靠性和穩(wěn)定性。在實際應用中,了解這些錯誤狀態(tài)的種類和特性對于調試和維護CAN總線網(wǎng)絡具有重要意義。
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。
舉報投訴
-
CAN總線
+關注
關注
146文章
2050瀏覽量
135467 -
通信
+關注
關注
18文章
6444瀏覽量
140238 -
計數(shù)器
+關注
關注
32文章
2320瀏覽量
98504
發(fā)布評論請先 登錄
相關推薦
熱點推薦
CAN控制器總線錯誤分析之CAN節(jié)點BusOff恢復過程分析與測試
“ 總線關閉(bus off)是CAN節(jié)點比較重要的錯誤處理機制。那么,在總線關閉狀態(tài)下,CAN
發(fā)表于 08-04 11:16
?1.7w次閱讀
CAN總線錯誤分析與解決
和接收錯誤計數(shù),計數(shù)達到一定的累計以后就會產(chǎn)生CAN BUS OFF, 這說明CAN總線上出現(xiàn)了嚴重的錯誤。如下圖
發(fā)表于 01-14 06:55
淺析CAN總線錯誤分析與解決
此CAN總線上有干擾,導致CAN控制器發(fā)生接收錯誤,CAN總線上的信號經(jīng)過收發(fā)器轉化為差分電平信
發(fā)表于 10-08 14:31
?6121次閱讀
CAN總線的拓撲圖/錯誤狀態(tài)種類/錯誤計數(shù)值/分層結構/通信模式
一提到總線,就很容易讓我們聯(lián)想到錯綜復雜的計算機電線,可是這些總線總能起著十分重要的作用,今天我們就來認識下CAN總線協(xié)議。
發(fā)表于 01-20 10:33
?3729次閱讀
虹科干貨 | 帶你全面了解“CAN總線錯誤”(三)——CAN節(jié)點狀態(tài)與錯誤計數(shù)器
節(jié)點錯誤狀態(tài),并通過實際的應用測試生成并記錄CAN錯誤。前文回顧虹科干貨|帶你全面認識“CAN總線
虹科干貨 | 帶你全面了解“CAN總線錯誤”(四)——在實踐中生成和記錄CAN錯誤
AsimpleintrotoCANerrorsCAN總線錯誤介紹在本系列文章中,我們將為您詳細介紹CAN總線錯誤的相關知識,包括
CAN總線錯誤分析與解決 CAN節(jié)點發(fā)送錯誤不成功是什么原因
CAN總線狀態(tài)直接進入了BUS OFF狀態(tài),這意味著錯誤計數(shù)已經(jīng)超限,查看CPU收發(fā)寄存器的收發(fā)錯誤計數(shù)顯示發(fā)送
發(fā)表于 08-01 14:37
?7357次閱讀
認識CAN總線錯誤 CAN總線錯誤分析與解決
認識CAN 總線錯誤的第一步就是了解認識CAN 總線協(xié)議和它的具體功能,這樣才能更容易地理解CAN
發(fā)表于 08-14 15:18
?9571次閱讀
CAN總線錯誤狀態(tài)的種類
評論