30
SINGLE-CHIP 8-BIT CMOS MICROCOMPUTER
MITSUBISHI MICROCOMPUTERS
3850 Group (Spec. H/A)
TIMERS
The 3850 group (spec. H/A) has four timers: timer X, timer Y, timer
1, and timer 2.
The division ratio of each timer or prescaler is given by 1/(n + 1),
where n is the value in the corresponding timer or prescaler latch.
All timers are count down. When the timer reaches
“
00
16
”
, an un-
derflow occurs at the next count pulse and the corresponding
timer latch is reloaded into the timer and the count is continued.
When a timer underflows, the interrupt request bit corresponding
to that timer is set to
“
1
”
.
Timer X and Timer Y
Timer X and Timer Y can each select in one of four operating
modes by setting the timer XY mode register.
(1) Timer Mode
The timer counts the count source selected by Timer count source
selection bit.
(2) Pulse Output Mode
The timer counts the count source selected by Timer count source
selection bit. Whenever the contents of the timer reach
“
00
16
”
, the
signal output from the CNTR
0
(or CNTR
1
) pin is inverted. If the
CNTR
0
(or CNTR
1
) active edge selection bit is
“
0
”
, output begins
at
“
H
”
.
If it is
“
1
”
, output starts at
“
L
”
. When using a timer in this mode, set
the corresponding port P2
7
( or port P4
0
) direction register to out-
put mode.
(3) Event Counter Mode
Operation in event counter mode is the same as in timer mode,
except that the timer counts signals input through the CNTR
0
or
CNTR
1
pin.
When the CNTR
0
(or CNTR
1
) active edge selection bit is
“
0
”
, the
rising edge of the CNTR
0
(or CNTR
1
) pin is counted.
When the CNTR
0
(or CNTR
1
) active edge selection bit is
“
1
”
, the
falling edge of the CNTR
0
(or CNTR
1
) pin is counted.
(4) Pulse Width Measurement Mode
If the CNTR
0
(or CNTR
1
) active edge selection bit is
“
0
”
, the timer
counts the selected signals by the count source selection bit while
the CNTR
0
(or CNTR
1
) pin is at
“
H
”
. If the CNTR
0
(or CNTR
1
) ac-
tive edge selection bit is
“
1
”
, the timer counts it while the CNTR
0
(or CNTR
1
) pin is at
“
L
”
.
The count can be stopped by setting
“
1
”
to the timer X (or timer Y)
count stop bit in any mode. The corresponding interrupt request
bit is set each time a timer underflows.
Fig. 23 Structure of timer XY mode register
I
Note
When switching the count source by the timer 12, X and Y count
source bits, the value of timer count is altered in unconsiderable
amount owing to generating of a thin pulses in the count input
signals.
Therefore, select the timer count source before set the value to
the prescaler and the timer.
When timer X/timer Y underflow while executing the instruction
which sets
“
1
”
to the timer X/timer Y count stop bits, the timer X/
timer Y interrupt request bits are set to
“
1
”
. Timer X/Timer Y in-
terrupts are received if these interrupts are enabled at this time.
The timing which interrupt is accepted has a case after the in-
struction which sets
“
1
”
to the count stop bit, and a case after
the next instruction according to the timing of the timer under-
flow. When this interrupt is unnecessary, set
“
0
”
(disabled) to the
interrupt enable bit and then set
“
1
”
to the count stop bit.
Fig. 24 Structure of timer count source selection register
Timer 1 and Timer 2
The count source of prescaler 12 is the oscillation frequency
which is selected by timer 12 count source selection bit. The out-
put of prescaler 12 is counted by timer 1 and timer 2, and a timer
underflow sets the interrupt request bit.
T
i
m
0
1
e
C
:
C
r
o
o
X
u
u
c
n
n
o
t
t
u
s
s
n
t
a
t
o
t
r
p
s
t
t
o
p
b
i
t
:
Timer XY mode register
(TM : address 0023
16
)
i
m
e
r
X
o
p
e
b1b0
Timer Y operating mode bits
0 0: Timer mode
0 1: Pulse output mode
1 1: Pulse width measurement mode
N
T
R
1
a
c
t
i
v
e
e
d
g
e
0
:
I
n
t
e
r
r
u
p
t
a
t
f
a
l
l
C
o
u
n
t
a
t
r
i
s
i
n
g
c
o
u
n
t
e
r
m
o
d
e
1
:
I
n
t
e
r
r
u
p
t
a
t
r
i
s
i
C
o
u
n
t
a
t
f
a
l
l
i
n
g
c
o
u
n
t
e
r
m
o
d
e
Timer Y count stop bit
0: Count start
1: Count stop
C
n
e
s
g
d
e
g
l
e
e
e
c
d
t
i
e
n
o
n
b
i
t
i
g
i
e
v
e
n
t
n
g
e
d
e
g
d
e
g
e
i
n
e
v
e
n
t
b
7
CNTR
0
active edge selection bit
0: Interrupt at falling edge
Count at rising edge in event
counter mode
1: Interrupt at rising edge
Count at falling edge in event
counter mode
b
0
T
r
a
t
i
n
g
m
o
d
e
b
i
t
0
0
1
1
0
1
0
1
:
:
:
:
T
P
E
P
i
u
v
u
m
l
e
l
e
s
n
s
r
m
o
c
w
o
t
u
i
d
d
p
n
t
h
e
u
t
e
u
o
t
e
m
m
r
e
o
m
a
d
o
s
e
d
u
t
e
r
e
e
m
e
n
t
m
o
d
e
T
(
i
0
1
i
0
1
i
T
m
C
e
S
r
S
c
o
:
u
a
n
d
t
d
s
r
o
e
u
s
r
c
0
e
0
s
2
e
8
1
l
e
6
)
c
t
i
o
n
r
e
g
i
s
t
e
r
s
b
7
b
0
T
m
:
:
e
f
(
f
(
r
X
I
X
I
X
N
)
N
)
c
/
/
o
1
2
u
6
(
n
(
f
t
f
X
C
(
s
X
C
o
u
I
N
)
r
N
)
/
c
e
/
2
s
6
a
e
t
l
e
t
o
c
l
w
t
i
o
w
s
n
-
p
b
p
i
e
d
t
1
a
l
o
-
s
e
e
m
d
o
m
d
o
e
d
)
e
)
(
I
T
m
:
:
e
f
(
f
(
r
X
I
X
I
Y
N
)
N
)
c
/
/
o
1
2
u
6
(
n
(
f
t
f
X
C
(
s
X
C
o
u
I
N
)
r
N
)
/
c
e
/
2
s
6
a
e
t
l
e
t
o
c
l
w
t
i
o
w
s
n
-
p
b
p
i
e
d
t
1
a
l
o
-
s
e
e
m
d
o
m
d
o
e
d
)
e
)
(
I
CIN
)/16 at low-speed mode)
Timer 1)/16 (f(X
CIN
)
o
t
u
s
e
d
(
r
e
t
u
r
n
s
“
0
”
N
w
h
e
n
r
e
a
d
)