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.

[参考译文] TMS320F280049:LSPCLK 比预期快7倍

Guru**** 2482105 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1436833/tms320f280049-lspclk-is-7-times-faster-than-expected

器件型号:TMS320F280049

工具与软件:

我正在使用 F280049PMS 处理一个项目、我们在使用 LSPCLK 时遇到了一些问题。  
这是第二次迭代电路板、但在 DSP 端、我们没有进行任何重大的硬件或软件更改。 在硬件上、我将使用连接到 X1和 X2的相同晶体(TSx-322520.0000MF20G-AC3)。 我们让 DSP 通过 UART (SCI)与 ESP 通信、我们观察到 DSP 的波特率是预期的7倍。 另一个观察结果是 、我们在使用调试器时、SCI 模块的时序会按预期工作。 仅在使用板的时钟时 发生这种情况。

SYSCLK = 100 MHz  

PLLSYSCLK = 20MHz (XTAL_OSC)* 10 (IMULT)* 1 (FMULT)/2 (PLLCLK_BY_2)

LSPCLK = 25MHz

基于上述 SYSCLK 和默认的低速外设时钟分频器4

SCIHBAUD = 0x0

SCILBAUD = 0x5D

基于传递 到的参数  

SCI_setConfig (SAMPLE_SCI_BASE、DEVICE_LSPCLK_FREQ、230400、(SCI_CONFIG_WLEN_8 |
                       SCI_CONFIG_STOP_ONE |
                       SCI_CONFIG_PAR_NONE));

其中  

DEVICE_LSPCLK_FREQ = 25MHz

根据 SCI 的输出、LSPCLK 似乎是175MHz。  

ePWM 以正确的速度工作。 相同的代码能够在旧版本的主板上正确运行、但在硬件方面、我不十分清楚导致此问题的原因、尤其是因为 DSP 与 ESP 之间直接采用引脚对引脚的 UART 连接。  
以下几个调试过程已完成:
 
我们 以自己的配置运行了 SYSCTL_ex2_XCLKOUT_config.c、并且 GPIO_16的频率 为12.5MHz。 我不确定这个值是否 有意义。 我期待  100MHz 方面的东西。
我们还运行了其他测试:
  1. 我们创建了一个 仅初始化时钟和 GPIO 的项目。 在 main 的循环中、我们不加延迟地设置和清除 GPIO_7、并使用调试器和不使用调试器比较时序。 它们的表现 也一样。
  2. 我们使用宏 DEVICE_DELAY_US 通过 GPIO_7创建方波、它按预期运行。 计时非常精确、只有10 us。 我们还使用和不使用调试器来测试此情况。
当我们在软件中设置 SCI 时、通过在 LSPCLK 上放置一个乘法器、我们可以解决该问题、但这似乎不是一个好的解决方案。  
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

      先生、您好!

    XLCKOUT 具有很少的配置、例如时钟分频器和时钟源选择。默认情况下、分频器设置为/8。

    因此,如果读数为12.5 ,那么它实际上是100Mhz (12.5 *8),这似乎与您的 SYSCLK 匹配

    sysctl_ex2_xclkout_config.c

    我建议您更仔细地查看示例并检查配置。

    如果您对 SPI 或任何其他特定于模块的时钟配置有进一步的问题、请检查 LSPCLK 分频器。 请告诉我、我可以请相关专家在特定外设方面为您提供帮助。

    谢谢

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

    Prarthan、您好、我是 Sicheng 的软件工程师。 我们没有 按原样运行 SYSCTL_ex2_XCLKOUT_CONFIG 示例、我们只使用项目配置将 GPIO_16配置为输出系统时钟。

    所有外设和通信均按预期工作(PWM、SPI、计时器)、但 SCI 除外。 在使用调试器时、这种相同的配置按预期工作、包括 SCI。

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

    尊敬的 Alberto:

    那么、如果我正确理解您说的是-当连接调试器并且当您断开调试器并运行独立的 SCI 无法按预期工作时、一切都正常吗?

    SCI 无法按预期运行是什么意思? 您能解释一下您所观察到的是什么吗? 它与 SCI 时钟有何关系?

    谢谢

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

    Hello Prarthan、SCI 时钟似乎比连接调试器时快7倍。 我们探测了信号、它们看起来非常适合 UART 信号、但波特率有误。

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

    是否检查了 LSPCLK 分频器? 它是否 在您的代码中配置为/4?

    您能解释一下如何从 SCI 输出中得到175Mhz 数字吗?

    谢谢。

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

    在 我们的 代码中、我不将 LSPCLK 分频器配置为默认值/4。 正如我之前提到的、在连接调试器时它可以正常工作。 我可以尝试显式配置它。 我们无法解释175Mhz、这就是我们需要您帮助的原因。  

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

    尊敬的 Albeto:

    对于时钟配置、连接或未连接调试器的情况没有区别。

    您能否检查在连接或未连接调试器的情况下、PLLSYSCLK 的 XCLKOUT 是否显示相同频率。

    谢谢