CAN通讯常见的几个问题及解决方法
1、低波特率通信正常,高波特率无法通信
问题:终端电阻未匹配。CAN收发器芯片内部的CAN线CANH、CANL引脚是开漏结构,如下图 1,总线上的寄生电容在显性状态时会被充电,而从显性状态切换到隐性状态的时候,总线上的电容要放电。如果CANH、CANL之间没有匹配电阻或者匹配的终端电阻太大,就会导致电容上的电荷放电速度过慢,从而导致在下降沿出线边沿下降过缓的现象,如图 2,从而就会出现通信问题。
解决方法:匹配适当的终端电阻。图 1 CAN收发器芯片内部CANH、CANL结构2、总线电容过大导致的通讯异常。
问题:总线电容过大。总线电容过大会影响CAN差分波形上升下降速度,如上图2。
解决方法:a. 检查CAN总线上是否有外加电容、是否有保护器件(TVS等)的寄生电容过大等问题,适当去除,以降低电容。b. 降低工作波特率。波特率降低可以延长位时间,减小电容的影响,但若电容过大,则不一定有效。
3、应用中易损坏,更换模块后正常。
问题:保护不足。CAN模块由于体积受限,内部保护电路等级不高。在一些环境恶劣的应用现场,干扰能量过大易造成损坏。
解决方法:根据损坏情况适当增加保护电路。图 3 是推荐的典型保护电路简图。L1为共模电感,用于滤除差分线上的共模干扰,其阻抗选择范围为120Ω/100MHz ~2200Ω/100MHz,典型值选取600Ω/100MHz;C1、C2为信号线上的滤波电容,给干扰提供低阻抗的回流路径,我一般取33pF,太大了会对通讯造成影响;C3为接口地和数字地之间的跨接电容,典型取值为1000pF,耐压要求达到2KV以上,C3容值可根据测试情况进行调整;D1、D2为瞬态抑制二极管,因为TVS只是用来静电防护,TVS的功率不作要求。TVS管的结电容对信号传输有一定的影响,CAN接口推荐使用结电容小于100pF的TVS管。如果设备为金属外壳,同时单板可以独立的划分出接口地,那么金属外壳与接口地直接电气连接,且单板地与接口地通过1000pF电容相连;如果设备为非金属外壳,那么接口地PGND与单板地GND直接电气连接。著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2023-06-17
最近编辑:1年前