STM32之PWM

允我心安 提交于 2020-01-11 20:11:21

STM32 PWM

PWM是脉冲宽度调制,是英文“Pulse Width Modulation” 的缩写,简称脉宽调制。用来控制电机,灯的亮暗,通过PWM配置后的引脚会输出方波。

pwm结构体初始化

//引脚和时钟的驱动就不在写出参考上两节
TIM_OCInitTypeDef TIM_OCInitStructure;
TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM2; //选择 PWM 模式 2
TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable; //比较输出使能
TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High; //输出极性高
TIM_OC2Init(TIM3, &TIM_OCInitStructure); //初始化 TIM3 OC2
TIM_OC2PreloadConfig(TIM3, TIM_OCPreload_Enable); //使能预装载寄存器
TIM_Cmd(TIM3, ENABLE); //使能 TIM3

PWM调节脉宽的函数

//参数1是说用定时器参数2是比较值
void TIM_SetCompare2(TIM_TypeDef* TIMx, uint16_t Compare2)

pwm的使用从软件层面看就是这些,但是相关寄存器并没有说明有些云里雾里,接下来有空我会对其进行补充。

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!