• 正文
  • 相關推薦
申請入駐 產(chǎn)業(yè)圖譜

如何解決CAN通訊故障?原因分析與解決方法全攻略

06/17 11:00
979
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

在日常工作中,我們經(jīng)常收到客戶的反饋,他們表示 CAN 卡無法正常通訊,這給工作帶來了諸多不便。今天,就讓我們深入探討一下導致 CAN 卡通訊失敗的常見原因,以及相應的解決方法。

? 單個 CAN 設備發(fā)送失敗

有些客戶反映,即使只有一個 CAN 口在發(fā)送數(shù)據(jù),且總線都未連接,仍然會出現(xiàn)發(fā)送失敗的情況。這可能令人感到困惑,因為按照常理,只要發(fā)送端正常工作,似乎不應該出現(xiàn)這種問題。

然而,這正是 CAN 總線的獨特之處。與常見的 232、485 總線不同,CAN 總線的收發(fā)器具備自我監(jiān)測和糾錯機制,無需額外的程序輔助。當單個設備發(fā)送數(shù)據(jù)時,發(fā)送失敗的原因在于 CAN 收發(fā)器的 ACK 應答機制。在 CAN 控制器發(fā)送完數(shù)據(jù)的 crc 校驗碼后,它會檢測“ack 位”是否呈現(xiàn)顯性狀態(tài)。這個 ACK 位必須由接收設備將電壓差拉高至顯性,否則發(fā)送端會認為發(fā)送失敗。

這里有一個關鍵點需要特別注意:如果接收數(shù)據(jù)的 CAN 卡被設置為只聽模式,那么它不會做出 ACK 回應,這同樣會導致發(fā)送失敗。因此,在排查此類問題時,務必檢查接收端的設置,確保其處于正常工作模式,能夠正確回應 ACK 信號。

?兩個 CAN 設備對接但發(fā)送失敗

還有一種常見的情況是,兩個 CAN 設備都已正確對接,且波特率設置一致,但仍然無法正常發(fā)送數(shù)據(jù)。這種情況多發(fā)生在客戶使用高波特率且總線較長時,尤其是沒有使用終端電阻或僅使用了一個終端電阻的情況下。此時,如果使用示波器進行分析,會發(fā)現(xiàn)波形出現(xiàn)振鈴現(xiàn)象,即波形不再呈現(xiàn)規(guī)整的矩形電信號上下波動。

這是由于總線較長時,末端缺乏設備消耗電能,導致信號反射形成浪涌。可以將總線想象成一條水管,當水流到達末端而無處可去時,就會產(chǎn)生回流。而通過在兩個終端各添加一個 120 歐姆的電阻來消耗電能,就能有效消除這種浪涌現(xiàn)象,從而使通訊恢復正常。

?四個關鍵要點

綜上所述,要確保 CAN 通訊成功,需要重點關注以下四個要點:

1. 接線正確:這是最基本的要求,只有確保所有線路連接無誤,才能為正常通訊提供基礎保障。

2. 波特率一致:兩個 CAN 設備的波特率必須保持一致,否則會導致數(shù)據(jù)傳輸混亂,無法正確解讀。

3. 對端設備有 ACK 響應:如前文所述,ACK 應答機制對于 CAN 通訊至關重要,接收端必須能夠正確回應 ACK 信號,才能保證發(fā)送端確認數(shù)據(jù)已成功送達。

4. 終端電阻匹配:在長距離的 CAN 總線中,終端電阻的匹配對于信號的穩(wěn)定傳輸起著關鍵作用。

合理配置終端電阻,可以有效避免信號反射和浪涌問題,確保通訊的可靠性。通過以上分析和解決方法,相信能夠幫助大家更好地理解和解決 CAN 卡通訊失敗的問題。

在實際工作中,只要嚴格按照這四個要點進行檢查和配置,就能大大提高 CAN 通訊的成功率,避免因通訊故障而影響工作進度。

高性能以太網(wǎng)轉CAN FD設備

CANFDNET-800U

CANFD與車載以太網(wǎng)

黑白名單模式

靈活連接擴展

 

致遠電子

致遠電子

廣州致遠電子股份有限公司成立于2001年,注冊資金5000萬元,國家級高新技術認證企業(yè),廣州市高端工控測量儀器工程技術研究開發(fā)中心,Intel ECA全球合作伙伴和微軟嵌入式系統(tǒng)金牌合作伙伴。

廣州致遠電子股份有限公司成立于2001年,注冊資金5000萬元,國家級高新技術認證企業(yè),廣州市高端工控測量儀器工程技術研究開發(fā)中心,Intel ECA全球合作伙伴和微軟嵌入式系統(tǒng)金牌合作伙伴。收起

查看更多

相關推薦

登錄即可解鎖
  • 海量技術文章
  • 設計資源下載
  • 產(chǎn)業(yè)鏈客戶資源
  • 寫文章/發(fā)需求
立即登錄