Technical information

2-22
3800 GROUP USER’S MANUAL
APPLICATION
2.2 Timer
Fig. 2.2.22 Control procedure [Measurement of pulse width]
Figure 2.2.22 shows a control procedure.
Initialization
All interrupts : Disabled
SEI
TM
PREX
TX
ICON1
IREQ1
ICON2
IREQ2
TM
CLI
....
....
....
(Address : 2316)
(Address : 24
16)
(Address : 25
16)
(Address : 3E
16), bit4
(Address : 3C
16), bit4
(Address : 3F
16), bit0
(Address : 3D
16), bit0
(Address : 23
16), bit3
256–1
256–1
1
0
1
0
0
X : This bit is not used in this application.
Set it to
“0” or “1.” It’s value can be disregarded.
Timer X interrupt processing routine
Processing for error
RTI
Error occurs
CNTR0 interrupt processing routine
CLT (Note 1)
CLD (Note 2)
Push register to stack
RTI
Pop registers
A count value is read out and stored to RAM.
Set the division ratio so that the Timer X
interrupt occurs every 250 ms.
(A)
Result of pulse width measurement
low–order 8-bit
(A)
Result of pulse width measurement
high–order 8-bit
PREX (Address : 24
16
)
TX (Address : 25
16
)
PREX
Inversion of (A)
TX
256 – 1
Inversion of (A)
256 – 1
Push the register used in the interrupt
processing routine into the stack.
Pop registers which is pushed to stack.
Timer X : Pulse width measurement mode
Interrupts : Enabled
(Count “H” level width of pulse input from CNTR
0 pin.)
Set the division ratio so that the Timer X interrupt
occurs every 250 ms.
Timer X interrupt : Enabled
CNTR
0 interrupt : Enabled
Timer X count : Start
Note 1: When using the Index X mode flag (T).
Note 2: When using the Decimal mode flag (D).
XXXX1011
2
RESET