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.

[参考译文] TMS320F280039:HRPWM 中的周期计算问题

Guru**** 2979400 points

Other Parts Discussed in Thread: TIDM-02013, TMS320F280039, C2000WARE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1664007/tms320f280039-the-problem-of-period-calculation-in-hrpwm

器件型号: TMS320F280039
Thread 中讨论的其他器件: TIDM-02013、 C2000WARE

尊敬的 TI 专家:

在研究 TIDM-02013 工程的源代码时、我发现以下函数中与 TBPRDHR 寄存器计算相关的代码非常令人困惑。

根据源程序的内容、该函数的第二个参数为 500800(LLC 谐振频率)、第三个参数为 120000000(系统时钟)、宏 TWO_RAISED_TO_THE_POWER_SIXTEEN 定义为 65536。 在这种情况下、变量 pwmPeriod_ticks 将成为一个非常大的值。 我想问、进行此计算的原因是什么?

 是否有任何介绍 HRPWM 内容且易于理解的参考资料?

期待您的答复,谢谢!

此致、

Power Wang

 

image.png

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

    高功率、

    ePWM 专家会尽快回复您。

    此致、
    Harisyam

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

    高功率、

    说明了 TIDM-02013 中的 TBPRDHR 计算

    大 pwmPeriod_ticks 值是 有意为 之、它是一种定点算术技术、将整数周期 (TBPRD) 和分数高分辨率周期 (TBPRDHR) 打包为一个 32 位值。

    计算工作原理

    从的屏幕截图中 CLLLC_HAL_setupHRPWMinUpDownCountModeWithDeadBand、公式为:

    pwmPeriod_ticks = (systemClock × 65536) / pwmFrequency / 2
    

    根据您的参数(120MHz 时钟、500.8kHz 谐振频率、向上/向下计数模式):

    pwmPeriod_ticks = (120,000,000 × 65536) / 500,800 / 2 ≈ 7,864,729
    

    此结果是一个 32 位定点数 、其中:

    • 高 16 位 =整数周期→加载到 TBPRD 中 (粗略时钟周期)
    • 低 16 位 =小数周期→加载到 TBPRDHR 中 (高分辨率 MEP 步长)

    2 分频考虑到向上/向下计数模式、其中 PWM 周期等于 2×TBPRD 1。

    然后,代码 0xFFFFFF00 使用屏蔽并直接写入 TBPRDHR 地址 HWREG,同时在一个 32 位写 1 中设置 TBPRDHR(高 16 位)和 TBPRDHR(低 16 位,高字节)。

    为什么乘以 65536?

    乘以 2^16 会将整数部分移入上半字、同时保留下半字中的小数部分。 启用自动转换时 (HRCNFG[AUTOCONV]=1)、硬件使用 HRMSTEP 寄存器(由 SFO 校准函数写入)自动将 TBPRDHR 中的小数值调整到正确的 MEP 步数(每步分辨率~150ps) 2.

    推荐的 HRPWM 参考材料

    1. TMS320F280039 技术参考手册 — HRPWM 部分 (第 20.15 节):介绍了 MEP 操作、寄存器描述和使用自动转换 1 进行 TBPRDHR/CMPAHR 计算的有效示例

    2. SFO 库文档 (第 20.15.2 节):说明在运行时更新 HRMSTEP 的比例因子优化器校准

    3. C2000Ware SDK HRPWM 示例:该 hrpwm_ex3_prd_updown_sfo.c 示例演示了向上/向下计数模式下的高分辨率周期控制—与您的 TIDM-02013 代码直接相关 3.

    4. 有关 ePWM/HRPWM 的 E2E 常见问题解答:精选的常见问题和答案列表 4.

    后续: 您是计划在运行时动态修改谐振频率、还是主要在根据自己的 CLLLC 设计调整现有的 TIDM-02013 代码之前尝试了解其?


    1. TMS320F280039 技术参考手册 — HRPWM
    2. TMS320F280039 数据表 — HRPWM 电气数据
    3. E2E:递增计数模式下的 HRPWM 周期精度
    4. E2E 常见问题解答:C2000 ePWM 和 HRPWM

    谢谢

    Srikanth

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

    尊敬的 Srikanth:

    非常感谢您的详细说明。

    此致、

    注意事项

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

    尊敬的 Srikanth:

    非常感谢。

    目前、 在根据 自己的 CLLLC 设计调整现有的 TIDM-02013 代码之前、我主要是想了解这些代码。

    您是否有可购买的 TIDM-02013 实验板?

    另外、我想您是前面提到的 ePWM 专家。 我在 TIDM-02013 中发布了另一篇有关驱动波形的文章、内容涵盖 PFC、LLC 和同步整流。 您能否在有空时查看一下、并帮助我解决相关问题? 链接到 POST 如下:

     RE:TMS320F280039C:TIDM-02013 的 PWM 波形  

    此致。

    注意事项

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

    高功率、

    TIDM-02013 电路板不可购买。 您可以使用 TI.com 上提供的设计文件进行构建。 我还将咨询相关专家、以便回到您在 TIDM-02013 上的问题。  您也可以与他核实是否有可用的董事会出租给您。

    谢谢

    Srikanth