Timer Interface B (TIMB)
Functional Description
MC68HC908MR16/MC68HC908MR32 — Rev. 4.0 Advance Information
MOTOROLA Timer Interface B (TIMB) 229
12.4.2 Input Capture
An input capture function has three basic parts:
1. Edge select logic
2. Input capture latch
3. 16-bit counter
Two 8-bit registers, which make up the 16-bit input cap ture re gister, ar e
used to latch the value of the free-runn ing counter after the
corresponding input capture edge detector senses a defined transition.
The polarity of the active edge is programmable. The level transition
which triggers the counter transfer is defined by the correspo nding input
edge bits (ELSxB and ELSxA in TBSC0–TBSC1 control regi sters with x
referring to the active channel number). When a n active ed ge occurs on
the pin of an input capture channel, the TIMB latch es the contents of the
TIMB counter into the TIMB channel registers, TCHxH–TCHxL. Input
captures can generate TIMB CPU interrupt requests. Software can
determine that an input capture event has occurred by enabling input
capture interrupts or by polling the status flag bit.
The result obtained by an input capture will be two more than the value
of the free-running counter on the rising edge of the internal bus clock
preceding the external transition. This delay is required for internal
synchronization.
The free-running counter contents are transferred to the TIMB channel
status and control register (TBCHxH–TBCHxL, see 12.8.5 TIMB
Channel Registers) on each proper signal transition regardless of
whether the TIMB channel flag (CH0F–CH1F in TBSC0–TBSC1
registers) is set or clear. When the status flag is set, a CPU interrupt is
generated if enabled. The value of the count latched or “captured” is the
time of the event. Because this value is stored in the input capture
register two bus cycles after the actual event occurs, user software can
respond to this event at a later time and dete rmine the actu al time of the
event. However, this must be done prior to another i nput captu re on the
same pin; otherwise, the previous time value will be lost.
By recording the times for successive edges on an incoming signal,
software can determine the period and/or pulse width of the signal. To
measure a period, two successive edges of the same polarity are
captured. To measure a pulse width, two alternate polarity edges are