General-purpose timers (TIM2 to TIM5)
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 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.
15.3.10
One-pulse mode
One-pulse mode (OPM) is a particular case of the previous modes. It allows the counter to
be started in response to a stimulus and to generate a pulse with a programmable length
after a programmable delay.
Starting the counter can be controlled through the slave mode controller. Generating the
waveform can be done in output compare mode or PWM mode. You select One-pulse mode
by setting the OPM bit in the TIMx_CR1 register. This makes the counter stop automatically
at the next update event UEV.
A pulse can be correctly generated only if the compare value is different from the counter
initial value. Before starting (when the timer is waiting for the trigger), the configuration must
be:
•
In upcounting: CNT<CCRx≤ ARR (in particular, 0<CCRx),
•
In downcounting: CNT>CCRx.
For example you may want to generate a positive pulse on OC1 with a length of t
after a delay of t
383/1128
The direction is not updated if you write a value in the counter that is greater than
the auto-reload value (TIMx_CNT>TIMx_ARR). For example, if the counter was
counting up, it continues to count up.
The direction is updated if you write 0 or write the TIMx_ARR value in the counter
but no Update Event UEV is generated.
Figure 132. Example of one-pulse mode
TI2
OC1REF
OC1
TIM1_ARR
TIM1_CCR1
0
as soon as a positive edge is detected on the TI2 input pin.
DELAY
DocID13902 Rev 15
t
DELAY
t
PULSE
RM0008
t
and
PULSE
Need help?
Do you have a question about the STM32F101 series and is the answer not in the manual?
Questions and answers