AnsweredAssumed Answered

Disabling FTM

Question asked by Elizabeth Russell on Sep 16, 2015
Latest reply on Sep 18, 2015 by Elizabeth Russell

I am using one of the FTM timers in a K60 as a PWM signal to control the dimming of the backlighting on a display. It all works correctly but I am confused about the optimal way to disable the FTM and guarantee that the output of the FTM is low before entering one of the K60 sleep modes. I have tried a number of approaches  but haven't come up with an optimal solution that works every time before sleep mode is entered. I hate to just throw in arbitrary delays without understanding the underlying considerations. I was hoping that stopping the clock and setting the initialization bit would work but it doesn't work reliably.

 

// Stop the clock

FTM0_SC = (FTM_SC_CLKS(0x00) | FTM_SC_PS(0x00));

 

// Set output initialization to be low

FTM0_OUTINIT &= ~FTM_OUTINIT_CH2OI_MASK;

// Force initialization

FTM0_MODE = FTM_MODE_FAULT(0x00) | FTM_MODE_WPDIS_MASK | FTM_MODE_INIT_MASK);

 

I've also tried resetting the count and setting the offset register to equal the period and using the SYNC register to force the buffer values to the registers but that didn't work either.

 

 

I would appreciate any help on this!

 

Thanks,

 

Elizabeth

Outcomes