This training demonstrates how to perform ADC conversion with the purpose of
power optimization. The ADC result is expected to be printed through USART to a
terminal. With the goal of reducing the current consumption, various techniques have
been implemented to reduce the current consumption through the last four assignments
such as:
- Configure the RTC overflow
interrupt to start the ADC conversion and keep the CPU in Standby mode between
conversions
- Disable digital input buffer on
all I/O pins to avoid power supply current and configure the USART TX pin as
input during no ADC data transmission period to avoid unnecessary current
flow
- The ADC WCMP mode is used,
instead of the ADC RESRDY interrupt, to make sure that only interested ADC data
is sent to the terminal through USART
- Replace the RTC overflow
interrupt routine by Event System to trigger the ADC conversion
In this training, the average current consumption improvement is significant by
being reduced from 2.8 mA in
assignment 1 and down to 1.13 μA in
assignment
5. The peak current consumption has also been reduced from 2.8 mA to 170 μA or
690 μA depending on what scenario it belongs to. As shown, the current consumption gets
reduced significantly when Standby Sleep mode is implemented and when optimization on
I/O pins is performed. The ADC window compare mode further reduces the current
consumption when the scenario with uninterested ADC result occurs. The last assignment
with event system implementation reduces the current consumption, but not that
significant. This is due to that the device still needs to wake up from the Sleep mode.
It has been shown that the current consumption could be reduced significantly for an
application with event system implementation when the device does not need to wake up
from sleep.
With Atmel | START, it is easy to configure or reconfigure a
project by adding/removing module(s) and configuring/reconfiguring them with
automatically generated drivers.
With Atmel Studio, it is easy to edit, build, and run an application.
With the embedded Data Visualizer in Atmel Studio, it is very easy to check
serial data printed to the USART terminal. The power analysis feature in Data Visualizer
is so convenient that it can be used to check power consumption during the application
optimization proceed.