说明:本工程代码在STM32F407ZET6上测试通过。
1、PWM定义
Pulse Width Modulation:脉冲宽度调制(PWM)
2、用途
(1)控制输出的电压和电流
(2)灯光的亮度
(3)电机控制
3、分析PWM产生与重点
(1)分析PWM产生(看图示PWM)
(2)区别PWM1与PWM2模式(STM32F4xx中文参考手册 433页)
(2)高低电平极性区别(STM32F4xx中文参考手册 457页)
4、PWM库函数开发流程
(1)使能定时器14和相关IO口时钟:
使能定时器14时钟:RCC_APB1PeriphClockCmd();
使能GPIOF时钟:RCC_AHB1PeriphClockCmd ();
(2)初始化IO口为复用功能输出:
函数:GPIO_Init();
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF; //复用功能
(3)GPIOF9复用映射到定时器14:(PE9引脚复用为TIM14,同时与一个LED灯连接)
GPIO_PinAFConfig(GPIOF,GPIO_PinSource9,GPIO_AF_TIM14);
(4)初始化定时器:ARR,PSC等:
TIM_TimeBaseInit();
(5)初始化输出比较参数:
TIM_OC1Init();
(6)使能预装载寄存器:
TIM_OC1PreloadConfig(TIM14, TIM_OCPreload_Enable);
<