默认APB1时钟频率(PCLK1)=AHB时钟频率(HCLK)/2
默认APB2时钟频率(PCLK1)=AHB时钟频率(HCLK)
话不多说,先上代码
所有定时器都需要使能,使能后开始计时
TIM_Cmd(TIMx, ENABLE);
计算公式为:普通定时器定时时长=
(1/((APB1时钟频率×2)/(TIM_Prescaler+1)))×(TIM_Period+1)
为什么APB1时钟频率×2,因为当默认APB1时钟频率(PCLK1)=AHB时钟频率(HCLK)/2时,根据时钟树,普通定时器的时钟频率=APB1时钟频率×2
所以当RCC_HCLK_Div1和RCC_HCLK_Div2对于普通定时器的时钟频率来说都是AHB时钟频率(HCLK),