2.9.3 Temperature Measurement
When triggering a temperature measurement, the AD converter of the ATA8510/15 operates as a temperature sensor in the range of -40°C to +125°C with a resolution of 1K. The temperature is measured on a specific temperature measurement channel with fLO = 422 MHz. The result of the AD converter is provided in the TEMPH and TEMPL hardware registers, then copied to the calib.sramTEMPH/L SRAM variables by the firmware.
In a subsequent step, a temperature value is calculated and stored to the calib.tempMeas SRAM variable. The valid range of tempMeas is 0 to 175. The actual temperature in °C can be calculated based on the following formula:
T = tempMeas - 50......(2)
Equation parameters:
T – Current temperature [°C]
tempMeas – Content of the calib.tempMeas SRAM variable
Address |
Name |
Bit 7 |
Bit 6 |
Bit 5 |
Bit 4 |
Bit 3 |
Bit 2 |
Bit 1 |
Bit 0 |
---|---|---|---|---|---|---|---|---|---|
0x02D9 |
sramTEMPH |
Temperature high byte | |||||||
0x02DA |
sramTEMPL |
Temperature low byte | |||||||
0x02DB |
tempMeas |
8-bit temperature measurement result (valid range 0..175) |
The result of the calculation is used as input for the XTO temperature compensation (RF calibration), as described in RF Calibration.
The “Read SRAM/Register” SPI command can be used to read out the calculated temperature from the calib.tempMeas SRAM variable.
A temperature measurement process can be triggered at the following time points:
- After power-on during system initialization when enabled in eepConfValid.confInitFlags.TempMeas.
Address |
Name |
Bit 7 |
Bit 6 |
Bit 5 |
Bit 4 |
Bit 3 |
Bit 2 |
Bit 1 |
Bit 0 |
---|---|---|---|---|---|---|---|---|---|
0x0008 |
confInitFlags |
AntTune |
TempMeas |
SRC |
FRC | — | — | — | — |
- During the periodic self-check in PollingMode or during a self-check that is started by using the “Calibrate and Check” SPI command if enabled in eepTrxCal.calConf1.EN_TEMP_MEAS.
Address | Name | Bit 7 | Bit 6 | Bit 5 | Bit 4 | Bit 3 | Bit 2 | Bit 1 | Bit 0 |
---|---|---|---|---|---|---|---|---|---|
0x001C | calConf1 | — | EN_TEMP_MEAS | EN_SRCCAL | EN_FRCCAL | — | — | — | EN_REGREFRESH |
- From IDLEMode via the “Calibrate and Check”
SPI command if bit EN_TEMP_MEAS in tuneCheckConfig is set to ‘
1
’, see Calibrate and Check.
Name | Bit 7 | Bit 6 | Bit 5 | Bit 4 | Bit 3 | Bit 2 | Bit 1 | Bit 0 |
---|---|---|---|---|---|---|---|---|
tuneCheckConfig | EN_ANT_TUNE | EN_TEMP_MEAS | EN_SRCCAL | EN_FRCCAL | EN_VCOCAL | — | EN_SELFCHECK | — |
Setting the TEMP_MEAS bit within the eepEventConf.cmdRdyConf command-ready variable to
‘1
’ raises a command-ready (CMD_RDY) event on the PB6 event pin when the
temperature measurement process has finished.
Address | Name | Bit 7 | Bit 6 | Bit 5 | Bit 4 | Bit 3 | Bit 2 | Bit 1 | Bit 0 |
---|---|---|---|---|---|---|---|---|---|
0x0096 | cmdRdyConf | ANT_TUNE | TEMP_MEAS | SRC_CAL | FRC_CAL | VCO_CAL | RF_CAL | SELFCHECK | TX |
The temperature measurement requires additional time, see Timing Characteristics.