English
Language : 

PIC18F44J50-I Datasheet, PDF (403/562 Pages) Microchip Technology – 28/44-Pin, Low-Power, High-Performance USB Microcontrollers
PIC18F46J50 FAMILY
26.1.5 INTERRUPTS
The CTMU sets its interrupt flag (PIR3<2>) whenever
the current source is enabled, then disabled. An inter-
rupt is generated only if the corresponding interrupt
enable bit (PIE3<2>) is also set. If edge sequencing is
not enabled (i.e., Edge 1 must occur before Edge 2), it
is necessary to monitor the edge status bits and
determine which edge occurred last and caused the
interrupt.
26.2 CTMU Module Initialization
The following sequence is a general guideline used to
initialize the CTMU module:
1. Select the current source range using the IRNG
bits (CTMUICON<1:0>).
2. Adjust the current source trim using the ITRIM
bits (CTMUICON<7:2>).
3. Configure the edge input sources for Edge 1 and
Edge 2 by setting the EDG1SEL and EDG2SEL
bits (CTMUCONL<3:2 and 6:5>).
4. Configure the input polarities for the edge inputs
using the EDG1POL and EDG2POL bits
(CTMUCONL<4,7>). The default configuration
is for negative edge polarity (high-to-low
transitions).
5. Enable edge sequencing using the EDGSEQEN
bit (CTMUCONH<2>). By default, edge
sequencing is disabled.
6. Select the operating mode (Measurement or
Time Delay) with the TGEN bit
(CTMUCONH<4>). The default mode is Time/
Capacitance Measurement.
7. Discharge the connected circuit by setting the
IDISSEN bit (CTMUCONH<1>); after waiting a
sufficient time for the circuit to discharge, clear
IDISSEN.
8. Disable the module by clearing the CTMUEN bit
(CTMUCONH<7>).
9. Enable the module by setting the CTMUEN bit.
10. Clear the Edge Status bits: EDG2STAT and
EDG1STAT (CTMUCONL<1:0>). Both bits
should be cleared simultaneously, if possible, to
avoid re-enabling the CTMU current source.
11. Enable both edge inputs by setting the EDGEN
bit (CTMUCONH<3>).
Depending on the type of measurement or pulse
generation being performed, one or more additional
modules may also need to be initialized and configured
with the CTMU module:
• Edge Source Generation: In addition to the
external edge input pins, both Timer1 and the
Output Compare/PWM1 module can be used as
edge sources for the CTMU.
• Capacitance or Time Measurement: The CTMU
module uses the A/D Converter to measure the
voltage across a capacitor that is connected to one
of the analog input channels.
• Pulse Generation: When generating system clock
independent output pulses, the CTMU module
uses Comparator 2 and the associated
comparator voltage reference.
26.3 Calibrating the CTMU Module
The CTMU requires calibration for precise measure-
ments of capacitance and time, as well as for accurate
time delay. If the application only requires measurement
of a relative change in capacitance or time, calibration is
usually not necessary. An example of this type of appli-
cation would include a capacitive touch switch, in which
the touch circuit has a baseline capacitance, and the
added capacitance of the human body changes the
overall capacitance of a circuit.
If actual capacitance or time measurement is required,
two hardware calibrations must take place: the current
source needs calibration to set it to a precise current,
and the circuit being measured needs calibration to
measure and/or nullify all other capacitance other than
that to be measured.
26.3.1 CURRENT SOURCE CALIBRATION
The current source on board the CTMU module has a
range of ±62% nominal for each of three current
ranges. Therefore, for precise measurements, it is pos-
sible to measure and adjust this current source by
placing a high-precision resistor, RCAL, onto an unused
analog channel. An example circuit is shown in
Figure 26-2. The current source measurement is
performed using the following steps:
1. Initialize the A/D Converter.
2. Initialize the CTMU.
3. Enable the current source by setting EDG1STAT
(CTMUCONL<0>).
4. Issue a time delay for voltage across RCAL to
stabilize and the ADC sample/hold capacitor to
charge.
5. Perform A/D conversion.
6. Calculate the effective source current using
I = V/ RCAL, where RCAL is a high-precision
resistance and V is measured by performing an
A/D conversion.
 2011 Microchip Technology Inc.
DS39931D-page 403