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.

[参考译文] TCAN334:节点在带有 PCAN 适配器的 CAN 总线上单独工作、但在完整网络设备上一段时间后停止接收 ACK 位。

Guru**** 2390755 points
Other Parts Discussed in Thread: TCAN334, TCAN3414

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

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/1460576/tcan334-node-works-alone-on-can-bus-with-pcan-adapter-but-when-on-a-full-network-device-stops-receiving-ack-bits-after-some-time

器件型号:TCAN334
主题中讨论的其他器件: TCAN3414

工具与软件:

各位专家、您好!  

我们将使用 TCAN334 (很快我们将切换到 TCAN3414)以及6432 IWRL 雷达芯片。 在只有一个其他接收节点的网络中、我们的器件似乎能够独立可靠地工作。 我们有一个 PCAN 适配器可监控器件的流量。 我们已对此设置进行了广泛测试、该器件会无限期地工作。 我们有一个跟踪文件、其中包含来自其他设备的整个网络的典型网络流量。 除非环路跟踪、并且器件最终使用 ACK 错误代码进入错误被动状态、否则该器件处理网络流量只是正常的。 我正在寻找为什么我们的设备的消息会停止被网络确认的原因?

在上述描述中、网络上唯一的其他活动设备是我们的 PCAN 适配器、该适配器正在处理回放跟踪、因此这种情况与我们之前测试的案例(除其他消息之外)类似。  

我想在一些专家帮助下探讨的一个问题是、如果 RX FIFO 已满且处于阻塞模式、器件是否会停止确认网络上的其他消息?  

提前感谢您。  

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

    Daniel、您好!

    感谢您在 E2E 上提出问题。

    这个问题似乎与 CAN 控制器有关、而不是与 CAN 收发器有关。 CAN 收发器无法 检测阻塞模式并停止发送/接收消息、它也不关心发送/接收的消息是什么。 它只是中断 CAN 总线上的数字输入到差分信号、反之亦然。 CAN 控制器可能收到过多的错误位、因此停止通信。  

    发生这种情况时、TCAN334是否在正常模式下工作(S 引脚下拉)?  

    此致、

    Sean

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

    Sean、  

    感谢您的响应。  

    是的、有必要将其连接到控制器。  

    当讨论错误位时、您是否指的是内部错误计数器、例如 RX 和 TX 计数器? 当我们看到连接问题时、传输错误计数器变为128、器件进入被动错误状态。 错误计数器没有斜升时间、一次发生、就像物理连接断开一样。 我们已经全面测试了物理连接。 只需断开 CAN 软件(我们使用 PCAN-View)并重新连接它即可恢复器件上的正常行为。  

    S 引脚也被下拉。  

    你对我关于 RX FIFO 的问题有什么想法吗? 完整的 RX FIFO 是否可能对其他 CAN 行为产生不利影响?  

    谢谢你

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

    Daniel、您好!

    出现错误时、遇到错误的器件会向总线发送一个错误帧。 具有讽刺意味的是、如果该节点存在传输问题、则会导致其遇到另一个错误。 这些会堆叠、直到错误计数达到128、此时它会继续参与、但不会在检测到错误时主动中断(被动错误状态)。 如果错误计数继续增加并达到256、控制器将关闭并进入"总线关闭"状态、此时节点的通信将完全停止。  这可能需要几秒钟的时间、也可能"一次"、具体取决于您使用的通信速率和总线负载。  除了 ACK 误差、您是否看到过任何异常 CAN 波形? 如果您认为有的话、请包括 TXD/RXD 和 CANH/L 波形。

    对于您 的问题、请联系您的 MCU 供应商、因为 CAN 收发器不会处理这一问题。 如果您正在使用 MCAN、以便在相应的 Rx FIFO 满进入阻塞模式时接收到消息、该消息会被拒绝、在至少一条消息被读出并且 Rx FIFO Get 索引已递增之前、不会再将任何消息写入相应的 Rx FIFO。 由于消息丢失、可能会导致错误。  

    此致、

    Sean

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

    Sean、  

    感谢您的详细答复。 我将继续、把这个问题视为已经结束、并将我的问题发布到 MCU 组。 我们不会通过错误被动、所以在进入总线关闭状态之前、必须通过某种措施来阻止错误行为。 我将与 MCU 组一起深入探讨该问题。 感谢你的帮助。  

    此致

    DS

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

    Daniel、您好!

    好的、如果您还有其他问题、请告诉我。  

    此致、

    Sean