WM8945
Production Data
In a typical application, it is anticipated that the AUXADC Interrupt or GPIO flag would be used to
control the AUXADC readback – the host processor should read the AUXADC Data Register in
response to the AUXADC event. In Automatic AUXADC mode, the processor should complete this
action before the next measurement occurs, in order to avoid losing any AUXADC samples. In
Manual conversion mode, the interrupt signal provides confirmation that the commanded
measurement has been completed.
The control fields associated with AUXADC readback are defined in Table 58.
REGISTER
ADDRESS
BIT
LABEL
DEFAULT
DESCRIPTION
R60 (3Ch)
AUX_DATA_
SRC [1:0]
AUXADC Data Source
00 = No measurement
01 = AUX1
13:12
00
Aux ADC Data
10 = AUX2
11 = SPKVDD
AUX_DATA
[11:0]
AUXADC data
11:0
000h
(12 bit unsigned data)
Table 58 AUXADC Readback
TOUCH PANEL CONTROLLER
The WM8945 incorporates a Touch Panel controller interface, for use with standard 4-wire Touch
Panels. The controller supports X, Y co-ordinate measurement, Pen Down detection and Touch
Pressure (Z-axis) measurement.
The Touch Panel controller provides high resolution ٛ digitiser measurements, using the same 12-bit
AUXADC as described earlier (see “Auxiliary ADC”). Touch Panel conversion requests are
interleaved with AUXADC measurement requests.
Touch Panel Interrupts can be generated on completion of a set of measurements, or on Pen Down
detection. Read access to the Touch Panel measurement data is controlled in order to ensure the
host always reads a complete set of data, and does not read mixed data that relates to separate
measurement events.
An overview of Touch Panel operating principles is provided at the end of this section.
TOUCH PANEL CONTROL
The Touch Panel is enabled by setting the TCH_ENA register bit.
The Touch Panel measurements can be initiated manually or automatically. For automatic operation,
the TCH_RATE register is set according to the required conversion rate, and measurements are
enabled by setting the TCH_CVT_ENA bit. For manual operation, the TCH_RATE register is set to
00h, and a set of measurements is initiated by setting the TCH_CVT_ENA bit. In manual mode, the
TCH_CVT_ENA bit is reset by the WM8945 after each conversion request.
The Touch Panel ‘Pen Down’ detection can be used to control measurements in automatic mode.
When TCH_PDONLY is set, then automatic conversions will only be scheduled when ‘Pen Down’ is
detected. Note that manual conversion commands are not affected by TCH_PDONLY.
For each Touch Panel measurement event (in Manual or Automatic modes), the WM8945 performs a
set of measurements encompassing all enabled input sources; the X-axis, Y-axis and Z-axis
measurements are enabled using the TCH_X_ENA, TCH_Y_ENA and TCH_Z_ENA register bits
respectively. To allow settling time between consecutive measurements, a programmable delay is
applied between the X, Y and Z-axis measurements; this is set using the TCH_DELAY field.
Pressure measurement uses a constant current source to measure the resistance between the top
and bottom sheets of the touch panel. The current is selectable using TCH_ISEL, to suit different
types of touch panel.
Pen Down detection sensitivity can be controlled using TCH_RPU. Decreasing the resistance makes
the touch panel less sensitive; increasing the resistance makes the touch panel more sensitive.
The control fields associated with initiating Touch Panel measurements are defined in Table 59.
PD, May 2011, Rev 4.1
w
86