5、近距離通信正常,遠距離無法通信。
可能原因:a. CAN速率過高。由于CAN總線的仲裁機理,其對延時有著非常嚴格的要求。線纜延時的存在,使得導線長度制約著實際應用中CAN的最高工作速率。CAN速率與通信距離成反比,速率越高,通信距離越短。b. 線纜阻抗大,遠端信號幅值過低。
解決方法:a.降低速率,或縮短總線長度,可參考圖5線纜長度與波特率的關系。b.換用阻抗小的電線纜,或適當增大終端電阻值,可參考圖6線纜長度與直流參數推薦。

圖5 線纜長度與波特率的關系

圖6 線纜長度與直流參數推薦
通過測試定位問題
當通過現有信息無法判斷問題所在時,則需要對CAN接口進行測試,定位問題點。已推測出問題所在時,也可以對CAN接口進行測試,以驗證推測與解決效果。
1、阻抗測量
在產品斷電、或從PCB卸下后,使用數字萬用表測量模塊各引腳阻抗是否異常,如圖7。若出現短路情況,說明模塊或相關聯電路有損壞現象。
測試時,TXD、RXD、VCC以GND為參考;CANH、CANL以CANG為參考。

圖7 阻抗測量示意
2、檢測模塊供電電壓
產品上電,使用數字萬用表測量模塊VCC-GND之間電壓,電壓應該在模塊正常供電范圍內,如圖8。若電壓值明顯低于正常范圍,且模塊發熱嚴重,則內部可能存在短路情況。若模塊發熱量正常(常規溫升15℃),則需要檢查外部供電電路是否異常。

圖8 供電測試示意圖