问题出在 TIM_OC1PreloadConfig(TIM2, TIM_OCPreload_Enable);
//使能TIMx在CCR2上的预装载寄存器 因为我使用的是比较输出,并且在中断里面设置频率,所以利用TIM_SetCompare1(TIM2,capture + 32767)这个函数来改变比较寄存器的值, 所以当预装载寄存器被使能后,没中断一次,比较寄存器的值就被重新赋值了,这和中断里面设定频率有冲突, 所以解决方法是TIM_OC1PreloadConfig(TIM3, TIM_OCPreload_Disable). 这样就可以利用一个定时器产生4种不同频率,不同占空比的方波了,如有不对的地方,希望大家指点 【预装装载使能】转载于:https://www.cnblogs.com/zt2018/p/8728150.html