发新帖我要提问
123
返回列表
打印
[STM32G4]

STM32G431的CAN通信老丢数据咋回事?

[复制链接]
楼主: Pulitzer
手机看帖
扫描二维码
随时随地手机跟帖
41
CAN总线两端需各接一个120Ω的终端电阻,若电阻值不正确或未正确安装,信号会反射导致数据丢失。应检查终端电阻是否安装正确且阻值符合要求。

使用特权

评论回复
42
biechedan| | 2025-3-15 12:03 | 只看该作者
当发送或接收缓冲区已满时,新的数据无法进入缓冲区而丢失。需优化缓冲区管理,及时处理缓冲区内的数据,避免缓冲区溢出。

使用特权

评论回复
43
hilahope| | 2025-3-15 13:10 | 只看该作者
如果处理数据的速度跟不上接收数据的速度,也可能导致数据丢失。
优化数据处理逻辑,提高数据处理速度。

使用特权

评论回复
44
cashrwood| | 2025-3-15 13:27 | 只看该作者
检查是否有其他高优先级的中断服务例程干扰了CAN通信。

使用特权

评论回复
45
timfordlare| | 2025-3-15 13:48 | 只看该作者
在CAN收发器附近添加104电容

使用特权

评论回复
46
olivem55arlowe| | 2025-3-15 14:12 | 只看该作者
若CAN通信中断优先级过低,可能会被其他高优先级任务打断,导致数据处理不及时而丢数。应合理设置中断优先级,确保CAN通信中断能及时响应。

使用特权

评论回复
47
macpherson| | 2025-3-15 14:52 | 只看该作者
终端电阻未正确安装              

使用特权

评论回复
48
10299823| | 2025-3-15 15:03 | 只看该作者
使用示波器检查线路状况和信号质量。

使用特权

评论回复
49
nomomy| | 2025-3-15 15:20 | 只看该作者
在CAN多机通信中,两个设备同时发送数据可能导致冲突,如果冲突解决不当,可能导致数据丢失。

使用特权

评论回复
50
houjiakai| | 2025-3-15 16:45 | 只看该作者
在 CAN 通信的软件逻辑中,可能存在一些错误,如消息处理不及时、数据覆盖等问题,导致数据丢失。

使用特权

评论回复
51
sdlls| | 2025-3-15 17:00 | 只看该作者
混合使用CAN FD和传统CAN节点可能导致丢包,建议全网络统一为CAN FD或传统模式。

使用特权

评论回复
52
lzmm| | 2025-3-15 17:13 | 只看该作者
检查CAN收发器的电源和地线连接是否正确。

使用特权

评论回复
53
nomomy| | 2025-3-15 17:30 | 只看该作者
合理布局电路板,避免 CAN 总线靠近强干扰源。还可以在 CAN 收发器的电源引脚和地之间添加滤波电容,减少电源噪声的干扰。

使用特权

评论回复
54
线稿xg| | 2025-3-16 21:13 | 只看该作者
可能是滤波器设置不对,导致信号不稳定。得调整滤波参数试试。

使用特权

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

本版积分规则