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.

[参考译文] TMS320F28P650DK:CPU1 和 CPU2 中的速度问题

Guru**** 2536000 points
Other Parts Discussed in Thread: C2000WARE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1548329/tms320f28p650dk-speed-issue-in-cpu1-and-cpu2

器件型号:TMS320F28P650DK
主题:C2000WARE 中讨论的其他器件

工具/软件:

尊敬的 TI 专家:

我正在使用  TMS320F28P650D  双核器件。

我们 从 CPU1 和 CPU2 以相同的延迟传输一些数据、

在调试中、两者都以相同的频率传输

但是、当我在无调试的闪存中运行时、CPU1 中的速度更快、CPU2 中的速度更慢

非常感谢任何指导、文档链接或示例项目。

提前感谢!

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

    您好:

    您使用什么通信外设来传输数据?

    请首先 参考 C2000Ware 的示例代码和驱动程序

    如果您还没有阅读技术参考手册、我也强烈建议您查看: https://www.ti.com/lit/ug/spruiz1/spruiz1.pdf

    此致、

    马特

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

    我使用的是 CPU1 的 SCIA 和 CPU2 的 SCIB

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

    尊敬的 Ranjith:

    在调试中、两者以相同的频率传输

    在这里、假设您是指以某种方式测量波特率、并且两个 SCI 的波特率相同。

    但是、当我在闪存中运行而没有进行调试时、CPU1 中运行速度更快、CPU2
    中运行速度更慢

    我不清楚您所说的“调试“和“闪存“是什么意思。 您是否在每个配置中重新编译代码? 如果是、请确保在每次构建之间不会更改时钟配置。  

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

    是的、Baudrate 是相同的、但打印频率是打印的、

    我不是在重建,

    在闪存中是指通电、

    让我再次澄清一下

    我已经开始调试两个 CPU、在这种情况下、两个 CPU 都以相同的频率打印
    在我退出调试后、当我关闭电源并打开电源后、它将以不同的频率打印、  

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

    如上所述、您可以参考 C2000ware 中的 SCI 示例。 这里有多个选项可用作参考。 安装后、您可以在以下路径中找到这些示例:  

    \driverlib\f28p65x\examples\c28x\sci

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

    我正在从 CPU1 和 CPU2 切换 GPIO

    两个都正常工作、但是  
    我的问题与切换延迟有关、

    我对两个内核中的环路延迟执行相同的设置、但它们在调试和上电时有所不同

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

    F28P65x 器件包含一个可用于监控 CPU 时钟的 XCLKOUT 引脚。 您可以尝试使用它来验证两个 CPU 是否以相同的频率运行。 有关更多信息、请参阅器件 TRM。

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

    感谢您的回复!

    我已在 CPU1 中检查了 XCLKOUT

    CPU1.SYSCLK 和 CPU2.SYSCLK 相同。

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

    我假设您在调试和闪存模式下都检查了 CPU sysclks、情况是否如此?

    我们需要了解调试模式和闪存模式的确切含义。 您能描述在每种情况下运行代码所采取的步骤吗? 例如、在闪存模式下、您是否将 MCU 设置为闪存引导以使代码从闪存自动运行? 调试模式如何、您要采取哪些步骤来运行调试模式?

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

    感谢您的回复!

    调试模式意味着虽然 我要调试 CCS IDE、

    闪存模式表示在不进行调试的情况下上电

    在调试模式下、

    只是选择我要调试的内核。

    谢谢、此致

    Ranjith。

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

    请详细说明您的“调试“步骤。 您是否通过 CCS 加载代码? 该代码是从 RAM 还是闪存运行? 是否与闪存模式中使用的代码相同? 您可以提供的信息越多、我们就能为您提供更好的支持。  

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

    感谢您的回复!

    我正在通过 CCS 加载代码。  
    从闪存运行的代码。  
    相同的代码、但我没有再次加载代码

    让我清楚地解释一下、

    1. 我已通过 CCS 调试将代码加载到闪存中
    2. 在这种情况下、两者以相同的频率传输数据
    3. 之后我退出调试模式  
    4. 然后我关闭并打开电源
    5. 现在、代码从闪存引导  
    6. 在这种情况下、两个传输都以不同的频率进行

    谢谢、此致

    Ranjith。

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

    e2e.ti.com/.../CPU2.rar

    这是 CPU2 代码

    e2e.ti.com/.../CPU1.rar

    这是 CPU1 代码

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

    我想澄清一点、当您 使用 XCLKOUT 选中 CPU1.SYSCLK 和 CPU2.SYSCLK 时、您是否同时选中了闪存和调试模式?  

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

    是的、

    我已经检查了这两种模式。

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

    我已经检查了您的代码、我找不到任何能解释您的问题的明显信息。  

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

    感谢您的回复!

    我的问题已通过定义闪存得到解决  
    用于将闪存等待状态和关键代码&FLASH 设置代码初始化为 RAM。