AnsweredAssumed Answered

question about flexpwm of MPC5744P

Question asked by UWin F on Nov 10, 2016
Latest reply on Nov 21, 2016 by UWin F

 

Q1: when I write Run=0 and then write Run=1, will flexPWM generate Local Reload Signal?

Q2: SUBn_CTRL1[PRSC], SUBn_INIT and SUBn_VALx have buffers. I want to ask when I configure these registers the first time after reset,  where did I write to? the outer buffers or the inner?

Q3: (fellow Q2) if the answer is the outer buffers, what is happening when I set Run=1?

As I think it will first generate local reload signal, secondly reload the buffers to the inner, at last run as I have configured.  Is that correct?  If no what is the right process?

 

Q4: in my program I use flexpwm0 pwmx0 trigger ctu0, flexpwm1 pwmx0 trigger ctu1, and ctu0&ctu1 trigger ADC0-3, so I configure flexpwm1 use EXT_SYNC to Initialize itself. The code is as follows:

FlexPWM1.SUB[0].CTRL2.B.INIT_SEL = 3;                   /* 11 = EXT_SYNC causes initialization */

where the ext_sync signal to flexpwm1 is the master reload signal of flexpwm0.

 

A strange thing I found is that at the first cycle of flexpwm1, flexpwm1 seems cann’t trigger ctu1. After the first cycle, the flexpwm1 trigger ctu1 well. i want know why?

PS: when I configure flexpwm1 INIT_SEL=0 (local sync cause initilation), it will be ok.

 

Q5: Another thing I found is that under this condition( flexpwm1 INIT_SEL=3), it seems that when I set flexpwm0 Run=0 and then set flexpwm0 Run=1, it will reset flexpwm1 counter register((FlexPWM_SUBn_CNT) , does that mean a master reload signal has generated?

 

 

Thank you very much!

 

Outcomes