J1939是否规定ECU上电300ms未收到CAN帧就停止响应?
结论
客户声称的「300ms超时无帧就锁死ECU属于J1939规范要求」的说法不成立,该逻辑为客户ECU的私有自定义逻辑,不属于J1939通用强制约束。
J1939规范相关条款说明
涉及上电启动、通信超时的要求集中在两个标准部分:
- SAE J1939-81 网络管理部分:仅要求CAN节点上电后1s内完成地址声明报文的发送,无任何300ms内必须收发数据的强制要求。
- SAE J1939-21 数据链路层部分:定义的所有通信超时处理机制均为可恢复设计,例如故障码上报、通信重试、地址重声明等,从未允许节点出现「超时后永久停止响应所有CAN帧、必须重新上电才能恢复」的不可恢复逻辑。
适配建议(可选)
如果必须兼容该客户的私有ECU逻辑,无需修改现有软件整体架构,可优先评估调整CAN驱动的初始化优先级,将其调整到操作系统调度启动前完成,即可满足300ms内启动CAN监听的要求,无需终端客户额外布线。
内容的提问来源于stack exchange,提问作者Kenny_pce
相关产品推荐
相关产品推荐

