一、概念理解
1. PWM模式由TIM_ARR寄存器确定频率,由TIM_CCR寄存器确定占空比的信号。
2. 举例说明:例如TIM时钟频率设置为36MHZ,输出比较寄存器中的自装载值为3599即ARR Register = 3599,则输出的PWM频率为
frequency = 36MHZ/(ARR+1)=10KHZ。设置捕获寄存器的值CCR_Value(即高电平计数值)= 1800.,则占空比
duty cycle = 1800//3600=50%。
二、程序分析(PWM频率为10K,占空比为25%)
1. 时钟设置
RCC_PCLK1Config(RCC_HCLK_Div4); //72MHZ 4分频,由于TIM的倍频器在APB分频不为1时为2,所以TIM3的时钟频率为36MHZ
/* TIM3 clock enable */
RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3, ENABLE);
/* GPIOA and GPIOB clock enable */
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);
2. GPIO配置(略)
3. TIM3配置
/* Time base configuration */
TIM_TimeBaseStructure.TIM_Period = 3599; //输出比较寄存器中的自装载值,ARR Register = 3599
T