The analog comparator, Attiny15l – Rainbow Electronics ATtiny15L User Manual
Page 39
39
ATtiny15L
1187E–AVR–06/02
The Analog
Comparator
The Analog Comparator compares the input values on the positive pin PB0 (AIN0) and
negative pin PB1 (AIN1). When the voltage on the positive pin PB0 (AIN0) is higher than
the voltage on the negative pin PB1 (AIN1), the Analog Comparator Output (ACO) is set
(one). The comparator’s output can trigger a separate interrupt, exclusive to the Analog
Comparator. The user can select interrupt triggering on comparator output rise, fall or
toggle. A block diagram of the Comparator and its surrounding logic is shown in Figure
24.
Figure 24. Analog Comparator Block Diagram
The Analog Comparator
Control and Status Register –
ACSR
• Bit 7 – ACD: Analog Comparator Disable
When this bit is set (one), the power to the Analog Comparator is switched off. This bit
can be set at any time to turn off the Analog Comparator. This will reduce power con-
sumption in Active and Idle mode. When changing the ACD-bit, the Analog Comparator
Interrupt must be disabled by clearing the ACIE bit in ACSR. Otherwise an interrupt can
occur when the bit is changed.
• Bit 6 – ACBG: Analog Comparator Bandgap Select
When this bit is set, a fixed bandgap voltage of 1.22 ± 0.05V replaces the normal input
to the positive pin (AIN0) of the comparator. When this bit is cleared, the normal input
pin PB0 is applied to the positive pin of the comparator.
• Bit 5 – ACO: Analog Comparator Output
ACO is directly connected to the comparator output.
• Bit 4 – ACI: Analog Comparator Interrupt Flag
This bit is set (one) when a comparator output event triggers the interrupt mode defined
by ACI1 and ACI0. The Analog Comparator Interrupt routine is executed if the ACIE bit
is set (one) and the I-bit in SREG is set (one). ACI is cleared by hardware when execut-
ing the corresponding interrupt handling vector. Alternatively, ACI is cleared by writing a
logical “1” to the flag.
Bit
7
6
5
4
3
2
1
0
$08
ACD
ACBG
ACO
ACI
ACIE
–
ACIS1
ACIS0
ACSR
Read/Write
R/W
R/W
R
R/W
R/W
R
R/W
R/W
Initial Value
0
0
X
0
0
0
0
0