General-purpose timers (TIM9 and TIM11) RM0401
408/771 RM0401 Rev 3
Particular case: OCx fast enable
In One-pulse mode, the edge detection on TIx input set the CEN bit which enables the 
counter. Then the comparison between the counter and the compare value makes the 
output toggle. But several clock cycles are needed for these operations and it limits the 
minimum delay t
DELAY
 min we can get.
If one wants to output a waveform with the minimum delay, the OCxFE bit can be set in the 
TIMx_CCMRx register. Then OCxRef (and OCx) are forced in response to the stimulus, 
without taking in account the comparison. Its new level is the same as if a compare match 
had occurred. OCxFE acts only if the channel is configured in PWM1 or PWM2 mode.
16.3.11  TIM9 external trigger synchronization
The TIM9 timers can be synchronized with an external trigger in several modes: Reset 
mode, Gated mode and Trigger mode.
Slave mode: Reset mode
The counter and its prescaler can be reinitialized in response to an event on a trigger input. 
Moreover, if the URS bit from the TIMx_CR1 register is low, an update event UEV is 
generated. Then all the preloaded registers (TIMx_ARR, TIMx_CCRx) are updated.
In the following example, the upcounter is cleared in response to a rising edge on TI1 input:
1. Configure the channel 1 to detect rising edges on TI1. Configure the input filter duration 
(in this example, we do not need any filter, so we keep IC1F=’0000’). The capture 
prescaler is not used for triggering, so it does not need to be configured. The CC1S bits 
select the input capture source only, CC1S = ‘01’ in the TIMx_CCMR1 register. 
Program CC1P and CC1NP to ‘00’ in TIMx_CCER register to validate the polarity (and 
detect rising edges only).
2.  Configure the timer in reset mode by writing SMS=’100’ in TIMx_SMCR register. Select 
TI1 as the input source by writing TS=’101’ in TIMx_SMCR register.
3.  Start the counter by writing CEN=’1’ in the TIMx_CR1 register.
The counter starts counting on the internal clock, then behaves normally until TI1 rising 
edge. When TI1 rises, the counter is cleared and restarts from 0. In the meantime, the 
trigger flag is set (TIF bit in the TIMx_SR register) and an interrupt request can be sent if 
enabled (depending on the TIE bit in TIMx_DIER register).
The following figure shows this behavior when the auto-reload register TIMx_ARR=0x36. 
The delay between the rising edge on TI1 and the actual reset of the counter is due to the 
resynchronization circuit on TI1 input.