Design Resources

Device Drivers

Software such as C code and/or FPGA code, used to communicate with component's digital interface.

Digital Potentiometer Linux Driver

Features & Benefits

  • Digital Pot and Op Amp Create Variable Gain Noninverting Amplifier
  • Low Cost
  • High Voltage
  • Optmized for Low Distortion and Low Noise

Circuit Function & Benefits

This circuit provides a low cost, high voltage, variable gain noninverting amplifier using the AD5292 digital potentiometer in conjunction with the OP184 operational amplifier.

The circuit offers 1024 different gains, controllable through an SPI-compatible serial digital interface. The ±1% resistor tolerance performance of the AD5292 provides low gain error over the full resistor range, as shown in Figure 2.

The circuit supports rail-to-rail inputs and outputs for both single-supply operation at +30 V and dual-supply operation at ±15 V, and is capable of delivering up to ±6.5 mA output current.

In addition, the AD5292 has an internal 20-times programmable memory that allows a customized gain setting at power-up.

The circuit provides accuracy, low noise, and low THD and is well suited for signal instrumentation conditioning.

Figure 1. Variable Gain NonInverting Amplifier Simplified Schematic (Decoupling and All Connections Not Shown)

Circuit Description

The circuit employs the AD5292 digital potentiometer in conjunction with the OP184 operational amplifier, providing a low cost, variable gain noninverting amplifier.

The input signal, VIN, is amplified by the OP184. The op amp offers low noise, high slew rate, and rail-to-rail inputs and outputs.

The maximum circuit gain is defined in Equation 1.


The maximum current through the AD5292 is ±3 mA, which limits the maximum input voltage, VIN, based on the circuit gain as described in Equation 2.


When the input signal connected to VIN is higher than the theoretical maximum value from Equation 2, R2 should be increased, and the new gain can be recalculated using Equation 1.

The ±1% internal resistor tolerance of the AD5292 ensures a low gain error, as shown in Figure 2.

The circuit gain equation is


where D is the code loaded in the digital potentiometer.

Figure 2. Gain and Gain Error vs. Decimal Code



Figure 3. Gain and Phase vs. Frequency for AC Input Signal

When the circuit input is an ac signal, the parasitic capacitances of the digital potentiometer can cause undesirable oscillation in the output. This can be avoided, however, by connecting a small capacitor, C1, between the inverter input and its output. A value of 10 pF was used for the gain and phase plots shown in Figure 3.

A simple modification of the circuit provides a logarithmic gain function, as shown in Figure 4. In this case, the digital potentiometer is configured in the ratiometric mode.

Figure 4. Logarithmic Gain Circuit 

Figure 5. Logarithmic Gain Function

The circuit gain is defined in Equation 4:


where D is the code loaded in the digital potentiometer. A gain plot vs. code is shown in Figure 5.

The AD5292 has a 20-times programmable memory, which allows presetting the output voltage in a specific value at power-up.

Excellent layout, grounding, and decoupling techniques must be utilized in order to achieve the desired performance from the circuits discussed in this note (see Tutorial MT-031, Grounding Data Converters and Solving the Mystery of AGND and DGND and Tutorial MT-101, Decoupling Techniques). As a minimum, a 4-layer PCB should be used with one ground plane layer, one power plane layer, and two signal layers.

Common Variations

The AD5291 (8 bits with 20-times programmable power-up memory) and the AD5293 (10 bits with no power-up memory) are both ±1% tolerance digital potentiometers that are suitable for this application.

Sample Products




Available Product
Models to Sample

OP184 Single-Supply Rail-to-Rail Input/Output Operational Amplifier

Contact ADI

AD5291 Single Channel, 256-Position, 1% R-Tol, Digital Potentiometer with 20-Times Programmable Memory




AD5292 Single Channel, 1024-Position, 1% R-Tol, Digital Potentiometer with 20-Times Programmable Memory




AD5293 Single Channel, 1024-Position, 1% R-Tolerance Digital Potentiometer




Buy functionality exists in desktop site