The ADC can raise the WCOMP flag in the Interrupt and Flag register
(ADCn.INTFLAG) and request an interrupt (WCOMP) when the result of a conversion is above
and/or below certain thresholds. The available modes are:
- The result is under a threshold
- The result is over a threshold
- The result is inside a window (above
a lower threshold, but below the upper one)
- The result is outside a window
(either under the lower or above the upper threshold)
The thresholds are defined by writing to the Window Comparator Threshold
registers (ADCn.WINLT and ADCn.WINHT). Writing to the Window Comparator mode bit field
(WINCM) in the Control E register (ADCn.CTRLE) selects the conditions when the flag is
raised and/or the interrupt is requested.
Assuming the ADC is already configured to run, follow these steps to use the
Window Comparator mode:
- 1.Choose which
Window Comparator to use (see the WINCM description in
ADCn.CTRLE), and set the required threshold(s) by writing to
ADCn.WINLT and/or ADCn.WINHT.
- 2.Optional: enable the interrupt
request by writing a '1' to the Window Comparator Interrupt Enable bit (WCOMP) in the
Interrupt Control register (ADCn.INTCTRL).
- 3.Enable the Window Comparator and
select a mode by writing a non-zero value to the WINCM bit field in ADCn.CTRLE.
When accumulating
multiple samples, the comparison between the result and the threshold
will happen after the last sample was acquired. Consequently, the flag
is raised only once, after taking the last sample of the
accumulation.