Noe I try to output any pulse by FlexPWM by useing DMA.
Currently FlexPWM1 submodule0 A and B used independently.
I set DMA source kDmaRequestMuxFlexPWM1ValueSub0 to 2.
channnels.DMAMUX_SetSource(ALIGNMENT_MOTOR_DMAMUX, ALIGNMENT_Y_MOTOR_DMA_CH, kDmaRequestMuxFlexPWM1ValueSub0);
DMAMUX_SetSource(ALIGNMENT_MOTOR_DMAMUX, ALIGNMENT_X_MOTOR_DMA_CH, kDmaRequestMuxFlexPWM1ValueSub0);
A is memory to ALIGNMENT_MOTOR_PWM->SM[kPWM_Module_0].VAL3.
B is memory to ALIGNMENT_MOTOR_PWM->SM[kPWM_Module_0].VAL5
But it work only A.
B does not out pulses.
DMAMUX_SetSource can not support same source different channel ?
Solved! Go to Solution.
Thank you.
I use i.MXRT 1062.
Now I changed software structure.
DMA PWM1 submodule0 trigger -> PWM1 VAL3
PMW1 - Submodule0 - A ---> XBARA(PWM1 OutputTrigger) -- XBARA(INOUT04)
DMA PWM3 submodule0 trigger -> PWM3 VAL3
PMW3 - Submodule0 - A ---> XBARA(PWM3 OutputTrigger) -- XBARA(INOUT05)
Currently, it works well.
Hi,
Thank you so much for your interest in our products and for using our community.
Could you tell us which i.MX RT are you using please?
Thank you.
I use i.MXRT 1062.
Now I changed software structure.
DMA PWM1 submodule0 trigger -> PWM1 VAL3
PMW1 - Submodule0 - A ---> XBARA(PWM1 OutputTrigger) -- XBARA(INOUT04)
DMA PWM3 submodule0 trigger -> PWM3 VAL3
PMW3 - Submodule0 - A ---> XBARA(PWM3 OutputTrigger) -- XBARA(INOUT05)
Currently, it works well.