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.

UCD3138A: DPWM duty more then 100%

Part Number: UCD3138A

With an UCD3138A a charge pump is operating in a closed loop. For this I use a DPWM module in multi-mode. The duty is to be controlled via a frontend and a filter (PI regulator).

Basically, the regulation of the output voltage works fine and the DPWM changes its duty according to the load resistance at the output.

My problem now is, that the DPWM output signal remains switched on for more than 100% duty sometimes. See screenshot:



Can I prevent that somehow?

DPWM initialization:

DPWMEV1.all                           = (int)(Dpwm1Regs.DPWMPRD * 0.05);
DPWMEV2.all                           = 0;
DPWMEV3.all                           = (int)(Dpwm1Regs.DPWMPRD * 0.05);
DPWMEV4.all                           = 0;
DPWMCTRL0.bit.PWM_MODE                = 2;
DPWMCTRL1.bit.EVENT_UP_SEL            = 0;
DPWMSAMPTRIG1.all                     = (int)(Dpwm1Regs.DPWMPRD * 0.96);
DPWMCTRL2.bit.SAMPLE_TRIG1_OVERSAMPLE = 3;
DPWMCTRL2.bit.SAMPLE_TRIG1_MODE       = 0;
DPWMCTRL2.bit.SAMPLE_TRIG_1_EN        = 1;

Filter initialization:

FILTEROCLPHI.bit.OUTPUT_CLAMP_HIGH = (int)(Dpwm1Regs.DPWMPRD * 0.75);
FILTEROCLPLO.bit.OUTPUT_CLAMP_LOW  = 0;
FILTERCTRL.bit.OUTPUT_MULT_SEL     = 1;
FILTERCTRL.bit.PERIOD_MULT_SEL     = 0;

Can anyone help? Thanks in advance!