就是说,是不是只需要配置:
TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;
TIM_OCInitTypeDef TIM_OCInitStructure;
这两项就可以了?
我目前知道的区别是:使能定时器时钟APB2
那么关于刹车和死区的配置: TIM_BDTRInitTypeDef TIM_BDTRInitStructure;
是否是必要的呢?还是说,只有同时应用互补输出通道TIM1_CHXN的时候才需要配置BDTR
另外, TIM_OCInitStructure.TIM_OCIdleState=TIM_OCIdleState_Set;
TIM_OCInitStructure.TIM_OCNIdleState=TIM_OCIdleState_Reset;也是只有用到chxn才要配置的么?
最后,请问一下 TIM_CtrlPWMOutputs(TIM1,ENABLE);这个语句在PWM产生中有什么作用么?必须要用么?我看到通用定时器是没有这个函数的,所以这是TIM1特有的?产生PWM必用??
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
---------------------------------
那么我这么配置就可以了么:
TIM_BDTRInitTypeDef TIM_BDTRInitStructure;
TIM_BDTRInitStructure.TIM_OSSRState=TIM_OSSRState_Enable;
TIM_BDTRInitStructure.TIM_OSSIState=TIM_OSSIState_Enable;
TIM_BDTRInitStructure.TIM_LOCKLevel=TIM_LOCKLevel_1;
TIM_BDTRInitStructure.TIM_DeadTime=0x7F;
TIM_BDTRInitStructure.TIM_Break=TIM_Break_Disable;
TIM_BDTRInitStructure.TIM_BreakPolarity=TIM_BreakPolarity_High;
TIM_BDTRInitStructure.TIM_AutomaticOutput=TIM_AutomaticOutput_Enable;
TIM_BDTRConfig(TIM1,&TIM_BDTRInitStructure);
TIM_CtrlPWMOutputs(TIM1,ENABLE);
想请问:TIM_BDTRInitStructure.TIM_DeadTime这个是设置死区时间的,指定了输出和打开关闭状态之间的延时。通用定时器没有这项,是不是就相当于我把这个deadtime设置为0呢?如果我使用TIM1的同时还使用了TIM2,为了让他们同时输出,我是不是应该把这个设置为0?
另外:TIM_OCInitStructure.TIM_OCIdleState=TIM_OCIdleState_Set;
TIM_OCInitStructure.TIM_OCNIdleState=TIM_OCIdleState_Reset;
这个是必须的么??
谢谢!
一周热门 更多>