Using a unipolar DAC as a bipolar DAC

Thread Starter

Abdel27

Joined Oct 10, 2019
4
Hello,

I'm currently working on a project that requires the use of an MCP475 DAC. Currently, it is being powered from the 3.3V source from on a Raspberry Pi and hence works in the range of 0V to 3.3V.

I need it to work in the range of -3.3V to +3.3V. By reading the spec sheets I found that I can use an Op-Amp circuit to achieve this. I have some experience with electronics but, obviously, not enough. I have attached the circuit diagram and the equations needed to calculate the required resistances.

My understanding is that V_DD = +3.3V. And when V_out = +3.3V, V_o = +3.3V. And again, when V_out = 0, V_o = - 3.3V. This gives you a pair of simultaneous equations which are then solved for the resistances. When I do the maths, I get the following:

R_2 = R_1
R_3 = 0
R_4 = R_4

So I thought maybe this means there is no R_3 and the values of R_2 and R_1 can be arbitrarily set as long as they're equal and then R_4 is also arbitrary. I build this circuit and nothing worked. What am I doing wrong? Please help me!

Thank you!
 

Attachments

Papabravo

Joined Feb 24, 2006
12,685
In order for this circuit to work. you must allow Vin+ to be different from Vout. That is the purpose of the voltage divider formed by R3 and R4
 

Thread Starter

Abdel27

Joined Oct 10, 2019
4
In order for this circuit to work. you must allow Vin+ to be different from Vout. That is the purpose of the voltage divider formed by R3 and R4
So the resistances R_3 = 0 and R_4 = R_4 cannot be correct, right? If so, what are the correct values?
 

Papabravo

Joined Feb 24, 2006
12,685
There is no unique solution. You have a system with more variables than you have equations. However if R3 = R4 then Vout is divided by 2 to create Vin+, and if R1=R2 the gain of the amplifier is 2. It is common for the gain of a non-inverting amplifier to be greater than 1. So what happens if you make all the resistors equal to say 4.75KΩ?
 

crutschow

Joined Mar 14, 2008
23,739
The calculation becomes much simpler for this particular case, if you add an extra resistor as shown below:
You need a gain of two for the DAC signal, which the differential amp below has [R2 = R4 = 2*R3, R3 = R1||R5 (Thevenin equivalent)].
The output needs to be offset by 3.3V which, with a differential gain of 2, is provided by the 1.65V from the voltage divider consisting of R1 and R5.

The LT spice simulation shows the output going from -3.3V to +3.3V for an input of 0V to +3.3V, as desired.

Note that the op amp must be a rail-rail type.

1572409370608.png
 

Thread Starter

Abdel27

Joined Oct 10, 2019
4
The calculation becomes much simpler for this particular case, if you add an extra resistor as shown below:
You need a gain of two for the DAC signal, which the differential amp below has [R2 = R4 = 2*R3, R3 = R1||R5 (Thevenin equivalent)].
The output needs to be offset by 3.3V which, with a differential gain of 2, is provided by the 1.65V from the voltage divider consisting of R1 and R5.

The LT spice simulation shows the output going from -3.3V to +3.3V for an input of 0V to +3.3V, as desired.

Note that the op amp must be a rail-rail type.

View attachment 190165
This is great! Thank you so much!

I just have a couple of quick questions. Will a UA741CP op-amp work? And what does the notation R1 || R5 mean?
 
Top