Datasheet

PIC18F97J94 FAMILY
DS30575A-page 512 2012 Microchip Technology Inc.
26.2 CTMU Operation
The CTMU works by using a fixed current source to
charge a circuit. The type of circuit depends on the type
of measurement being made.
In the case of charge measurement, the current is fixed
and the amount of time the current is applied to the cir-
cuit is fixed. The amount of voltage read by the A/D
becomes a measurement of the circuit’s capacitance.
In the case of time measurement, the current, as well
as the capacitance of the circuit, is fixed. In this case,
the voltage read by the A/D is representative of the
amount of time elapsed from the time the current
source starts and stops charging the circuit.
If the CTMU is being used as a time delay, both capaci-
tance and current source are fixed, as well as the voltage
supplied to the comparator circuit. The delay of a signal
is determined by the amount of time it takes the voltage
to charge to the comparator threshold voltage.
26.2.1 THEORY OF OPERATION
The operation of the CTMU is based on the equation
for charge:
More simply, the amount of charge measured in
coulombs in a circuit is defined as current in amperes
(I), multiplied by the amount of time in seconds that the
current flows (t). Charge is also defined as the capaci-
tance in farads (C), multiplied by the voltage of the
circuit (V). It follows that:
The CTMU module provides a constant, known current
source. The A/D Converter is used to measure (V) in
the equation, leaving two unknowns: capacitance (C)
and time (t). The above equation can be used to calcu-
late capacitance or time, by either the relationship
using the known fixed capacitance of the circuit:
or by:
using a fixed time that the current source is applied to
the circuit.
26.2.2 CURRENT SOURCE
At the heart of the CTMU is a precision current source,
designed to provide a constant reference for measure-
ments. The level of current is user-selectable across
three ranges, or a total of two orders of magnitude, with
the ability to trim the output in ±2% increments
(nominal). The current range is selected by the
IRNG<1:0> bits (CTMUCON1<1:0>), with a value of
01’ representing the lowest range.
Current trim is provided by the ITRIM<5:0> bits
(CTMUCON1<7:2>). These six bits allow trimming of
the current source, in steps of approximately 2% per
step. Half of the range adjusts the current source posi-
tively and the other half reduces the current source. A
value of ‘000000’ is the neutral position (no change). A
value of ‘100001’ is the maximum negative adjustment
(approximately -62%) and ‘011111’ is the maximum
positive adjustment (approximately +62%).
26.2.3 EDGE SELECTION AND CONTROL
CTMU measurements are controlled by edge events
occurring on the module’s two input channels. Each chan-
nel, referred to as Edge 1 and Edge 2, can be configured
to receive input pulses from one of the edge input pins
(CTED1 and CTED2) or CCPx Special Event Triggers
(CCP1 and CCP2). The input channels are level-sensitive,
responding to the instantaneous level on the channel
rather than a transition between levels. The inputs are
selected using the EDG1SELx (CTMUCON2<5:2>) and
EDG2SELx (CTMUCON3<5:2>) bit pairs.
In addition to source, each channel can be config-
ured for event polarity using the EDGE2POL
(CTMUCON2<6>) and EDGE1POL (CTMUCON3<6>
bits. The input channels can also be filtered for an edge
event sequence (Edge 1 occurring before Edge 2) by
setting the EDGSEQEN bit (CTMUCON<2>).
26.2.4 EDGE STATUS
The CTMUCON3 register also contains two Edge
Status bits: EDG2STAT and EDG1STAT
(CTMUCON3<1:0>). Their primary function is to show
if an edge response has occurred on the corresponding
channel. The CTMU automatically sets a particular bit
when an edge response is detected on its channel. The
level-sensitive nature of the input channels also means
that the status bits become set immediately if the
channels configuration is changed and matches the
channel’s current state.
The module uses the Edge Status bits to control the
current source output to external analog modules (such
as the A/D Converter). Current is only supplied to exter-
nal modules when only one (not both) of the status bits
is set. Current is shut off when both bits are either set
or cleared. This allows the CTMU to measure current
only during the interval between edges. After both
status bits are set, it is necessary to clear them before
another measurement is taken. Both bits should be
cleared simultaneously, if possible, to avoid re-enabling
the CTMU current source.
In addition to being set by the CTMU hardware, the
Edge Status bits can also be set by software. This per-
mits a user application to manually enable or disable
the current source. Setting either (but not both) of the
bits enables the current source. Setting or clearing both
bits at once disables the source.
I = C •
dV
dT
I • t = C • V
t = (C • V)/I
C = (I • t)/V