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.

[参考译文] LAUNCHXL-F28379D:使用 CAN 连接两个 Launchpad

Guru**** 2925550 points

Other Parts Discussed in Thread: LAUNCHXL-F28379D, SN65HVD234, LAUNCHXL-F280049C

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/765498/launchxl-f28379d-connecting-two-launchpads-using-can

器件型号:LAUNCHXL-F28379D
主题中讨论的其他器件: SN65HVD234LAUNCHXL-F280049C

全部:

 LAUNCHXL-F28379D 具有一个可连接到2引脚接头+接地端的 CAN 收发器(SN65HVD234)。  

如果我想使用 CAN 进行实验、能否通过将 CANH 连接到 CANH、CANL 连接到 CANL 以及接地连接到接地来连接两个 Launchpad?

每个 Launchpad 都具有收发器、看起来也会具有所需的120欧姆端接电阻。

我尝试了搜索、但无法看到有关这一点的帖子-如果我保持 Launchpad 之间的距离并使用3根跳线、是否有任何问题?

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

    是的、这应该是连接 CAN 的正确方法。 实际上、CANH、CANL 和 GND 是通过 DB9连接器连接 CAN 总线所需的连接。 对于 Launchpad、您可以使用三根导线。 CAN 总线最长可达40m。 但是、您需要调整位时序以确保正确的通信、从而补偿较长总线长度的线路延迟。 如果您只是将两个非常接近的 LaunchPad 连接在一起、则无需修改 CAN 示例代码中的位时序。

    此致、
    Joseph
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我尝试修改了 CAN_ex3_external_transmit 代码、但在设置通信方面没有成功。 是否有人能够创建一些允许两个 LaunchPad 通过 CAN 相互通信的代码?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Todd、

    在 Launchpad 中、GPIO12和 GPIO17可直接连接到 CAN 收发器。 这意味着 CANB 应在 CAN_ex3_external_transmit 代码中使用。 DEVICE_GPIO_CFG_CANRXB 的值应更改为 GPIO_17_CANRXB、DEVICE_GPIO_CFG_CANTXB 更改为 GPIO_12_CANTXB。 在第一个 Launchpad 上、您需要修改示例代码以便 CANB 将进行传输、并且您可以移除接收例程的 ISR (基本上移除与 CANB 相关的引用和函数、并将 CANA 上的引用和函数替换为 ex3示例代码上的 CANB)。 在第二个 Launchpad 上、只需删除 CANA 上的引用和函数。 ex3示例代码已经为 CANB 设置了 ISR、以便从 CAN 总线接收数据。

    希望这对您有所帮助。

    此致、
    Joseph
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我尝试从一个 Launchpad 上的 CANA (通过 CAN 收发器)转到另一个 Launchpad 上的 CANA (再次通过 CAN 收发器)。 这些收发器仅适用于这些 Launchpad 上的 CANA。 据我所知、LAUNCHXL-F28379D、LAUNCHXL-F28377S 和 LAUNCHXL-F280049C 是唯一具有内置 CAN 收发器的 C2000 Launchpad ...实际上、我尝试从 LAUNCHXL-F28377S 转到 LAUNCHXL-F280049C。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    如果您使用的是 LAUNCHXL-F28377S、那么连接到 CAN 收发器的 CANRX 和 TX 资源是 CANA (GPIO70和71、因此必须相应地更改 CANRX 和 TX 分配)。 在 LAUNCHXL-F280049C 中、连接到收发器的 CANRX 和 TX 也位于 CANA 上(GPIO32和33)。 对于在 LAUNCHXL-F28377S 中运行的代码、删除 ex3示例代码中对 CANB 的所有引用(这将是传输节点);对于 LAUNCHXL-F280049C、删除对 CANA 的所有引用、并使用 ex3示例代码将 CANB 重命名为 CANA。

    此致、
    Joseph
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我遇到了两个 Launchpad 的问题-不确定是振荡器问题、还是什么...

    幸运的是、我们有2个配备 CAN 收发器的实验板、我能够让它们进行通信。 我不知道我是否会返回到两个 Launchpad -如果您可以创建用于通信的代码、这可能是 TI 的一个很好的演示。 我知道有几处更改、以便使用 ex3示例代码正确构建 Launchpad。