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.

[参考译文] CCS/TMS320F280049:F280049M:如何使用 TRREM 寄存器进行高分辨率周期和相位操作

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/717213/ccs-tms320f280049-f280049m-how-to-use-trrem-register-for-high-resolution-period-and-phase-operation

器件型号:TMS320F280049
主题中讨论的其他器件:C2000WARETMDSCNCD28379DTMDSCNCD280049C

工具/软件:Code Composer Studio

您好!

我正在尝试将高分辨率周期和相位功能用于多相数字电源应用。

当我向我们的 FAE 询问高分辨率函数时、他们介绍了以下线程。

https://e2e.ti.com/support/microcontrollers/c2000/f/171/p/712837/2627948?tisearch=e2e-quicksearch&keymatch=TBPHSHRLOADE#2627948 

e2e.ti.com/.../2603930

在这些线程和示例中 、找到对" TRREM"寄存器的访问、而不是对"TBPHSHR"的访问。

在参考手册中、很少有关于"TRREM"寄存器的信息。

您能解释一下"TRREM"寄存器的详细信息吗?

我在 不使用 TRREM 寄存器的情况下附加当前的 ePWM 初始化代码进行开控测试。

当 TBPRDHR 或 TBPHSHR 不为零时、从器件相位波形会发生抖动。

e2e.ti.com/.../EPWM_5F00_init.c

此致、  

石弘之

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

    您好、Onish-San、

    下面是 TRREM 寄存器的说明:

    该值跟踪 HRPWM 硬件计算的其余部分。

    注:   

    [1] TRREM 寄存器的低8位可以在 SYNCIN 或 TBCTL[SWFSYNC]事件或直流事件 (如果启用)上使用 TBPHSHR 值自动初始化。 用户还可以使用 CPU 写入值。       

    [2] TRREM 寄存器更新的优先级:

    SYNC (软件或硬件) TBPHSHR 复制到 TRREM   最高优先级

    HRPWM 硬件(更新 TRREM 寄存器)             下一优先级

    CPU 写入 TRREM 寄存器                         最低优先级

    以下文章中提到的 C2000Ware 示例是了解如何在代码中使用该寄存器的最佳位置。

      

    但愿这对您有所帮助。

    Hrishi

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

    Hrishi-San、您好!

    非常感谢您的快速回复。

    示例和您的帖子有助于了解 TRREM 寄存器。

    让我再问一个问题。

    当我在没有扫描操作的情况下测试示例时、仍然存在罕见的抖动。

    我可以避免这种抖动吗?

    黄色:EPWM1- A,蓝色 EPWM2- A

    此致、

    石弘之

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

    您不应看到任何抖动。 如何停止扫描? 您看到此抖动的频率如何? 您是在每次停止扫描时看到它、还是仅在有时和随机点(随机 TBPRD、值)看到它?

    您是否在示例中修改了任何内容? 此外、您将使用哪个器件对其进行测试?

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

    Hrishi-San、您好!

     我想附加另一张图片和其他信息。

    ・>如何停止扫描?

    当示波器设置为标准值时、我无法获得此图。

    启用示波器的持久性功能后、我得到了该结果。

    ・>您看到此抖动的频率如何?

    在10秒内仅出现一个脉冲。

    ・>您是在每次停止扫描时还是仅在有时和随机点(随机 TBPRD、值)看到它?

    我按照3个参数进行了测试、所有结果都有抖动。

    TBPRD:50,TBPRDHR:128 <<8

    TBPRD:70,TBPRDHR:64 <<8

    TBPRD:100,TBPRDHR:20 <<8

    ・>您使用哪种器件测试该器件?

    我测试了2个控制卡。

    TMDSCNCD28379D:发现抖动。

    TMDSCNCD280049C:无抖动。 (Soucecode 移植为2837xd 示例代码。)

    ・>您是否修改了示例中的任何内容?

    我想附加2个项目文件夹。

    e2e.ti.com/.../hrpwm_5F00_deadband_5F00_sfo_5F00_cpu01.zipe2e.ti.com/.../hrpwm_5F00_deadband_5F00_sfo_5F00_cpu01_5F00_F280049M.zip

    主要变化是消除环路扫描。

    如果您需要任何其他信息、请告诉我。

    此致、

    石弘之

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

    Onishi-San、

    感谢您提供此信息。

    您的代码中的 PWM 周期值似乎只有70个计数。 请将其改回示例项目中使用的最小周期值(360d)。 其原因是、有一些时间关键型代码需要以与 PWM 开关周期同步的方式执行。 如果 PWM 周期太小、时间关键型代码执行可能无法满足与开关周期相关的时序要求。 这可能是您在 PWM 输出上看到抖动的原因。 因此、示例代码限制了最小周期。 您可以优化时间关键型代码和/或将其移至 CLA 以进一步推动此限制、即允许更高的开关频率。  

    但愿这对您有所帮助。

    Hrishi

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

    Hrishi-San、

    感谢你的建议。

    我尝试使用 TMDSCNCD280049C 将 TBPRD 增加到(400d)并将 TBPRDHR 设置为(360d << 8)。 抖动仍然存在于波形中、因此我观察了 TRREM 寄存器值以检查发生的情况。

    每当我在源代码中设置 TRREM 寄存器时、TRREM 寄存器值会在每个 PWM 周期中自动改写。 如果超 writed TRREM 寄存器值和编码 TRREM 寄存器值之间的差异(高于大约150D 或200d)、则可能会发生抖动。

    我认为当前方法不适合在高效率操作中平稳过渡、因此我想尝试另一种方法。

    我了解有关 TRREM 的很多信息、我希望关闭此主题。

    非常感谢你的帮助。 当我对另一种方法有疑问时、我将发布新主题。

    最棒的餐厅

    石弘之