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.

[参考译文] TMDSCNCD263P:AM263P DCC 示例失败

Guru**** 2694645 points

Other Parts Discussed in Thread: SYSCONFIG

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1591233/tmdscncd263p-am263p-dcc-example-fails

器件型号: TMDSCNCD263P
主题: SysConfig 中讨论的其他器件

为 AM263Px 运行 MCU+ SDK 的 DCC 示例失败。

我以前使用过

  • AM263Px 控制卡
  • SysConfig 1.25.0
  • 适用于 AM263Px 11.0.0.19 的 MCU+ SDK
  • CCS 20.3.1.5___1.9.1

首先、我执行了 SOC 初始化、使用 OSPI 存储器中刷写的二进制文件 来设置 EVM。
刷写 SBL_null 并将 EVM 引导模式切换到 OSPI 后、我  在 R5FSS0 内核 0 上运行了 SDL DCC 示例。
Usecase 3 失败、因为接收到如下日志所示的意外错误中断。

Cortex_R5_0:  DCC Example Test Application
Cortex_R5_0: 
Cortex_R5_0: DCC_Test_init: Init ESM complete 
Cortex_R5_0: 
Cortex_R5_0: USECASE: 0
Cortex_R5_0: Source clock: XTAL_CLK 
Cortex_R5_0: Test clock: RCCLK32K
SDL DCC EXAMPLE TEST: Warning Seed value for valid count exceeds allowed range.
SDL DCC EXAMPLE TEST: Application will run with 0 allowed drift.
SDL DCC EXAMPLE TEST: Seed values calculation done.
SDL DCC EXAMPLE TEST: Enabling DCC and waiting for Error interrupt 
SDL DCC EXAMPLE TEST: DCC Generated Error interrupt 
SDL DCC EXAMPLE TEST: Indicating clock drift/change 
Cortex_R5_0: UC-0 Completed Successfully
Cortex_R5_0: 
Cortex_R5_0: USECASE: 1
Cortex_R5_0: Source clock: XTAL_CLK 
Cortex_R5_0: Test clock: SYSCLK0
SDL DCC EXAMPLE TEST: Seed values calculation done.
SDL DCC EXAMPLE TEST: DCC Generated completion interrupt 
SDL DCC EXAMPLE TEST: No Clock Drift was observed 
Cortex_R5_0: UC-1 Completed Successfully
Cortex_R5_0: 
Cortex_R5_0: USECASE: 2
Cortex_R5_0: Source clock: XTAL_CLK 
Cortex_R5_0: Test clock: SYSCLK0
SDL DCC EXAMPLE TEST: Seed values calculation done.
SDL DCC EXAMPLE TEST: Enabling DCC and running for some time 
Cortex_R5_0: UC-2 Completed Successfully
Cortex_R5_0: 
Cortex_R5_0: USECASE: 3
Cortex_R5_0: Source clock: RCCLK10M 
Cortex_R5_0: Test clock: SYSCLK0
SDL DCC EXAMPLE TEST: Seed values calculation done.
SDL DCC EXAMPLE TEST: Error : DCC Generated error interrupt
SDL DCC EXAMPLE TEST: Error interrupt is not expected 
Cortex_R5_0: UC-3 Failed
Cortex_R5_0: 
Cortex_R5_0:  Few/all tests Failed 
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我的成功有限。
    同一 DCC 示例适用于具有相同设置的第二个 AM263Px 控制卡。

    我们怀疑 10MHz 内部时钟的漂移 (RCCLK10M) 是问题所在、因为在 DCC 示例中只有 RCCLK10M 相关用例失败。
    为了测量时钟、我创建了一个工程、该工程运行一个由 RCCLK10M 驱动的 1ms 计时器。 在计时器中断中、会切换 GPIO 引脚、而这又是通过示波器进行测量的。
    下面的测量结果清楚地表明、RCCLK10M 在电路板上有明显的漂移 (1ms 内为~6%)、无法通过 DCC 示例。

    此行为是否符合规格?或者电路板是否有缺陷?

    由 RCCLK10M 驱动的 1ms 计时器、在 DCC 示例发生故障的电路板上测得


    由 RCCLK10M 驱动的 1ms 计时器在 DCC 示例成功的电路板上测量

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

    尊敬的 Tobias:

    首先、对延迟的回复深表歉意!

    为了测量时钟、我创建了一个运行由 RCCLK10M 驱动的 1ms 计时器的项目。 在计时器中断中、GPIO 引脚会被切换、而这又是用示波器测量的。

    我认为这不是测量 RCCLK10M 的理想方法、不会提供它的确切时钟频率。

    相反、我们可以将该时钟路由到 CLKOUT 引脚并执行测量。

    因此、我建议您将下面突出显示的代码添加到您的工程中。

    实际上、此代码有助于我们将  RCCLK10M 时钟路由到 J15A 连接器的第 72 个引脚。

    对两个电路板执行该操作、并  在两个电路板上测量 RCCLK10M。 得到这些值后、我将检查内部 RC 振荡器的内部可接受容差。

    --
    此致、
    Jagadish。

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

    尊敬的 Jagadish:

    感谢您的答复!
    我进行了上述测量:

    在 DCC 示例发生故障的电路板上的引脚 72 上测得 RCCLK10M — 平均频率为 9.39MHz  

    在 DCC 示例成功的电路板上的引脚 72 上测得 RCCLK10M — 平均频率为 9.9MHz

    有趣的是、两个时钟信号的频率和振幅都不同。 两个信号均采用相同的设置进行测量、仅在不同的电路板上进行测量。  

    期待您方面提供更多意见。 尤其是 RCCLK10M 的指定容差。


    此致、

    Tobias

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

    尊敬的 Tobias:

    实际上、对于该测试、我们配置了 5%漂移、RCCLK10M 所需的最小频率应为 9.5Mhz。 在你的情况下,它是 9.39Mhz 所以这是它失败的原因。

    我要求您提供以下详细信息:

    1.你在你的最后使用的两张卡片是否都是相同的版本? 请提供确切的 PCB 编号。

    2.您是否在两块板上使用相同的二进制代码,我认为是,但请提供确认。

    --
    此致、
    Jagadish。

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

    您好 Jagadish

    1.不,两个 PCB 不是来自同一个版本。
    DCC 示例失败的电路板的 PCB 编号:PROC159A
    DCC 示例成功的电路板的 PCB#:PROC159B

    2.是的,两个板使用完全相同的二进制文件。

    您能否分享 RCCLK10M 的规定容差?

    谢谢

    Tobias

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

    尊敬的 Tobias:

    DCC 示例失败的电路板的 PCB#:PROC159A

    我测试了 PROC159A 板,我也有,这里也没有问题。

    您的特定电路板的情况。 我将与我的硬件团队联系一次、并就此与您联系。

    --
    此致、
    Jagadish。

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

    尊敬的 Tobias 和 Jagadish:

    该内部 RCCLK_10M 仅用于内部基准和跛行模式、不应用于任何基准。 此外、对于这个内部生成的时钟、器件之间始终存在一些差异。

    RCCLK_10M 的容差在下面的  AM263Px 数据表中的第 6.8.8 节“安全系统“中提到。 希望这能回答您提出的问题。

    谢谢、

    Tejas Kulakarni