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.

[参考译文] AM2634:AM263X 和 AMP;F28P65X:CAN 通信问题

Guru**** 2455560 points
Other Parts Discussed in Thread: LP-AM263, AM2634, LAUNCHXL-F28P65X, SYSCONFIG

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1481438/am2634-am263x-f28p65x-can-communication-issue

器件型号:AM2634
主题中讨论的其他器件: LAUNCHXL-F28P65X、LP-AM263、 SysConfig

工具/软件:

尊敬的团队:

我们通过 CAN 将 AM2634板与 LaunchXL-F28P65X 连接时遇到问题。 我们无法成功通过 CAN 传输数据。 我们应该在两块电路板上检查哪些配置来实现 CAN 通信? 我们是否还应考虑其他因素?

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

    您好、Anjana、

    对于初学者、您在每个主板上使用哪些 CAN 端口?

    我只熟悉 LP-AM263、但我可以与一位了解另一个电路板的专家合作、一旦我知道要重点关注哪两个端口、就会检查是否存在任何依赖关系。

    此致、

    Ralph Jacobi

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

    嗨、Ralph

    我们在外部连接了 CAN 端口、AM263X 上的 MCAN1 (MCAN1_CAN_H、 MCAN1_CAN_L、GND)通过 J5以及 F28P65X 上的 CAN_HI、CAN_LO 和 GND 通过 J14连接。

    在内部、在 SysConfig 文件中:

    • 在 AM263X 上、MCAN1_RX 和 MCAN1_TX 已启用。
    • 在 F28P65X 上、GPIO4和 GPIO5已配置为用于 CAN 通信。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Anjana、

    这便解释了问题。 您正在  F28P65X LaunchPad 上使用正确的 CAN 信号、因为 J14接头是上面带有 CAN 收发器的接头。

    但在 LP-AM263上、您需要使用 MCAN0和 J33端子接头。 MCAN1/J5引脚没有连接 CAN 收发器。 LP-AM263上唯一的 CAN 收发器位于 MCAN0上、并输出到 J33接头。

    或者、您 可以将来自 MCAN1的信号从 J5连接到板载 CAN 收发器、然后连接到  F28P65X LaunchPad。

    CAN 总线的两侧都需要一个收发器、没有这个收发器、就无法进行通信。

    此致、

    Ralph Jacobi

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

    嗨、Ralph

    不同应用 AM263X_CC 不是 LP-AM263 。 。 MCAN1 上的终端接口 AM263X_CC 连接方式 MCAN1_CAN_H、MCAN1_CAN_L 和 GND 、通过路由 J5

    我们测试了 CAN 环回模式 并且工作正常。 不过、在连接两块电路板时、需要考虑以下几点 CAN 通信 、我们无法传输数据。

    尝试从中发送数据时 AM263X_CC 最终目的 F28P65X 、我们遇到了中断 MCAN_INTR_SRC_PROTOCOL_ERR_DATA 和传输因情况而发生故障 can_bus->tx_done!= true 没有满足。

    请帮忙调试它。

    提前感谢。

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

    您好、Anjana、

    感谢您澄清使用的 EVM、很抱歉我误以为使用了 LP-AM263。 我没有意识到 CC 上的 MCAN1接头是 J5。

    对于 CC、需要执行一个额外的步骤来启用 MCAN 收发器、涉及通过写入 I2C 扩展器来控制 MCAN1_STB 引脚。

    这在附加的 C 文件中进行处理、该文件是我们 SDK 的一部分、可在 mcan_external_read_write 等示例中找到。

    检查是否已实现此项、如果未实现、请在 AM263x CC 示例上实现、然后重试。 如果这样无法解决问题、我需要联系 CAN 专家、他们可以进一步调试问题。  

    e2e.ti.com/.../mcan_5F00_external_5F00_read_5F00_write.c

    此致、

    Ralph Jacobi

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

    嗨、Ralph

    我们已分别在 AM263X_CC 和 F28P65X 板上测试了 MCAN 通信、并确认它们运行正常。 具体来说:

    1. AM263X_CC 板:

      • 我们通过两个 AM263X_CC 板的 MCAN 接口连接了两个 AM263X_CC 板、并验证了通信是否按预期运行。
      • 此外、测试了内部环回模式并发现其工作正常。
    2. F28P65X 板:

      • 同样、我们通过其 MCAN 接口连接了两个 F28P65X 板、并确认 MCAN 通信成功。
      • 内部环回模式也在这些板上进行了测试、并且工作正常。
    3. MCAN 收发器状态:

      • AM263X_CC 和 F28P65X 板上均启用了 MCAN 收发器。
      • 使用环回模式在同一板内进行通信以及两块相同板之间进行通信均正常工作。

    问题

    • 当尝试在 AM263X_CC 板和 F28P65X 板之间建立 MCAN 通信时、通信失败。
    • 连接的建立方式如下:
      • AM263x_CC:MCAN1信号(MCAN1_CAN_H、MCAN1_CAN_L 和 GND)通过 J5进行路由。
      • F28P65X:MCAN 信号(CAN_HI、CAN_LO 和 GND)通过 J14连接。
    • 尽管使用了正确的接线配置、但两块电路板仍无法通过 MCAN 接口进行通信。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Anjana:

    感谢分享这些详细信息、由此确认电路板之间没有硬件配置问题。 这些是 这些电路板的最常见问题、尤其是由于 AM26x 侧的 MUX 参与。 接下来、我将向 CAN 专家汇报、他们可以帮助您更好地完成后续步骤。

    我最开始的想法包括确保 CAN 数据速率和其他协议相关设置正确。 还确认两个器件都作为 CAN-FD 工作(我预计会是、但可能会进行健全性检查)。

    此致、

    Ralph Jacobi

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

    嗨、Ralph

    我们正在使用 CAN-FD、我们已确认从我们这边正确配置了 CAN 数据速率和其他协议相关设置

    您能分享我们问题状态的最新信息吗? 如有任何新的见解或进展更新、我们将不胜感激

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

    尊敬的 Anjana:

    到目前为止、我已经查看了所提供的信息。

    是否可以探测 CAN_H/CAN_L 和 CAN_RX/CAN_TX 线路、以验证从 CAN 总线到 CAN 收发器再到 MCU 的信号链是否正确。

    当您说通信失败时、这实际上意味着什么? 确切的故障特征是什么?

    此致、

    Zackary Fleenor

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

    您是否还能确认 F28P65x LaunchPad 上 S4 (CAN 路由)开关的设置? 看起来这看起来默认设置为1、用于将 CAN TX/RX 信号路由到 BoosterPack、而不是连接到 J14接头的 CAN 收发器(U15)。

    -Zackary Fleenor

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

    尊敬的 Fleenor:

    如前所述、同一板内使用环回模式的 MCAN 通信正常运行。 此外、两个相同电路板之间的通信也能按预期工作。

    但是、当尝试在 AM263X_CC 板和 F28P65X 板之间建立 MCAN 通信时、通信将失败。 我们遇到 MCAN_INTR_SRC_PROTOCOL_ERR_DATA 中断、由于以下情况、传输失败:

    can_bus->tx_done!=true

    没有满足。

    此外、即使将 S4 (CAN 路由)开关设置为0、该问题仍然存在。

    我们需要有关如何进一步排除和解决此问题的指导。 您能否提供有关潜在原因和调试步骤的见解?

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

    您好:

    哪个设备首次遇到故障?

    您能否探测 CAN_H/CAN_L 行并提供屏幕截图? 我们需要确切了解两个器件之间的信号是什么样子的。

    您是否还可以探测故障器件的 CAN_TX/CAN_RX 线路?

    我还在努力并行设置以尝试重现问题。 您能否共享用于这两个器件的工程文件以进行额外调试?

    此致、

    Zackary Fleenor

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

    尊敬的 Fleenor:

    我已探测所有场景的 CAN_H 和 CAN_L 行、并将结果记录在随附的 PDF 文件中。 PDF 中包含的屏幕截图捕获了通信过程中观察到的信号波形和任何异常。

    PDF 中涵盖的方案如下:

    1. F28P65X 至 F28P65X 通信:

      • 连接两个 F28P65X 器件时 CAN 信号的行为。
    2. AM2634到 AM2634通信:

      • 连接两个 AM2634器件时 CAN 信号的行为。
    3. F28P65X 至 AM2634通信:

      • F28P65X 发送到 AM2634:

        • F28P65X 重复尝试向 AM2634传输数据。
        • 相同的传输过程会重试多次、直到最终超时并失败。
      • AM2634发送到 F28P65X:

        • 当 AM2634向 F28P65X 发送数据时、会遇到 MCAN_INTR_SRC_PROTOCOL_ERR_DATA 错误、指示数据传输期间存在协议问题。

    请查看包含这些波形屏幕截图的 PDF 文档、并告诉我们应该如何进一步进行调试和解决问题。

    e2e.ti.com/.../CAN-Probe-_2D00_-File.pdf

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

    嘿、Anjana、

    请允许我在几天内查看此信息并做出适当的回复。 初步检查发现、将两个不同器件连接在一起时似乎存在明显的阻抗失配、这表示为 CAN 总线上的缓慢/四舍五入转换(与类似 EVM 的正确匹配阻抗相比)。

    您使用什么来连接这两个器件? 所有3种测试设置都使用相同的电缆/连接器?

    谢谢。此致、

    Zackary Fleenor

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

    您能否确认 LaunchPad 上的跳线 JP9已连接、以便将120Ω 端接电阻插入 CAN 总线电路?

    此致、

    Zackary Fleenor