Dear Champs,
I am asking this for our customer.
The user is thinking to update blanking window registers during runtime in every PWM cycle with duty update including DCFOFFSET and DCFWINDOW.
Questions:
1. DCFOFFSET and DCFWINDOW do not have shadow registers like CMPA/CMPB. Therefore, if the user updates DCFOFFSET and DCFWINDOW during run time in a PWM cycle, they will be updated immediately. Is it right?
2. For DCFWINDOW
On the datasheet, it says "If the blanking window is currently active and the offset counter expires, the blanking window counter is not restarted and the blanking window is cut short prematurely. Care should be taken to avoid this situation."
We are confused about this statement.
Does that mean if the user updates a new DCFWINDOW when DCFOFFSETCNT has been zero, then existing DCFWINDOWCNT will stop counting down immediately?
DCFOFFSET will be loaded after the next DCFCTL.PULSESEL time, and then DCFOFFSETCNT starts counting down.
After DCFOFFSETCNT has been counting down to zero, then the new DCFWINDOW will be loaded and DCFWINDOWCNT start counting down again.
But if the user updates a new DCFWINDOW when DCFOFFSETCNT has not been zero, then after DCFOFFSETCNT has been counting down to zero, then the new DCFWINDOW will be loaded and DCFWINDOWCNT start counting down again.
Is our understanding correct?
If not, would you please make the above statement clearer?