Datasheet
EVAL-AD5933EB Preliminary Technical Data
Rev. PrC | Page 20 of 32
The gain factor is then given by
GAIN FACTOR CALCULATION
MagnitudeMagnitude
Impedance
Code
Admittance
FactorGain
⎟
⎟
⎠
⎞
⎜
⎜
⎝
⎛
=
⎟
⎟
⎠
⎞
⎜
⎜
⎝
⎛
=
⎟
⎠
⎞
⎜
⎝
⎛
=
k100
1
1
The code in the Evaluation Board Source Code Extract section
for the impedance sweep is based on a single-point gain factor
calculation, which is determined at the midpoint sweep frequency
with a known impedance connected between VOUT and VIN.
The gain factor for this example is calculated by exciting the
calibration impedance using a 2 V p-p sinusoid with a frequency
of 30.750 kHz, a PGA setting of ×1, a 100 kΩ resistor connected
between VOUT and VIN, and a feedback resistor of 100 kΩ.
The magnitude of the real and imaginary components at the
calibration frequency is given by the formula:
Refer to the AD5933 data sheet for more details.
TEMPERATURE MEASUREMENT
The temperature sensor data is stored in a 14-bit, twos
complement format. For the conversion formula and more
details on the temperature sensor, see the
AD5933 data sheet.
22
IRMagnitude
+=
where R is the real component, and I is the imaginary
component of the calibration code.
Private Sub MeasureTemperature()
' The Digital temperature Result is stored over two registers as a 14 bit twos complement number.
' 92H <D15-D8> and 93H<D7 to D0>.
Dim TemperatureUpper As Long.
Dim TemperatureLower As Long
'Write xH90 to the control register to take temperature reading.
WritetToPart &H80, &H90
msDelay 5 'nominal delay
ReadbackStatusRegister = PortRead(&HD, &H8F)
ReadbackStatusRegister = ReadbackStatusRegister And &H1
'if a valid temperature conversion is complete, ignore this.
If ReadbackStatusRegister <> 1 Then
'loop to wait for temperature measurement to complete.
Do
ReadbackStatusRegister = PortRead(&HD, &H8F)
ReadbackStatusRegister = ReadbackStatusRegister And &H1
Loop Until (ReadbackStatusRegister = 1)
Form1.Label10.Caption = "Current Device Temperature"
MsgBox "Device Temperature Measurement Complete"
End If
' The Digital temperature Result is stored over two registers as a 14 bit twos complement number.
' 92H <D15-D8> and 93H<D7 to D0>.
TemperatureUpper = PortRead(&HD, &H92)
TemperatureLower = PortRead(&HD, &H93)
Temperature = TemperatureLower + (TemperatureUpper * 256)