2
\$\begingroup\$

I am using a micro controller (TI CC3220 - http://www.ti.com/lit/ds/symlink/cc3220.pdf) which uses 3.3VDC for its operation and has an ADC input range of 1.4VDC.

Questions

  • In order to use the ADC input for reading values from a variable resistor, can I just use a simple resistor divider to step down the voltage from 3.3VDC to 1.4VDC?
  • How do I find the appropriate resistor values R1 and R2 for the divider ? I have tried 47K & 22K and they seems to work fine, but not sure about their long term impact.

Note : I do have constraints on the component size and cost, hence would request the cheapest feasible option here.

Schematic

schematic

simulate this circuit – Schematic created using CircuitLab

\$\endgroup\$
7
  • \$\begingroup\$ The cheaper solution is avoid a pot. Since resistors are almost free. \$\endgroup\$ Jun 7, 2018 at 5:28
  • \$\begingroup\$ How do I calculate the resistor values ? \$\endgroup\$
    – Zac
    Jun 7, 2018 at 6:44
  • \$\begingroup\$ I see that chip has 4 ADC inputs. If you plan on using more that one ADC input, then be weary of the plan above, as you may get unexpected results if the ADC switches inputs too fast. Inquire if that's your case... \$\endgroup\$ Jun 7, 2018 at 12:26
  • \$\begingroup\$ Zac . you read the datasheet then use a spreadsheet with KVL , or simulate or breadboard, whichever is faster tinyurl.com/y83mmzax but unless you define the response curve, this is a puzzle. \$\endgroup\$ Jun 7, 2018 at 12:34
  • \$\begingroup\$ @ChrisKnudsen can you please explain further on the issue, in case I use more than one ADC input ? Can I not read ADC one after another in a loop ? \$\endgroup\$
    – Zac
    Jun 8, 2018 at 3:41

2 Answers 2

2
\$\begingroup\$

The cheapest feasible option is R1 only, R2 is not needed. 68k is about the right value to drop the 50k voltage span to 1.4v. However, potentiometers are notorious for poor tolerance, so the next value up would guarantee less than 1.4v on the pot.

To choose R1 for any given value of Rpot, supply voltage Vs, and voltage required on the top of the pot Vpot, solve the following equation.

$$V_{pot} = V_s \frac{R_{pot}}{R1 + R_{pot}}$$

I'm sure you can use straightforward algebra to manipulate the equation round so that R1 is by itself on the left hand side.

This equation expresses the fact that the current flowing through the two resistors is Vs/(R1+Rpot), so the voltage developed across Rpot is just Rpot times that current. I've separated out the resistor ratio however, as that's the way we'd normally use this potential divider expression, to multiply the input voltage by a function of the resistor values, to get the reduced output voltage.

Rather than flog through the algebra, you might notice that 1.4v is more or less half of 3.3v, so R1 will be a little bit bigger than Rpot. In fact I guessed at 68k (a little bit bigger than 50k) before I did the sums to calculate it exactly.

\$\endgroup\$
5
  • \$\begingroup\$ Thanks Neil. Could you please explain on how to calculate the value of R1 ? The potentiometer value of 50k is just a random selection in my question and we should be fine with any values. So essentially I am trying to find R1 and the potentiometer value. \$\endgroup\$
    – Zac
    Jun 7, 2018 at 6:43
  • \$\begingroup\$ @Zacson updated answer \$\endgroup\$
    – Neil_UK
    Jun 7, 2018 at 8:35
  • \$\begingroup\$ Thanks Neil. Are there any guidelines in selecting the Rpot value ? Would selecting a lower Rpot value improves stability and/or accuracy? Or would it harm the micro-controller as it requires very less current for the ADC ? \$\endgroup\$
    – Zac
    Jun 8, 2018 at 3:45
  • \$\begingroup\$ The data sheet mentions input impedance of 700 ohms to a bit over 2k for the various ADC pins, surprisingly low impedance. The data sheet is too short to give more detail on it, and I'm not going to go hunting, so let's take them at their word. So it would seem that you'll you'll need a lower impedance to drive the ADC over its range properly. You can find out what current the ADC actually needs by (say) putting a 1M resistor to 3.3v, measuring the voltage, calculate ADC loading with the R divider equation. Accuracy is a bit moot with a pot, as it's adjustable. The thing is ideally you want \$\endgroup\$
    – Neil_UK
    Jun 8, 2018 at 5:27
  • \$\begingroup\$ ... to cover the whole range, plus a bit. Normally with a voltage divider we'd say Rdivider should be <10% of Rload, but that would give silly low values of 100ohm pot. With those ADC figures, I would expect a 68kR1 and 50k pot to cover a tiny range right at the bottom, due to ADC loading, so I don't know what's going on. How have I misread the data sheet? Are the ADC input figures kk, that is Mohm? 700k to 2M sounds far more plausible, in which case a 50k pot is fine. \$\endgroup\$
    – Neil_UK
    Jun 8, 2018 at 5:32
1
\$\begingroup\$

schematic

simulate this circuit – Schematic created using CircuitLab

You can choose 1M pot then compute nearest 0.5% or 0.1% R values that add up to 100K or scale down / 10. Input current for ADC is ~ 5nA

\$\endgroup\$
3
  • \$\begingroup\$ As suggested by Neil_UK, I hope we may not need R2 at all. What are the advantages / disadvantages in choosing a 1M pot ? \$\endgroup\$
    – Zac
    Jun 8, 2018 at 3:50
  • \$\begingroup\$ Good for low power. \$\endgroup\$ Jun 8, 2018 at 4:21
  • \$\begingroup\$ Wouldn't that affect the stability of the values read in a noisy environment? \$\endgroup\$
    – Zac
    Jun 8, 2018 at 4:45

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.