Datasheet
204
7728G–AVR–06/10
ATtiny87/ATtiny167
The following code example allows to read Signature Row data:
.equ TS_GAIN = 0x0007
.equ TS_OFFSET = 0x0005
LDI R30,LOW(TS_GAIN)
LDI R31,HIGH (TS_GAIN)
RCALL Read_signature_row
MOV R17,R16 ; Save R16 result
LDI R30,LOW(TS_OFFSET)
LDI R31,HIGH (TS_OFFSET)
RCALL Read_signature_row
; R16 holds TS_OFFSET and R17 holds TS_GAIN
Read_signature_row:
IN R16,SPMCSR ; Wait for SPMEN ready
SBRC R16,SPMEN ; Exit loop here when SPMCSR is free
RJMP Read_signature_row
LDI R16,((1<<SIGRD)|(1<<SPMEN)) ; We need to set SIGRD and SPMEN
together
OUT SPMCSR,R16 ; and execute the LPM within 3 cycles
LPM R16,Z
RET
17.10 Internal Voltage Reference Output
The internal voltage reference is output on XREF pin as described in Table 17-3 if the ADC is
turned on (See “Voltage Reference Enable Signals and Start-up Time” on page 53.). Addition
of an external filter capacitor (5 - 10 nF) on XREF pin may be necessary. XREF current load
must be from 1 µA to 100 µA with VCC from 2.7V to 5.5V for XREF = 1.1V and with VCC from
4.5V to 5.5V for XREF = 2.56V.
XREF pin can be coupled to an analog input of the ADC (See ”Pin Configuration” on page 5.).
Notes: 1. See ”Bit 1 – XREFEN: Internal Voltage Reference Output Enable” on page 210.
2. See ”Bit 7:6 – REFS1:REFS0: Voltage Reference Selection Bits” on page 205.
3. In these configurations, the pin pull-up must be turned off and the pin digital output must be
set in Hi-Z.
4. Vcc in range 4.5 - 5.5V.
Table 17-3. Internal Voltage Reference Output
XREFEN
(1)
REFS1
(2)
REFS0
(2)
Voltage Reference Output (I
load
≤ 100 µA)
0xx
Hi-Z, the pin can be used as AREF input or other alternate
functions.
1
(1)
0 1 XREF = 1.1V
(3)
1
(1)
1 1 XREF = 2.56V
(3)(4)