Keywords: digital resistor, digital pot, digital potentiometer, digipot, DS1847, DS1848, potentiometers
Related Parts |

APPLICATION NOTE 233

Abstract: The purpose of this application note is to show how the DS1847/48 digital resistor calibration constants can be regenerated. This application note assumes that the reader is familiar with the Programming the Lookup Table section of the DS1847 or DS1848 data sheets. This application note will describe the measurements required, as well as show the calculations needed to regenerate the calibration constants. Last of all, this application note will show an example spreadsheet calculator (a link to it can be found at the end of this application note) that can be used to perform the calculations once several measurements are input.

The purpose of this application note is to show how the DS1847/48 calibration constants can be regenerated. This application note assumes that the reader is familiar with the

- Upper case calibration constants (U, V, W, X, Y, and Z) are the
*integer*values read from the part and may be displayed in decimal or hexadecimal. These need to be multiplied by their corresponding LSB weights to convert them into their*real*values, which can then be used in calculations. - Lower case calibration constants are
*real*numbers. Before*real*numbers can be written into the DS1847/48, they must be converted into*integer*values by dividing the*real*number by its LSB weight.

While it is possible for these measurements to be made "in-circuit", there are several concerns to address. First of all, a 2-wire master is required to put the DS1847/48 into manual mode to first set the resistors to position 00h, then to position FFh (or manual mode can be avoided by programming the LUTs to position 00h followed by FFh). It is important that if in-circuit programming, to make sure that setting the resistors to these extremes do not damage any portion of the circuit. The 2-wire master is also required to read what temperature the DS1847/48 says it is when the resistor measurements are made. Last, and probably the most difficult when making the measurements in-circuit, the minimum and maximum resistance of both resistors need to be measured without the application circuit loading the measurements, giving inaccurate readings. Once these concerns are addressed and the measurements are made, nomenclature for the measured values follow below.

RMINC1, RMAXC1, and read the temperature from the part, C1 (preferably at 25°C), andwhere

RMINC2, RMAXC2, and read the temperature from the part, C2 (preferably 85-95°C).

RMINC1 is the position 0 (min) resistance of the resistor at C1 degrees C,

RMAXC1 is the position FFh (max) resistance of the resistor at C1 degrees C,

RMINC2 is the position 0 (min) resistance of the resistor at C2 degrees C,

RMAXC2 is the position FFh (max) resistance of the resistor at C2 degrees C,

C1 is the temperature read from the part (~25°C) in degrees C,

C2 is the temperature read from the part (~85-95°C) in degrees C.

-050 version | -010 version | |||

Constants | R0 (50kΩ) | R1 (10kΩ) | R0 (10kΩ) | R1 (10kΩ) |

α | 3.78964 | 19.74866 | 8.4117 | 8.4117 |

w | 1.265E-6 | 7.875E-6 | 7.345E-6 | 7.814E-6 |

z | 5.808E-7 | 7.5E-7 | 506.7E-9 | 523.5E-9 |

Using the constants in Table 1 along with the values from the measurements, Equations 1 through 8 yield the remainder of the

Equation 1

Equation 2

Equation 3

Equation 4

Equation 5

Equation 6

Equation 7

Equation 8

Y = y / 10-7 = (dec)(hex) for resistor R0

Y = y / 10-7 = (dec)(hex) for resistor R1

X = x / 2-8 = (dec)(hex) for resistor R0

X = x / 2-8 = (dec)(hex) for resistor R1

V = v / 10-6 = (dec)(hex) for resistor R0

V = v / 10-6 = (dec)(hex) for resistor R1

U = u / 10-8 = (dec)(hex) for resistor R0

U = u / 10-8 = (dec)(hex) for resistor R1

W = w / 10-9 = 1.265E-6 / 10-9 = 1265(dec) = 04F1(hex) for resistor R0

W = w / 10-9 = 7.875E-6 / 10-9 = 7875(dec) = 1EC3(hex) for resistor R1

Z = z / 10-10 = 5.808E-7 / 10-10 = 5808(dec) = 16B0(hex) for resistor R0

Z = z / 10-10 = 7.5E-7 / 10-10 = 7500(dec) = 1D4C(hex) for resistor R1

Once U, V, W, X, Y, and Z are calculated for each resistor (in hex), the values can be written into the corresponding locations of the corresponding LUTs in the location that the original factory calibration constants were originally (stated in the data sheet). Resistor 0 calibration constants are stored in Table 1 and Resistor 1 constants are stored in Table 2. For the DS1848, back-ups of both sets of calibration constants are stored in Table 0. Otherwise, one may wish to keep the calibration constants in real form so they can be used in the customer's calculations to program the entire LUTs.

Questions/comments/suggestions concerning this application note can be sent to:

Link to the spreadsheet used in this example:

http://files.dalsemi.com/system_extension/AN233/DS1847 Calibration Constant Calculator.xls