PWM的参数计算

比如: 设置一个频率为1kHz,占空比50%,分辨率为1%的PWM,则上面三式应该为:
(CK_PSC:芯片的内嵌工作频率, PSC:预分频, ARR:自动重装寄存器, CCR:捕获比较寄存器)
PWM频率: 72MHz / (PSC +1) / (ARR + 1) = 1000
PWM占空比: CCR / (ARR + 1) = 50%
PWM分辨率: 1 / (ARR + 1) = 1%
可算出: ARR = 100 -1 ; CCR = 50; PSC = 720 - 1
PWM的代码配置
1. 开启APB1外设中的TIM2时钟
![]()
2. GPIO配置(需要查看引脚图中OC1通道对应在芯片的哪个引脚上,如果该OC引脚被占用,则查看是否可以通过重定义功能即AFIO重新定义在其他引脚上, 例如:OC1通道可以重定义在PA15引脚)

![]()

3.TIM2的时基单元由内部时钟驱动

4. 对第一个输出比较OC1进行配置(用TIM2的OC1通道)

5. 启动定时器(当产生更新时,就能触发中断)
![]()
这篇博客介绍了如何在STM32单片机中配置TIM2的OC1通道生成1kHz频率、50%占空比、1%分辨率的PWM信号。首先,通过参数计算得出ARR、CCR和PSC的值,然后详细阐述了代码配置步骤,包括开启TIM2时钟、GPIO配置、时基单元设置、输出比较配置以及定时器启动。
6705

被折叠的 条评论
为什么被折叠?



