打印
[STM32F4]

F4用CAN通信突然中断,是软件还是硬件问题?

[复制链接]
411|17
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Uriah|  楼主 | 2025-6-22 07:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
运行一段时间后CAN就不发包了,复位也没用,要断电才恢复。

使用特权

评论回复
沙发
Clyde011| | 2025-6-22 07:38 | 只看该作者
加个逻辑分析仪看看帧尾有没有CRC错。

使用特权

评论回复
板凳
公羊子丹| | 2025-6-22 07:39 | 只看该作者
检查下CAN BUS上有没有干扰。

使用特权

评论回复
地板
周半梅| | 2025-6-22 07:40 | 只看该作者
是不是进了BUS OFF状态?看寄存器。

使用特权

评论回复
5
帛灿灿| | 2025-6-22 07:41 | 只看该作者
电阻匹配不好也会掉线。

使用特权

评论回复
6
童雨竹| | 2025-6-22 07:42 | 只看该作者
你用的CAN转USB设备会不会是瓶颈?

使用特权

评论回复
7
万图| | 2025-6-22 07:43 | 只看该作者
收发缓存用满了,没清除也会卡死。

使用特权

评论回复
8
Wordsworth| | 2025-6-22 07:44 | 只看该作者
HAL库CAN旧版BUG多,我都手动写的寄存器。

使用特权

评论回复
9
Bblythe| | 2025-6-22 07:44 | 只看该作者
F4的CAN建议用中断模式,轮询容易漏包。

使用特权

评论回复
10
Pulitzer| | 2025-6-22 07:46 | 只看该作者
看看是不是NVIC优先级设置冲突。

使用特权

评论回复
11
Uriah|  楼主 | 2025-6-22 07:46 | 只看该作者
电源不稳也会导致CAN芯片重启。

使用特权

评论回复
12
stormwind123| | 2025-6-24 16:06 | 只看该作者
CAN总线两端必须接120Ω终端电阻,若缺失或接触不良,信号反射会导致通信异常。

使用特权

评论回复
13
flycamelaaa| | 2025-6-24 16:06 | 只看该作者
用双绞屏蔽线,避免与电源线平行走线,减少干扰。

使用特权

评论回复
14
powerantone| | 2025-6-24 19:07 | 只看该作者
用示波器检测CAN信号波形是否正常,若发现波形失真或无信号,则需要更换CAN收发器芯片。

使用特权

评论回复
15
probedog| | 2025-6-24 22:08 | 只看该作者
不稳定的电源电压可能导致CAN模块工作异常。需为CAN模块提供独立且稳定的电源供电,必要时增加滤波电容以降低电源噪声。

使用特权

评论回复
16
classroom| | 2025-6-24 22:08 | 只看该作者
当CAN控制器进入错误被动状态或总线关闭状态时,如果没有及时处理,可能导致通信中断。可实现错误状态切换逻辑,例如在检测到错误时,停止当前CAN通道并切换至备用通道。

使用特权

评论回复
17
jcky001| | 2025-6-24 22:10 | 只看该作者
若中断处理函数存在拼写错误或未及时清除错误状态标志,可能导致通信中断。

使用特权

评论回复
18
cr315| | 2025-6-24 22:10 | 只看该作者
用CAN分析仪抓取原始报文,检查ACK槽是否正常响应,定位错误帧来源。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

120

主题

5613

帖子

1

粉丝