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.

[参考译文] TMDSCNCD28388D:CM CAN 通信问题

Guru**** 1826200 points
Other Parts Discussed in Thread: C2000WARE, TMDSHSECDOCK, TMDSCNCD28388D
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1426723/tmdscncd28388d-cm-can-communication-problem

器件型号:TMDSCNCD28388D
主题中讨论的其他器件:C2000WARETMDSHSECDOCK

工具与软件:

您好!

我们当前正在从位于以下位置的模板为 CM 运行 CAN 示例:

C:\ti\c2000\C2000Ware_5_03_00_00\driverlib\f2838x\examples\cm\can.

我们没有做任何更改、并且 CAN 总线比特率设置为500kHz (默认)。 然而、它未与 PeakCAN 监视器通信。 然后、我们使用示波器来监测 CAN TX 引脚、发现实际比特率为520kHz。

如下图所示更改比特率后、PeakCAN 开始通信、但示波器显示实际比特率为488kHz:

“CAN_setBitRate(CANA_BASE, CM_CLK_FREQ, 485000, 16);”

您能帮助我们解决这个问题吗?

非常感谢、

Rick

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

    大家好、Rick、

    您能确认您使用的是哪个硬件?  是控制卡还是您有定制 F28388x 电路板?  此外、您是否能够首先运行示例 CAN_CONFIG_C28x 以确保 CM 内核在125MHz 上计时?

    谢谢!

    Joseph

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

    感谢 Joseph 的答复、

    我要使用的硬件是 F2838x 全功能评估套件( TMDSCNCD28388D 和 TMDSHSECDOCK )。

    是的、我始终首先运行 CAN_CONFIG_C28x、然后运行 CM One。  

    祝你一切顺利。

    Rick  

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

    Rick、您好!

    但可以肯定的是、您是否可以查看 F2838x_25MHz_CLK 信号、看看您是否在该节点上准确测量25MHz?

    谢谢您、

    Joseph

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

    尊敬的 Joseph:

    F2838x_25MHz_CLK 信号(电路板上的 TP6)在25.0 MHz 处进行测量。

    祝你一切顺利。

    Rick

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

    大家好、Rick、

    感谢您验证设置上的主时钟。  可以增加位时间 以使波特率接近500Kbps。  而不是在函数调用中使用位时间16:  

    CAN_setBitRate (CANA_BASE、CM_CLK_FREQ、 500000、 16);

    应用  

    CAN_setBitRate (CANA_BASE、CM_CLK_FREQ、 500000、 20);改为。

    此致、

    Joseph

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

    感谢 Joseph、

    我在下面将位时间设置为25、效果不错。

    CAN_setBitRate (CANA_BASE、CM_CLK_FREQ、500000、25);

    非常感谢您的帮助。

    祝你一切顺利。

    Rick