关于can通讯异常,不懂的不要接我写了两个can通讯的程序,一个无法接收到信号,另一个运行起来会导致总线上所有仪表异常,可能会是哪些原因导致的?详细一点
1个回答
关注
展开全部
1、两个节点近距离测试,低波特率通信正常,高波特率无法通信。
可能原因:未加终端电阻。由于CAN收发芯片内部CANH、CANL引脚为开漏驱动,如图1,在显性状态期间,总线的寄生电容会被充电,而在恢复到隐性状态时,这些电容需要放电。如果CANH、CANL之间没有放置任何阻性负载,电容只能通过收发器内部阻值较大的差分电阻放电。如果放电速度过慢,就会出现通信问题。
解决方法:增加终端电阻。
咨询记录 · 回答于2021-08-29
关于can通讯异常,不懂的不要接我写了两个can通讯的程序,一个无法接收到信号,另一个运行起来会导致总线上所有仪表异常,可能会是哪些原因导致的?详细一点
1、两个节点近距离测试,低波特率通信正常,高波特率无法通信。可能原因:未加终端电阻。由于CAN收发芯片内部CANH、CANL引脚为开漏驱动,如图1,在显性状态期间,总线的寄生电容会被充电,而在恢复到隐性状态时,这些电容需要放电。如果CANH、CANL之间没有放置任何阻性负载,电容只能通过收发器内部阻值较大的差分电阻放电。如果放电速度过慢,就会出现通信问题。解决方法:增加终端电阻。
图1 CAN收发器结构示意图2、组网节点数少,通信正常,增加节点后,通信异常。可能原因:总线电容过大。总线电容过大会影响CAN差分波形上升下降速度,如图2。解决方法:a. 检查CAN节点接口的外围电路,是否有外加电容、TVS管等器件,适当去除,以降低电容。b. 降低工作波特率。波特率降低可以延长位时间,减小电容的影响,但若电容过大,则不一定有效。
已赞过
评论
收起
你对这个回答的评价是?