3.9 PWM 模式
脉冲宽度调制模式可以产生一个由TIMx_ARR寄存器确定频率、由TIMx_CCRx寄存器确定占空比的信号。
在TIMx_CCMRx寄存器中的OCxM位写入’110’(PWM模式1)或’111’(PWM模式2),能够独立地设置每个OCx输出通道产生一路PWM。必须设置TIMx_CCMRx寄存器OCxPE位以使能相应的预装载寄存器,最后还要设置TIMx_CR1 寄存器的ARPE位, (在向上计数或中心对称模式中)使能自动重装载的预装载寄存器。
仅当发生一个更新事件的时候,预装载寄存器才能被传送到影子寄存器,因此在计数器开始计数之前,必须通过设置TIMx_EGR寄存器中的UG位来初始化所有的寄存器。
OCx的极性可以通过软件在TIMx_CCER寄存器中的CCxP位设置,它可以设置为高电平有效或低电平有效。 TIMx_CCER寄存器中的CCxE位控制OCx输出使能。
在PWM模式(模式1 或模式2)下, TIMx_CNT和TIMx_CCRx始终在进行比较, (依据计数器的计数方向 ) 以确 定是否符合 TIMx_CCRx≤ TIMx_CNT 或者 TIMx_CNT ≤ TIMx_CCRx 。然而为了与
OCREF_CLR的功能(在下一个PWM周期之前,ETR信号上的一个外部事件能够清除OCxREF)一致,OCxREF信号只能在下述条件下产生:
● 当比较的结果改变
● 当输出比较模式(TIMx_CCMRx寄存器中的OCxM位)从“冻结” (无比较, OCxM=’000’)切换到某个PWM模式(OCxM=’110’或’111’)
这样在运行中可以通过软件强置PWM输出。根据TIMx_CR1 寄存器中 CMS位的状态,定时器能够产生边沿对齐的PWM信号或中央对齐的PWM信号。 |