stm32f4关于pwm

870阅读 0评论2014-02-24 枫海8深蓝
分类:C/C++

  脉宽调制模式可以生成一个由TIMx_ARR寄存器的值确定频率和TIMx_CCRx寄存器的值确定占空比的信号。

         可以对每个通道独立选择PWM模式,( OCx输出一个PWM信号)在TIMx_CCMRx寄存器的OCxM位写110(PWM模式1)或111(PWM模式2)。必须通过设置TIMx_CCMRx寄存器的OCxPE位,启用相应的预装载寄存器,最后还要设置TIMx_CR1寄存器的ARPE位,(在向上计数或中心对称模式中)使能自动重装载的预装载寄存器。

       仅当发生一个更新事件的时候,预装载寄存器才能被传送到影子寄存器,因此在计数器开始计数之前,必须通过设置TIMx_EGR寄存器中的UG位来初始化所有的寄存器。

        OCx的极性可以通过软件在TIMx_CCER寄存器中的CCxP位设置,它可以设置为高电平有效或低电平有效。TIMx_CCER寄存器中的CCxE位控制OCx输出使能。详见TIMx_CCERx寄存器的描述。

 

 

 

配置步骤:

1.     使能相关时钟。

2.     配置相关的引脚模式、速度、以及复用功能。

3.     使能TIM时钟

4.     设置分频。

5.     设置周期。(ARR的值)周期=(PSC+1)* ARR / TIMx时钟

6.     产生一次更新事件,更新影子寄存器的值。

7.     在CCMR中设置PWM模式。

8.     设置各通道占空比。占空比= CCRx / ARR。

9.     使能比较输出。

10.  启动预装载。

11.  打开定时器。

上一篇:82c54调试代码
下一篇:静态变量分析