请教一下:TIM1 产生的互补PWM ,想更改占空比 需要给哪个寄存器重新 赋值啊?我想在 主程序里 不断的调整 PWM的占空比。
TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High;
TIM_OCInitStructure.TIM_OCNPolarity = TIM_OCNPolarity_High;
TIM_OCInitStructure.TIM_OCIdleState = TIM_OCIdleState_Set;
TIM_OCInitStructure.TIM_OCNIdleState = TIM_OCIdleState_Reset;
TIM_OC1Init(TIM1, &TIM_OCInitStructure);
TIM_OCInitStructure.TIM_Pulse = Channel1Pulse;//这里修改的是占空比。。但想在主函数里面单独更改这个寄存器值,应该是哪个寄存器呢、。
TIM_OC2Init(TIM1, &TIM_OCInitStructure);
// TIM_OCInitStructure.TIM_Pulse = Channel1Pulse;
// TIM_OC3Init(TIM1, &TIM_OCInitStructure);
TIM_OC1PreloadConfig(TIM1, TIM_OCPreload_Enable); //????????????(??1)
TIM_OC2PreloadConfig(TIM1, TIM_OCPreload_Enable);
还有一个问题: 如果我想改变PWM的频率,我直接修改了PWM_init()函数内部的周期值,然后不断的更新这条指令,我的疑惑就是 在执行PWM-init()这个函数的时候,会不会对以前的PWM产生影响,连贯性怎么样? |