The Analog On Demand feature allows the ADC and the AC analog peripherals to
automatically enable the OPAMPx only when it is needed, thereby allowing a reduction in
power consumption. It also allows the ADC analog block to be powered-off when a
conversion is completed.
Note: The Analog
On Demand is independent from the On Demand Clock request feature, which is used by
peripherals to automatically request a source clock which was previously
stopped.
OPAMP case
The Analog On Demand feature of the OPAMPx is activated by writing a '1' to
the OPAMP.OPAMPCTRLx.ONDEMAND bit.
In that case, the OPAMPx is automatically enabled when the ADC or the AC
requests it (as an input) and is automatically disabled when no more requests are coming
from these peripherals.
CAUTION: The Analog On Demand feature is not
fully supported on cascaded OPAMPs. If several OPAMPs are cascaded together, only
the OPAMPx that is connected to the ADC or AC can be enabled/disabled automatically.
Upstream OPAMPs will not benefit from this feature.
In Standby Sleep mode, the Analog On
Demand feature is still supported if OPAMP.OPAMPCTRLx.RUNSTDBY=1.
If OPAMP.OPAMPCTRLx.RUNSTDBY=0, the OPAMPx will be
disabled entering this Sleep mode.
ADC case
For the ADC peripheral, Analog On Demand feature is enabled by writing the
ADC.CTRLA.ONDEMAND bit to '1'.
When this feature is activated, the analog block is powered-off when the
conversion is complete.
In Sleep mode, when an ADC start request is detected, the analog block is
powered-on again and the ADC starts a new conversion after the start-up time delay.
Note: If the OPAMPx is set to accept Analog
On Demand requests but the ADC is not, the ADC will send continuous requests to the
OPAMPx keeping it enabled until the ADC is switching on another input.
AC case
For the AC peripheral,there is no explicit ONDEMAND bit.
Analog On Demand requests are issued either when the AC is used in
Single-Shot mode, or when comparisons are triggered by events from the Event System.