09.12.2012 Views

RM0090: Reference manual - STMicroelectronics

RM0090: Reference manual - STMicroelectronics

RM0090: Reference manual - STMicroelectronics

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

General-purpose timers (TIM9 to TIM14) <strong>RM0090</strong><br />

16.4 TIM9 to TIM14 functional description<br />

16.4.1 Time-base unit<br />

The main block of the timer is a 16-bit counter with its related auto-reload register. The<br />

counters counts up.<br />

The counter clock can be divided by a prescaler.<br />

The counter, the auto-reload register and the prescaler register can be written or read by<br />

software. This is true even when the counter is running.<br />

The time-base unit includes:<br />

● Counter register (TIMx_CNT)<br />

● Prescaler register (TIMx_PSC)<br />

● Auto-reload register (TIMx_ARR)<br />

The auto-reload register is preloaded. Writing to or reading from the auto-reload register<br />

accesses the preload register. The content of the preload register are transferred into the<br />

shadow register permanently or at each update event (UEV), depending on the auto-reload<br />

preload enable bit (ARPE) in TIMx_CR1 register. The update event is sent when the counter<br />

reaches the overflow and if the UDIS bit equals 0 in the TIMx_CR1 register. It can also be<br />

generated by software. The generation of the update event is described in details for each<br />

configuration.<br />

The counter is clocked by the prescaler output CK_CNT, which is enabled only when the<br />

counter enable bit (CEN) in TIMx_CR1 register is set (refer also to the slave mode controller<br />

description to get more details on counter enabling).<br />

Note that the counter starts counting 1 clock cycle after setting the CEN bit in the TIMx_CR1<br />

register.<br />

Prescaler description<br />

The prescaler can divide the counter clock frequency by any factor between 1 and 65536. It<br />

is based on a 16-bit counter controlled through a 16-bit register (in the TIMx_PSC register).<br />

It can be changed on the fly as this control register is buffered. The new prescaler ratio is<br />

taken into account at the next update event.<br />

Figure 167 and Figure 168 give some examples of the counter behavior when the prescaler<br />

ratio is changed on the fly.<br />

481/1416 Doc ID 018909 Rev 3

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!