User manual
MPLAB Starter Kit for PIC24F User’s Guide
DS51725A-page 10 © 2008 Microchip Technology Inc.
2.1.2 Touch Interface (CMTU)
To control most of the demo application’s features, the PIC24F microcontroller uses an
on-chip Charge Time Measurement Unit (CTMU) module to implement a capacitive
touch-sensitive touch pad on the starter kit board. The CTMU allows the microcontroller
to directly sense the touch of a fingertip on the touch pad and interpret this as a control
input.
The touch pad (Figure 2-2) is used to select all menu options and input user choices
for all options. At each of the menu screens, the up/down arrows (1 and 3) and left/right
arrows (2 and 4) serve to highlight a menu option displayed on the OLED, and the cen-
ter key (5) is used to select the option.
FIGURE 2-2: CAPACITIVE TOUCH PAD
2.1.2.1 TOUCH PAD CALIBRATION
By default, the application is preprogrammed with a CTMU calibration that responds
appropriately to the touch of an average person’s finger tip. However, there are many
factors (ambient temperature and humidity, skin moisture, etc.) that may affect the
touch pad’s performance. To accommodate these differences, the demo application
includes a calibration routine to adjust the touch pad’s response.
To run the calibration, select “Utilities” from the main menu, then “Calibrate” from the
“Utilities” menu. A series of prompts appears, asking the user to touch and release
each individual pad in turn. When the sequence is completed, the “Calibration com-
plete!” message appears. The application automatically returns to the main menu
afterwards.
Calibration is reset to the default application value on power-up.
UP
DOWN
1
2
3
45
LEFT
RIGHT
CENTER
Note: It is important to respond to each prompt as quickly as possible, to maintain
contact with a pad until instructed to release it, and to be certain that none
of the pads are being touched during the “release” intervals. Otherwise, one
or more of the individual pads may be incorrectly calibrated, and the
application may act erratically or start responding to “phantom” inputs.