
160
EPSON
S1C88409 TECHNICAL MANUAL
CHAPTER 5: PERIPHERAL CIRCUITS AND OPERATION (Touch Panel Controller)
Starting coordinate detection
The touch panel controller starts coordinate
detection by writing "1" to the RST register.
When "1" is written to the RST register, the control-
ler first performs a pen-down check and is on
standby to touch panel driving and A/D conver-
sion for coordinate detection similar to the pen-
down check by writing "1" to the PDC register.
When a pen-down is detected, the controller starts
coordinate detection. At the same time, a pen-
down interrupt occurs if the interrupt is enabled.
However, the coordinate detection uses the clock
generated by the prescaler with the OSC3 clock as
the source clock. Therefore, it is necessary to turn
the OSC3 oscillation circuit on and to control the
prescaler so that the clock for the touch panel
controller is output before writing "1" to the RST
register.
Refer to Section 5.4 "Oscillation Circuit" and
Section 5.5 "Prescaler and Clock Control Circuit for
Peripheral Circuits" for controlling the clock.
The touch panel controller controls the signals as
follows and detects an X coordinate and a Y
coordinate separately.
X coordinate detection
BXH: LOW (Positive electrode on X panel: ON)
BXL: HIGH (Negative electrode on X panel: ON)
BYH: HIGH (Positive electrode on Y panel: OFF)
BYL: LOW (Negative electrode on Y panel: OFF)
A/D channel:
Ch0
Y coordinate detection
BXH: HIGH (Positive electrode on X panel: OFF)
BXL: LOW (Negative electrode on X panel: OFF)
BYH: LOW (Positive electrode on Y panel: ON)
BYL: HIGH (Negative electrode on Y panel: ON)
A/D channel:
Ch1
Selected by mask option.
X panel
Y panel
A/D
conversion
A/D
conversion
Equivalent circuit
Fig. 5.17.3.1 Coordinate detection (X coordinate)
The touch panel is regarded as the equivalent
circuit shown in Figure 5.17.3.1. It outputs the
voltage to the A/D converter according to the
pointed coordinate.
The touch panel controller performs A/D conver-
sion at least 32 times (16 times each for X and Y
coordinates) per one coordinate and stores the
arithmetic mean to the coordinate data register as
the detection result.
Since the touch panel controller controls A/D
conversion during coordinate detection, do not
control the A/D converter with software.
While the RST register is set to "1", coordinate
detection is repeatedly performed as long as the
pen is touching the panel. It can be stopped by
writing "0" to the RST register. In this case, turn off
the clock output from the prescaler to the touch
panel controller and A/D converter.
Deciding pen-up status during coordinate
detection
In pen-down status (the pen is touching the panel),
the A/D conversion result indicates the coordi-
nates on the touch panel. If the result is smaller
than the value at the corner of the panel, it can be
regarded as pen-up status (the pen is not touching
the panel).
In this touch panel controller, a threshold value for
pen-up decision can be set according to the panel
to be used. When the mean value of the A/D
conversion result is smaller than the set value, the
touch panel controller decides it as pen-up status.
The threshold value for pen-up decision can be set
using the PUD register.
Table 5.17.3.1 Threshold value for pen-up decision
PUD3
0
1
PUD2
0
1
0
1
PUD1
0
1
0
1
0
1
0
1
PUD0
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
Pen-up decision
threshold value
4
8
12
16
20
24
28
32
36
40
44
48
52
56
60
64
The result of pen-up/down decision can be read
from the PEN bit (00FFA7HD0). The PEN bit goes
"0" in pen-up status and goes "1" in pen-down status.
During coordinate detection, a pen-up is judged
based on the determined data that is not regarded as
noise. If the input data is regarded as noise at pen-up,
it is not judged as pen-up and the PEN bit maintains
"1" (pen-down status).