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.

[参考译文] TCAN1043G-Q1:有关 CAN 错误响应的问题

Guru**** 2482225 points


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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/674233/tcan1043g-q1-question-about-can-error-response

器件型号:TCAN1043G-Q1
主题中讨论的其他器件:TCAN1043

大家好、

 

这是与 CAN 协议相关的问题、而不是 CAN 驱动程序问题。

我的客户现在正在使用 TCAN1043评估特定错误条件下的 CAN 系统行为。

 

初始状态:

  • 仅包含2个节点,即节点 A 和节点 B

  • 节点 A 是发送方、节点 B 是接收方。

  • 节点 A 定期向节点 B 发送消息

  • 节点 A 和节点 B 处于正常模式。

 

步骤1:

  • 通过切换 NSTB=L 将节点 B 设置为“进入睡眠模式”

  • 节点 A 会定期向节点 B 发送消息

 

步骤2:

  • 由于 CAN 消息适合 WUP、节点 B 的 INH 可能保持为高电平。

 

步骤3:

  • 通过将 NSTB=低电平切换为高电平、将节点 B 状态设置为正常模式。

  • 通过将 NSTB=高电平切换为低电平、将节点 B 状态设置为进入睡眠模式。

 

测试结果:

当发送错误计数器=255时、节点 A 变为总线关闭。

在大多数情况下,节点 B 处于三种模式之一:进入睡眠模式、睡眠模式或待机模式,因此假定节点 B 无法将 Ack 发送到节点 A

 

问题1)当节点 B 处于进入睡眠模式或睡眠模式或待机模式时、节点 B 是否不向节点 A 发送 Ack?

问2)如果节点 B 不发送 ACK,节点 A 将保持“错误认可”状态,并且从不计数到255。 正确吗?

 

此致、

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

    当节点 B 未处于正常模式时、它无法确认节点 A 发出的消息。这应导致节点 A 的发送错误计数递增、直到节点 A 达到错误被动状态。 但是、一旦到达该点、由于确认错误、发送错误计数将不会进一步增加。 很奇怪、节点 A 进入总线关闭状态。 处于正常状态时、节点 B 是否传输任何内容? (或者、在正常模式下、节点 B 的 TXD 引脚是否处于低电平状态、以便其传输一个显性位)? 您是否注意到节点 A 的接收错误计数器中有任何错误?

    如果节点 B 长时间处于正常模式,节点 A 是否正常工作? 我想知道问题是否是由于在帧传输过程中节点 B 唤醒、导致节点 B 将第一个帧注册为不正确(因为未检测到第一个段)。 如果经常发生这种情况、而链路未保持在正常工作状态、则可能会解释此结果。

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

    尊敬的 Max-San:

     

    非常感谢您的回复。

    我与客户分享了您的建议、并等待反馈。

    如果客户提出进一步的问题、我将激活此主题、

     

    此致、

    Noboo