KE04 FTM0 C0V, C1V update problem

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

KE04 FTM0 C0V, C1V update problem

1,827 次查看
jaroslavbrazdil
Contributor I

Hi,

I have a problem with update (or set) the FTM0_C0V or FTM0_C1V register. I can use FTM2 with no problem.

I know that FTM0 is more simple than FTM2.

Here is my Init function:

void FTM0_Init(void){

/* ReSet the CLKS */
FTM0->SC = 0;
/* Set the PWM period */
FTM0->MOD = 0x0FFF0;

/* Set the channel values Output Capture Mode*/
FTM0->CONTROLS[0].CnSC = FTM_CnSC_ELSA_MASK | FTM_CnSC_CHIE_MASK;
FTM0->CONTROLS[1].CnSC = FTM_CnSC_ELSA_MASK | FTM_CnSC_CHIE_MASK;
/* Set the C0V and C1V */
FTM0->CONTROLS[0].CnV = 0x08F8;
FTM0->CONTROLS[1].CnV = 0x0800;
/* Set CLKS*/
FTM0->SC = FTM_SC_CLKS(1) | FTM_SC_PS(0);
}

The CnSC registers are updated OK, The counter is counting but I cant set the CnV registers.

The CLKS is 0:0, but CnV is not changed.

 

I tried to change CnV repeatedly in loop too. No change.

Can somebody help me please?

Thank You.

Jaroslav

0 项奖励
回复
2 回复数

1,813 次查看
jaroslavbrazdil
Contributor I

Hi again,

I have found something new.

I can change FTM0_C0V or FTM_C1V when I set FTM0_SC = FTM_SC_CPWMS_MASK;

Then CnV is set, but the FTM0_C0SC bit CHF is not set when CNT is running. I cant get an interrupt.

TOF interrupt is working OK.

CNT value is changing.

 

I have no idea what is going here.

 

Thanks

 Jaroslav

 

 

 

 

 

0 项奖励
回复

1,792 次查看
diego_charles
NXP TechSupport
NXP TechSupport

Hi @jaroslavbrazdil 

I have not seen in your code if you already enabled the  FTM IRQ in the NVIC. Could you try to call the following function before the FTM starts to run?

 

 

NVIC_EnableIRQ( IRQn_Type interrupt );

 

 

 

Yet, the FRDM-KE04Z does not have examples for the  FTM. However for a reference you could check the FRDM-KE06Z SDK FTM examples.  Its examples use the FTM SDK drivers.

The FTM is common along Kinetis MCUs. There is an application note regarding the FTM with bare metal code examples. It may help you as an additional reference. 

Features of the FlexTimer Module

I hope this helps. 

Best regards,

Diego.

 

0 项奖励
回复