I am generating a 0-5 volt sine wave using an arduino with a DAC.

I would like to level shift this signal (DC bias?) by -2.5 volts and have a gain of .8, so that I end up with a line level sine wave.

Thus I am trying to design a single supply op amp with the following equation:

$$V_{\text{o}} = (V_{\text{i}}-2.5) \times 0.8$$

I found this white paper that is supposed to describe a way to do this but I'm having trouble following as I am new to op-amps.

https://www.eecs.umich.edu/courses/eecs452/Labs/circuit4.pdf

Does anyone know of a way to do this with a single op amp or IC?

The frequency range of 20Hz to 20KHz must be preserved.

## Best Answer

You have the following situation:Arduino with DAC generates 0V - +5V sin wave (2.5V +/- 2.5V).

The output should be -2V - +2V sin wave (0V +/- 2V).

POSSIBLE SOLUTIONS:solution #1:Arduino with DAC + C1 + R1 + R2 (all elements are in series).

.

solution #2:Arduino with DAC + opamp buffer + C1 + R1 + R2 (all elements are in series).

.

solution #3: Arduino with DAC + opamp subtractor + C1 + R1 (all elements are in series).A single opamp in a configuration of the subtractor takes care of your equation:

Vo = (Vi-2.5) * 0.8

Look here: http://www.mtcmos.com/subtractor/ . You would like to use the configuration at the end of the article, that is, the left from this picture:

You set:

So you get:

Vo = 0.8 * (Vi - 2.5)

You may also refer to this e-book https://payhip.com/b/5Srt. The subtractor circuit explanation is a bit improved there (the core is the same), but you also find other configurations explained.