AUTOSAR从入门到精通100讲(三十六)-CAN总线错误处理
一 背景
寫這篇文章是因為我看到網上介紹CAN總線錯誤處理的文章,清一色的都是生搬照抄教科書或是數據文檔的內容,特別是國內很難找到一些有價值的內容,這讓一些真正有需要的人很苦惱,包括我自己。這篇不打算對CAN的錯誤處理機制做進一步的探討,而是從實際工作中碰到的具體問題來分析一些常見的CAN總線錯誤和解決辦法。
二 CAN節點數據收發過程
了解CAN節點在總線上數據上的收發過程很重要,之前的一篇文章講解了一些CAN總線的錯誤處理機制,但是那些都是理論上的東西,如果不深入了解CAN總線上的數據收發過程,理解那些理論的東西難免有些晦澀。
我們知道CAN總線上的每個節點往總線上發送數據的同時會同時讀取總線上的數據,并與自己發送的數據作對比。
CAN信息發送成功后,在這個間隙內,接收節點可以準備要回復的信息,也就是把應答場填充為顯性0,在發送時其為隱性1應答過程可能如下:當信息傳輸到ACK前的Del時,可以認為信息已經傳輸完畢,接收節點也接收到了足夠的信息來檢測接收的信息是否正確,所以這時接收節點就會檢測信號是否正確,如果正確,就將ACK置位為顯性0,注意這時,發送節點因為還在發送而接收節點又將ACK信息置位為1,所以它就會在回讀時檢測到ACK為0,判斷接收成功。注意:這其中有個接收節點用顯性覆蓋隱性---覆蓋ACK位的過程,覆蓋+回讀。
ACK前后各加一個Del,就是為了考慮到時間誤差,讓接收節點有足夠的時間對ACK確認。
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的AUTOSAR从入门到精通100讲(三十六)-CAN总线错误处理的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: AUTOSAR从入门到精通100讲(三十
- 下一篇: AUTOSAR从入门到精通100讲(三十
