[STM32] 物理链路正常,CAN总线需要考虑丢包吗

[复制链接]
 楼主| aple0807 发表于 2021-5-25 14:01 | 显示全部楼层 |阅读模式
CAN硬件部分有CRC数据验证和错误重发功能。只考虑链路正常情况下,可以保证接收端收到的数据是正确的。但多节点时,接收端如果没有软件应答的话,发送端软件无法知道接收是否正常。接收端加软件应答,就会占用信道,降低效率,软件复杂度也会大幅增加。


那么物理链路正常且信道峰值负载不满的情况下,CAN总线会丢包吗?

 楼主| aple0807 发表于 2021-5-25 16:49 | 显示全部楼层
今天做了个简单测试,用STM32F407的CAN1,CAN2互发数据。

CAN1只要发送缓冲空就继续发送,CAN2每20ms发一帧。

测试CAN1发了1200+万帧,CAN2发了60+万帧,丢包数 0 。
diweo 发表于 2021-5-26 16:06 | 显示全部楼层
说明非常可靠
您需要登录后才可以回帖 登录 | 注册

本版积分规则

77

主题

326

帖子

2

粉丝
快速回复 返回顶部 返回列表