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.

[参考译文] UCD3138:DPWM 生成的脉冲太小

Guru**** 2445440 points


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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/666749/ucd3138-dpwm-generates-too-small-pulses

器件型号:UCD3138

您好!

我遇到问题、发现 DPWM 生成的脉冲太短。

是的、我知道、有一些设置可以防止这种情况、但不幸的是、它失败了。 这是已知问题吗?

测试设置。

我配置我的三个 DPWM (三相系统)以从滤波器部分获取占空比。 滤波器部分设置为从 CPU 获取输入。 当我手动将滤波器输入设置为1时、输出将运行至最大值 已达到可能的脉冲宽度(此处3.3µs)、这正常。  当我将该值设置为-1时、脉冲将变得越来越小、直到不再产生任何脉冲。 我设置最小占空比模式= 1、因此最小脉宽由 DPWMMINDUTYLOW 寄存器中的值决定。 遗憾的是、我看到脉冲降至30ns。

使用 最小占空比模式= 2、脉冲越来越小、系统最终通过生成编程的最小脉冲宽度的脉冲来实现。 这工作正常。 因此、我确信 DPWMMINDUTYLOW 中的值是正确的。

怎么了???

此致

Gerhard

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

    min_Duty_mode 位选择 DPWM 如何处理最小占空比限制。
    •0 -默认情况下、滤波器输出直接传递到 DPWM
    •1 -如果高于 DPWMMINDUTYLOW、则传递的滤波器值。 如果低于 DPWMMINDUTYLOW、则 DPWM 无脉冲
    •2 -如果高于 DPWMMINDUTYLOW、则传递的滤波器值。 如果低于 DPWMMINDUTYLOW、DPWM 脉冲宽度= DPWMMINDUTYLOW

    因此、当您设置为1并应用-1作为误差时、您应该不会看到脉冲。 您能告诉我您的 DPWMMINDUTYLOW 值是多少?

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

    感谢您的回复。

    我知道这一点、因此我使用 min_Duty_mode = 1。 我预期 DPWM 输出会停止并且最短(最后?) 脉冲不小于 DPWMMINDUTYLOW 中定义的值。 DPWMMINDUTYLOW 设置为65、该寄存器应该具有4ns 分辨率、或者我错了?

    我肯定会看到低至30ns 的脉冲、这是不正确的。

    设置 MIN_DUTY_MODE = 2可获得编程的最小脉冲长度、因此我认为 DPWMMINDUTYLOW 中的值是可以的。

    遗憾的是、我的系统不是通用电源、而是恒定电流源。 功率范围为大约200W 至 mW。 有时、我必须生成100µA Ω 的电阻值、使其达到一定的兆欧、并且使用 MIN_DUTY = 2是不可能的。

    我需要 CC/CV 行为和某种轻负载模式、例如长时间停止 DPWM。

    顺便说一下、我从未运行轻负载模块。 由于我需要 CC/CV、我认为 LL 在我的应用中不可用。

    此致

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

     您好!

    分辨率取决于向寄存器写入65的方式。 如果您写入整个寄存器:

    Dpwm0Regs.DPWMMINDUTYLO.ALL = 65、则为250ps

    如果您写为:

    Dpwm0Regs.DPWMMINDUTYLO.bit.MIN_DUTY 低电平= 65、则为4ns

    当 min_Duty_mode = 1时、您应该会在您的情况下看到零占空比。

    您是否正在尝试使用 DPWMMINDUTYLO 来提供最小占空比? 您可以通过使用滤波器钳位寄存器 FILTEROCLPLO 来实现这一点。 你试过这个吗?

    此致、

    Bosheng

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

    您好!

    我写入 Dpwm0Regs.DPWMMINDUTYLO.bit.min_Duty_low = 65。

    我需要某种类型的断续模式来处理非常轻的负载。 我在输出端看到一些磁通、 无法通过修改滤波器的 P、I 或 D 对其进行任何抵抗。 因此、我想系统变得非常非线性、因为我的晶体管的开关不是那么干净。

    但我现在获得了一些屏幕截图。 我看起来、只有最后一个发射的脉冲过短。 在极轻负载时、只有一个脉冲后跟较长的间隔、而不会产生脉冲、这会导致我之前检测到的脉冲序列过小。

    下面是有关当我设置错误 o -1时发生的情况的概述-标签'U-out'错误、抱歉。

    这里您可以看到 n-1个脉冲、其宽度约为336ns、最后一个脉冲较小。

    这里是最后一个脉冲、52ns =>太短了。

    此致

    Gerhard

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

    Gerhard、

    您对 MIN_DUTY 高电平执行了什么操作? 您需要的最小脉冲宽度是多少?

    我不清楚您希望使用该最小占空比寄存器实现的确切值。 如果您希望最小占空比始终高于特定值、则可以使用

    滤波器输出钳位低寄存器(FILTEROCLPLO)。

    此致、

    Bosheng

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

    您好!

    我想存档、如果滤波器输出低于某个值、脉冲生成就会停止、如果滤波器输出高于其他某个特定值、脉冲生成就会再次启动。 这两个值进入 Min_Duty_LO 和 Min_Duty_HI 寄存器。

    当请求的输出功率足够低时、DPWM 会生成突发(BURST_MODE = 1)、而该突发仅包含宽度大于或等于 MIN_DUTY LO 的脉冲。

    钳制滤波器输出不会对突发进行降级、因此转换器向负载提供过多能量。

    此致

    Gerhard

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

    我刚刚测试了 min_Duty_LO 和 min_Duty_HI 寄存器、如果您为它们放置相同的值、它将满足您的需求:如果滤波器输出低于该值、脉冲生成将停止、如果滤波器输出高于该值、脉冲生成将再次启动。 如果在 MIN_DUACT_LO 和 MIN_DUTY 上设置不同的值、则最小占空比由 MIN_DUTY 控制。

    是否可以为 MIN_DUTY 和 MIN_DUTY HI 使用相同的值?

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

    有更新吗? 此问题是否仍在处理中? 如果没有、我们可以关闭它吗?

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

    Bosheng、

    很抱歉耽误你的时间。 我的母亲(97岁)被送到医院,我不得不组织很多工作…… 因此没有时间进行进一步调查。

    我现在又在办公室中、尝试一些其他参数组合。 我将提供更新、直至下周结束。

    再次抱歉。

    此致

    Gerhard