2154615_zh-CN

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

2154615_zh-CN

2154615_zh-CN

在 EB Tresos 中为 S32K322 配置自动总线断开恢复

嗨,团队、

我正在研究 自动总线关闭恢复功能。在 EB Tresos 中,我启用了 "可以自动恢复总线关闭"选项,并生成了代码。


在测试过程中,我短接了 CAN_H 和 CAN_L 线路:

  • API Can_43_FLEXCAN_ProcessBusOffInterrupt () 被触发,并检测到总线断开。
  • 但是,即使启用了自动总线关闭恢复功能,控制器也不会自动恢复。

请您确认一下:

1.是否 定时配置或重试次数选项1.EB Tresos 中的自动总线关断恢复是否提供定时配置或重试次数选项?

2.是否需要更改其他配置或代码才能在 S32K322 上进行适当的自动恢复?


谢谢& 、

赛尚菲雅

Re: Configuring Auto bus-off receovery in EB Tresos for S32K322

Hi@saishanfi

您只需注意该寄存器的配置。

Senlent_0-1758590973038.pngSenlent_0-1758590973038.png

如果 BOFFREC 为 0,即默认情况下自动断开恢复处于启用状态,则 FLEXCAN IP 模块将自动尝试从总线关闭状态恢复到正常状态。这项工作由 FLEXCAN IP 自我完成。

Re: Configuring Auto bus-off receovery in EB Tresos for S32K322

你好@Senlent

在测试期间,我禁用了总线-Off 中断,并且没有在代码中调用任何总线-Off API。我只在 EB 中启用了 “自动总线关机恢复” 选项。

在此设置中,当我强制关闭总线(短路CANH和CANL)时,通信按预期停止了。但是,一旦我重新连接总线,即使没有使用任何API调用,恢复过程也会自动发生。

请您澄清一下:

1.这种情况背后的具体恢复机制是什么?

2. 恢复是纯粹由 CAN 控制器硬件处理的(TEC 减量 & 错误活动状态),还是 EB 是否有触发信号恢复的软件机制


谢谢& 、

赛尚菲雅

Re: Configuring Auto bus-off receovery in EB Tresos for S32K322

你好@Senlent

谢谢你的澄清。我按照您建议的配置步骤启用自动断开总线恢复,该过程按预期运行。


谢谢& 、

赛尚菲雅

Re: Configuring Auto bus-off receovery in EB Tresos for S32K322

你好,森兰特、

我检查了 CTRL1-> BOFFREC 位并确认已启用自动断开总线恢复。

当我短路CANL和CANH时,发生了总线错误,重新连接后,恢复没有发生。经过分析,我注意到,一旦发生总线关闭,就会触发 can_43_flexcan_processbusOffInterrupt () API,控制器进入停止模式。

为了使自动恢复生效,我是否仍需要明确调用 Can_43_FLEXCAN_SetControllerMode()来重启控制器?


能否请您对此提供支持?


谢谢& 、

赛尚菲雅


Re: Configuring Auto bus-off receovery in EB Tresos for S32K322

你好@赛尚菲雅

请在调试接口中检查 CTRL1-> BOFFREC 是否已启用。

Senlent_0-1755658412820.pngSenlent_0-1755658412820.png

无需额外设置。启用该位后,FLEXCAN 将自动尝试从总线关闭状态恢复到正常状态(假设导致总线断开的外部条件已消除)。

Tags (1)
No ratings
Version history
Last update:
‎11-20-2025 02:37 PM
Updated by: