关于使用STM32F103定时器3生成PWM的频率问题: 定时器需要设置下面三个参数: TIM_TimeBaseInitStructure.TIM_Period=per; //自动装载值 TIM_TimeBaseInitStructure.TIM_Prescaler=psc; //分频系数 TIM_TimeBaseInitStructure.TIM_ClockDivision=TIM_CKD_DIV1; //时钟分频因子 其中,第三项为时钟分频因子,设置为TIM_CKD_DIV1,就是1分频,即保持总线频率。因为定时器3是挂接在APB1总线上的,且APB1的频率为36MHZ,所以定时器3的输入频率为36MHZ。 当我设置自动装载值per为500,分频系数psc为72-1时,根据公式 f= Tclk/((per)*(psc+1)) 可以计算出f= Tclk/((per)*(psc+1))=36MHZ/(500*72)=1000HZ 请问:这种算法对吗?这样的参数PWM输出的频率是1000HZ吗? |