This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TMS570LS1115:可在 CAN 总线关闭后重新初始化

Guru**** 2390755 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/905504/tms570ls1115-can-re-init-after-can-bus-off

器件型号:TMS570LS1115

大家好、

对于我们的项目、iam 在总线关闭后处理 CAN 重新初始化。 当总线关闭发生时、会给出一个中断、我希望在其中重新初始化 CAN、以便可以返回总线打开模式。  

是否需要重新初始化整个 CAN 堆栈? 使用整体 CAN 堆栈引用 canInit()函数的 iam,其中也会再次初始化每个消息。 还是只是将 CTL 寄存器的 INIT 位设置为0 (正常模式)。  

IAM 在 CAN 方面非常新手、因此任何提示和技巧都将不胜感激!

此致、

Chris

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Chris、

    不需要、无需初始化整个 CAN 堆栈。 从 CAN 总线关闭状态恢复的方法有两种:

    1.手动清零 CAN 控制寄存器的 Init 位。 当 CAN 总线关闭发生时、Init 位自动置位。

    2.启用自动总线开启功能:将 CAN 控制寄存器中的 ABO 位置位可启用此功能。 如果置位、 DCAN 将自动启动总线关闭-恢复序列。