在线时间28 小时
UID2074361
注册时间2015-9-23
NXP金币0
该用户从未签到
注册会员

- 积分
- 184
- 最后登录
- 2017-12-17
|
根据官网的DEMO程序,将原来的FTM2CH5(PTB5)改成FTM0CH0(PTB2)之后老是出不了PWM波形,改成FTM0CH1测相应管脚也出不来波形,配置代码如下
//SIM_RemapFTM0CH0ToPTB3();
//Select FTM2Ch5 on PTG7
//SIM_RemapFTM2CH5ToPTG7();
//SIM_RemapFTM0CH0ToPTA1();
/* FTM2 is set as edge aligned pwm mode, high true pulse */
FTM_PWMInit(FTM0, FTM_PWMMODE_EDGEALLIGNED, FTM_PWM_HIGHTRUEPULSE);
/* FTMEN enable */
//FTM_SetFTMEnhanced(FTM0);
/* update MOD value */
FTM_SetModValue(FTM0, 9999);
/* set clock source, start counter */
FTM_ClockSet(FTM0, FTM_CLOCK_SYSTEMCLOCK, FTM_CLOCK_PS_DIV1);
/* enable FTM2 interrupt in NVIC */
NVIC_EnableIRQ(FTM0_IRQn);
/* setup call back function for interrupt */
FTM_SetCallback(FTM0, FTM0_Task);
/* enable FTM2 overflow interrupt */
FTM_EnableOverflowInt(FTM0);
u16ChV_new=5000;
FTM_SetChannelValue(FTM0, FTM_CHANNEL_CHANNEL0, u16ChV_new);
另外中断中也清了标志位和重新赋值。其中FTM_SetFTMEnhanced(FTM0);这个函数调用,程序就会卡在这儿。看到论坛另外一个帖子说这个函数只能FTM2调用,其他都会卡死,希望谁能解答一下
|
|