帛灿灿 发表于 2025-5-9 07:36

CAN通信刚开始能通,跑久了就失联咋办?

用的是环网结构,几个节点跑了十几分钟就掉一个,会不会是滤波设置问题?

Clyde011 发表于 2025-5-9 07:41

你试过关掉其他节点看看单独跑稳不?

周半梅 发表于 2025-5-9 07:42

会不会是你收发不及时,FIFO满了?

公羊子丹 发表于 2025-5-9 07:43

加滤波器了吗?看看是不是误判了帧。

帛灿灿 发表于 2025-5-9 07:44

拿个示波器看一下波形有没有毛刺。

童雨竹 发表于 2025-5-9 07:44

检查一下总线电阻是否稳定。

万图 发表于 2025-5-9 07:45

你是FD还是classic?G4搞FD不太稳。

Wordsworth 发表于 2025-5-9 07:46

断掉节点的是不是供电有问题?

Bblythe 发表于 2025-5-9 07:47

是不是软中断优先级跟不上?

Pulitzer 发表于 2025-5-9 07:48

加个超时重发机制试试?

Uriah 发表于 2025-5-9 07:49

有无CAN总线干扰或者长线问题?

将爱藏于深海 发表于 2025-6-14 11:00

CAN总线靠近强干扰源,或未使用双绞屏蔽线,导致信号受干扰,出现通信异常。合理布局电路板,避免CAN总线靠近强干扰源;使用双绞屏蔽线(CANH/CANL),减少干扰

春日负喧 发表于 2025-6-14 12:00

CAN收发器电源和地线连接不正确,或供电不稳定,影响收发器正常工作。检查CAN收发器的电源和地线连接是否正确,确保供电稳定;在CAN收发器的电源引脚和地之间添加滤波电容,减少电源噪声干扰

温室雏菊 发表于 2025-6-14 12:00

CAN_H和CAN_L接反,或与总线设备极性不一致,导致通信异常。确认CAN_H和CAN_L未接反,且与总线设备极性一致

故意相遇 发表于 2025-6-14 13:00

所有节点的波特率不一致,导致通信无法正常进行。使用STM32CubeMX或示波器校准波特率,确保所有节点的波特率一致,包括同步段、位时间段等参数

西洲 发表于 2025-6-14 16:00

未启用错误中断,无法及时处理总线错误,导致通信异常。启用错误中断(如CAN_IT_ERROR),并在中断中处理总线关闭(Bus-Off)状态,自动恢复通信

白马过平川 发表于 2025-6-14 19:00

过滤器设置错误,导致接收节点无法正确识别发送节点的ID,造成通信中断。检查CAN过滤器设置,确保接收节点能正确识别发送节点的ID;可先设置筛选器掩码为0x0000进行测试

失物招領 发表于 2025-6-15 09:00

在STM32G4中,CAN通信刚开始能通但跑久了就失联,可能由硬件、软件配置或总线状态问题导致

她已醉 发表于 2025-6-15 09:30

总线两端未接120Ω终端电阻,或电阻安装错误,导致信号反射,影响通信稳定性。确保总线两端正确接入120Ω终端电阻,若总线距离较长,可能需要在中间节点加电阻。

风凉 发表于 2025-6-16 10:00

CAN通信中断优先级过低,被其他高优先级任务打断,导致数据处理不及时而丢数。合理设置中断优先级,确保CAN通信中断能及时响应
页: [1] 2
查看完整版本: CAN通信刚开始能通,跑久了就失联咋办?