芯片:STM32F407
最近设置定时器配置PWM控制舵机时,出现一个问题:TIM1配置的参数可以控制舵机,同样的配置TIM2无法控制舵机!
示波器实测:TIM1配置的GPIO口输出信号频率为50hz,TIM2配置的GPIO口输出的信号频率为25Hz;
那么是什么造成了这种想象?
我们注意到APB1和APB2总线的频率不一样,APB2是高速,APB1是低速;
当前配置刚好APB2是APB1两倍!那么是不是TIM1和TIM2挂载的总线不一样?
由cubeMX生成的代码,关于各和器件挂载的总线配置文件在stm32f407xx.h中,我们找到
/******************** Bit definition for RCC_APB1ENR register ***************/
#define RCC_APB1ENR_TIM2EN_Pos (0U)
#define RCC_APB1ENR_TIM2EN_Msk (0x1U << RCC_APB1ENR_TIM2EN_Pos) /*!