Versatile Programmable Amplifiers Use Digital Potentiometers with Nonvolatile Memory

In concept, an op amp and a mechanical potentiometer can easily be combined to form an adjustable-gain amplifier, useful in many applications where electronic adjustments are needed. However, this combination is often unfeasible because of the potentiometer's limited resolution, poor temperature coefficient, high resistance drift over time, and the difficulties of remote adjustment. Now, the AD523x family of digital potentiometers with nonvolatile memory1 can replace their mechanical counterparts and make these circuits practical (Figure 1).

Figure 1
Figure 1. Programmable amplifier/attenuator.

The features offered by the AD523x digital potentiometers are extensive, but controlling them is relatively simple. A menu of sixteen instructions provides functions such as setting the "wiper" position, storing the wiper setting, reading back the wiper position, increment/ decrement-by-one, and increment/decrement-by-6 dB (log taper adjustment). A write-protect pin provides memory protection, and additional nonvolatile memory is available for storing user information. Members of the AD523x family are available with one to four channels, 64-to-1024-position resolution and 10- to 250-kilohm terminal resistance.

For operation, the user must furnish a power supply and digital controls (via 3-wire SPI serial communications) to realize the flexibility and reliability of these digital potentiometers. The parts will operate with a single supply, but dual supplies are required for ac or bipolar operation. A microcontroller or DSP is usually available to generate the control signals, but the nonvolatile memory enables users to permanently program the devices in the factory without ever having to readjust the settings in the field. This allows the devices to be controlled with personal computers2, using programs such as Visual Basic, C, or LabView. It is unnecessary, therefore, to include a controller in these applications unless dynamic adjustment is needed. Evaluation boards for the AD5232 and AD5235 are available, making it easy to set up and perform preliminary evaluations with a personal computer.

Basic programmable amplifier

In the circuit of Figure 1, the gain (negative) is simply the ratio of the two terminal resistances, and the output voltage is:

Equation 1
Equation 2


RAB = nominal end-to-end terminal resistance
RWB = terminal resistance, W to B,    
   RWB = RAB × D/2N
RWA = terminal resistance, W to A,
        RWA = RAB - RWB = RAB × (1 - D/2N)
D = Base-10 equivalent of the binary word
N = number of bits

The gain expression implies a balanced quasi-logarithmic characteristic. This inverting configuration is useful because it makes available a wide range of gains, from very small to very large, with unity near half-scale (MSB). Because the resistors are fabricated on a single monolithic chip, resistance ratios are inherently matched, and the circuit can yield a temperature coefficient as low as 50 ppm/°C if using AD5235. The grounded + input minimizes common-mode input errors. This circuit is a basic building block that suits many applications, especially where small signals are present and where high gain is required.

Bipolar programmable-gain amplifier with linear step adjustment

In the basic circuit of Figure 1, the output is always inverted with respect to the input, regardless of whether the circuit is providing gain or attenuation. The change in gain as the potentiometer is incremented is nonlinear. While this is useful in some cases, other applications may call for bipolar gain and/or a simple linear relationship. For example, motors need to rotate freely in both forward and reverse directions, thermal electric coolers heat or cool lasers depending upon the direction of current flow, and LCD panels require bipolar voltages for the contrast and brightness controls. In the most general case, to create a bipolar drive with arbitrary end points and linear step adjustment, a dual digital potentiometer, such as the AD5232, can be applied as shown in Figure 2. The output, Vo, can now be programmed linearly to amplify voltages between +Vi and –K × Vi, where K is the ratio of the two terminal resistances of U1 (Eq. 1). A2 provides buffered amplification for VW2, minimizing the influence of the wiper resistance.

Figure 2
Figure 2. Bipolar programmable-gain amplifier with linear step adjustment

The transfer function in Figure 2 is:

Equation 3

In the simpler (and much more usual) case, where K = 1, a single digital pot, such as AD5231, is used in location U2, and U1 is replaced by a matched pair of resistors to apply Vi and –Vi at the end terminals of the digital pot. The relationship will be

Equation 4

Table 1 shows the result of adjusting D, with A2 configured: as a unity-gain follower (R1=∞, R2=0), with a gain of 2 (R1 = R2), and with a gain of 10 (R2 = 9 × R1). The result is a bipolar amplifier with linearly programmable gain and 256-step resolution.

Table 1. Circuit gain versus D.
D (step)
R1= ∞, R2=0
R2=9 × R1
0 -1 -2 -10
64 -0.5 -1 -5
128 0 0 0
192 +0.5 +1 +5
255 +0.992 +1.984 +9.92

As implied in Figure 2, R1/R2 and/or R3/R4 can be optionally replaced by digital potentiometers—if tight temperature-coefficient matching and very high gains are desired. If discrete resistors are used, resistor matching is imperative.

The wiper resistance of the digital potentiometer is the on-resistance of the internal solid-state switches, typically 50 to 100 ohms. This is relatively small when compared with the nominal resistance RAB, but the wiper resistance approximately doubles over the operating temperature range and can become the major source of error when the device is programmed to operate at low values. The wiper terminal of the potentiometer should always be connected to a high-impedance node, such as the input terminal of an op amp, as shown in the above circuits. The OP1177 family, the 4th generation of the industry-standard OP07, was chosen for its low offset and low bias-current characteristics. This minimizes the effects of wiper resistance on the voltage divider ratio at the tap point.

The circuit in Figure 2 can also serve as a programmable gain amplifier (PGA) for A/D converters. A/D converters often need to handle dynamic input ranges from a few millivolts to several volts. The AD7723 16-bit, 1.2-MSPS sigma-delta ADC, for example, has an input voltage limit of ±2 V when using the internal reference. A PGA can be applied as a front-end signal-conditioning device that scales millivolt-level signals to the input range of the converter.

If the input voltage range is higher than ±2.7 V, discrete resistors are needed in series with U1 due to the 5.5 V maximum voltage limitation of the AD523x potentiometers. Figure 3 shows the use of series resistors in a high-voltage PGA application of the configuration of Figure 2. As noted earlier, resistor matching is essential.

Figure 3
Figure 3. PGA handles high input voltage.

By configuring the AD523x nonvolatile memory digital potentiometers and op amps shown in this article, the user can easily design a versatile amplifier with high-resolution programmability, bipolar controllability, and linear/log step adjustment capability.

In addition, users may observe that digital potentiometers may replace not only some of their mechanical counterparts, but also non-precision D/A converters in some cost sensitive applications.


Sergio Franco, Design with Operational Amplifiers and Analog Integrated Circuits, second edition. McGraw Hill, 1998.

The engineering staff of Analog Devices, Inc., Daniel H. Sheingold, ed., Analog-Digital Conversion Handbook, third edition. Englewood Cliffs, NJ: Prentice-Hall, 1986.

Digital Potentiometer Selection Guide


  1. The terms nonvolatile memory and E2MEM are used interchangeably
  2. Source code, in Visual Basic, is available to run on personal computers. Please contact the author for details.