Si1000/1/2/3/4/5
Diff. MUX
Diff. Amp.
Input MUX
aoffs [4:0]
soffs [3:0]
adcsel [2:0]
adcgain [1:0]
GPIO0
GPIO1
GPIO2
8-bit ADC
Temperature Sensor
Vin
adc [7:0]
adcsel [2:0]
Vref
0 -1020mV / 0-255
Ref MUX
VDD / 3
VDD / 2
VBG (1.2V)
adcref [1:0]
Figure 23.21. General Purpose ADC Architecture
Add R/W
Function/
Description
D7
D6
D5
D4
D3
D2
D1
D0
POR
Def.
0F
10
11
R/W
R/W
R
ADC Configuration adcstart/adcdone adcsel[2] adcsel[1] adcsel[0] adcref[1]
adcref[0] adcgain[1] adcgain[0]
00h
00h
—
Sensor Offset
ADC Value
soffs[3]
adc[3]
soffs[2]
adc[2]
soffs[1]
adc[1]
soffs[0]
adc[0]
adc[7]
adc[6]
adc[5]
adc[4]
23.8.4. Temperature Sensor
The EZRadioPRO peripheral includes an integrated on-chip analog temperature sensor independent of
the temperature sensor associated with ADC0. The temperature sensor will be automatically enabled
when the temperature sensor is selected as the input of the EZRadioPRO ADC or when the analog temp
voltage is selected on the analog test bus. The temperature sensor value may be digitized using the EZRa-
dioPRO general-purpose ADC and read out through "Register 10h. ADC Sensor Amplifier Offset." The
range of the temperature sensor is configurable. Table 23.7 lists the settings for the different temperature
ranges and performance.
To use the Temp Sensor:
1. Set the input for ADC to the temperature sensor, "Register 0Fh. ADC Configuration"—adcsel[2:0] = 000
2. Set the reference for ADC, "Register 0Fh. ADC Configuration"—adcref[1:0] = 00
3. Set the temperature range for ADC, "Register 12h. Temperature Sensor Calibration"—tsrange[1:0]
4. Set entsoffs = 1, "Register 12h. Temperature Sensor Calibration"
5. Trigger ADC reading, "Register 0Fh. ADC Configuration"—adcstart = 1
6. Read temperature value—Read contents of "Register 11h. ADC Value"
272
Rev. 1.0