一、PWM(Pulse Width Modulation)脉冲宽度调制
在具有惯性的系统中,可以通过对一系列脉冲的宽度进行调制,来等效地获得所需要的模拟参量,常应用于电机控速等领域
PWM参数: 频率 = 1 / TS 占空比 = TON / TS 分辨率 = 占空比变化步距
二、基本结构
模式一般使用PWM模式1
三、代码设计
1、RCC
选择时钟
2、GPIO(PWM输出端口)
GPIO_InitTypeDef GPIO_InitStructure;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP; // 复用推挽输出 (片上外设)
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIOA,&GPIO_InitStructure);
3、时基单元
通过上面的公式,确定ARR、PSC的值,从而改变PWM
先确定分辨率,--->ARR -->PSC CCR
初始化通道3 输出比较
4、启动定时器
TIM_Cmd(TIM2,ENABLE);
三、调节CCR1寄存器,控制PWM占空比
TIM_SetCompare3(TIM2,Compare);
四、调节PWM频率