General-purpose timers (TIM2/TIM3) RM0367
506/1043 RM0367 Rev 7
Figure 137. Center-aligned PWM waveforms (ARR=8)
Hints on using center-aligned mode:
• When starting in center-aligned mode, the current up-down configuration is used. It
means that the counter counts up or down depending on the value written in the DIR bit
in the TIMx_CR1 register. Moreover, the DIR and CMS bits must not be changed at the
same time by the software.
• Writing to the counter while running in center-aligned mode is not recommended as it
can lead to unexpected results. In particular:
– The direction is not updated if a value greater than the auto-reload value is written
in the counter (TIMx_CNT>TIMx_ARR). For example, if the counter was counting
up, it continues to count up.
– The direction is updated if 0 or the TIMx_ARR value is written in the counter but no
Update Event UEV is generated.
• The safest way to use center-aligned mode is to generate an update by software
(setting the UG bit in the TIMx_EGR register) just before starting the counter and not to
write the counter while it is running.
CCxIF
012345678765432 101
Counter register
CCRx = 4
OCxREF
CMS=01
CMS=10
CMS=11
CCxIF
CCRx=7
OCxREF
CMS=10 or 11
CCxIF
CCRx=8
OCxREF
CMS=01
CMS=10
CMS=11
‘1’
CCxIF
CCRx>8
OCxREF
CMS=01
CMS=10
CMS=11
‘1’
CCxIF
CCRx=0
OCxREF
CMS=01
CMS=10
CMS=11
‘0’
AI14681b