Timer Interface Module (TIM1)
Functional Description
MC68HC908GR60A MC68HC908GR48A MC68HC908GR32A
Data Sheet
MOTOROLA
Timer Interface Module (TIM1)
257
17.3.1 TIM1 Counter Prescaler
The TIM1 clock source is one of the seven prescaler outputs. The prescaler
generates seven clock rates from the internal bus clock. The prescaler select bits,
PS[2:0], in the TIM1 status and control register (T1SC) select the TIM1 clock
source.
17.3.2 Input Capture
With the input capture function, the TIM1 can capture the time at which an external
event occurs. When an active edge occurs on the pin of an input capture channel,
the TIM1 latches the contents of the TIM1 counter into the TIM1 channel registers,
T1CHxH:T1CHxL. The polarity of the active edge is programmable. Input captures
can generate TIM1 central processor unit (CPU) interrupt requests.
17.3.3 Output Compare
With the output compare function, the TIM1 can generate a periodic pulse with a
programmable polarity, duration, and frequency. When the counter reaches the
value in the registers of an output compare channel, the TIM1 can set, clear, or
toggle the channel pin. Output compares can generate TIM1 CPU interrupt
requests.
17.3.3.1 Unbuffered Output Compare
Any output compare channel can generate unbuffered output compare pulses as
changing the output compare value requires writing the new value over the old
value currently in the TIM1 channel registers.
An unsynchronized write to the TIM1 channel registers to change an output
compare value could cause incorrect operation for up to two counter overflow
periods. For example, writing a new value before the counter reaches the old value
but after the counter reaches the new value prevents any compare during that
counter overflow period. Also, using a TIM1 overflow interrupt routine to write a
new, smaller output compare value may cause the compare to be missed. The
TIM1 may pass the new value before it is written.
Use the following methods to synchronize unbuffered changes in the output
compare value on channel x:
When changing to a smaller value, enable channel x output compare
interrupts and write the new value in the output compare interrupt routine.
The output compare interrupt occurs at the end of the current output
compare pulse. The interrupt routine has until the end of the counter
overflow period to write the new value.
When changing to a larger output compare value, enable TIM1 overflow
interrupts and write the new value in the TIM1 overflow interrupt routine. The
TIM1 overflow interrupt occurs at the end of the current counter overflow