I want to measure 0 to 5V DC analog voltages by the ADC of a microcontroller. Lets call the input impedance of the uC as Rin.

I want to protect the ADC from possible spikes or over voltage. But in this site and elsewhere I found different combinations are used. Here below are the basic ones I encountered(I named the variations as A, B, C and D):

enter image description here

In my case which one from above is better/optimum to use?

If diode combinations(X or Y) is better, should the diodes be Schottky?

And how should R1 or R1 and R2 be sized quantitatively relative to Rin for a good measurement accuracy? (like R1 = R2 = N*Rin ??)

  • \$\begingroup\$ What's the source and what are you actually trying to protect against? \$\endgroup\$
    – Matt Young
    Jun 11, 2017 at 18:41
  • \$\begingroup\$ @MattYoung source is an opamp with gain. but there's possibility that someone might exceed the input to the opamp and I want to be sure that the ADC should not see more than 5V or any spike due to any other power supply noise ect. \$\endgroup\$
    – user1245
    Jun 11, 2017 at 20:04
  • \$\begingroup\$ Does the op amp share the same 5V power rail? \$\endgroup\$
    – Matt Young
    Jun 11, 2017 at 20:14
  • \$\begingroup\$ op amp is supplied by a single power supply 12VDC, microcontroller is supplied by another power supply \$\endgroup\$
    – user1245
    Jun 11, 2017 at 20:20
  • 1
    \$\begingroup\$ Power supply sequencing causes a lot of problems for beginners. If your 12V supply is powered on before your ADC is powered on, there could be trouble. The ADC (or micro, if it is an ADC input on a micro) may power up or partially power up and then get into a bad state when signal is applied to the ADC input, even if the 5V rail is off. If you are just experimenting, make a point of powering on 5V first. If you are going to make something robust, add circuitry so that the ADC input is blocked until the 5V rail comes up. \$\endgroup\$
    – mkeith
    Jun 12, 2017 at 0:30

3 Answers 3


Z-Diodes have significant leakage currents below their clamp voltage. This affects the linearity in version "B".

In "A" you have more headroom for VZ and hope the clamp diode in the ADC will do the rest (not really good either).

"Y" only protects using schottky diodes, but their leakage and capacitance are problematic here as well.

Low leakage standard diodes in "X" is my favorite because linearity is good and additional capacitance is low (typical 4-6pf)


In X and Y configuration diodes need to be Shottky diodes indeed as the absolute maximum input voltage for electronic components typically goes between \$ V_{cc} + 0.6VDC \$ and \$ V_{DD} - 0.6VDC \$ so simple silicium diodes just won't do, you need a lower forward voltage.

Regardless of the protection you select your input resistance (or impedance) should be negligible against that of the ADC device you're protecting. The data sheet will tell you the typical input impedance; pay attention to the DC characteristics as there are several sections, depending on the input type. For example on an Atmel ATtiny1634 the impedance of ADC input lines typically is \$ 100MΩ \$. Therefore an input resistance of \$ 100KΩ \$ will give you a typical \$ 0.1\% \$ error.

Other than that it all depends what kind of over-voltage you want to protect your input against. Is it transient? ESD? Manipulation hiccups?

You could take a look at a particular implementation by Analog Devices of a precision thermocouple measurement system. They opted for a protection with Shottky diodes and two resistors, with \$ R_1 = 1.69KΩ \$ and \$ R_2 = 300Ω \$. The over voltage protection goes up to 30V and limits current spikes through the diodes to 15mA. There is also an additional transient voltage suppressor as the front end of the circuitry.

Also bear in mind many devices embed some form of input protection, which you need to account for when designing your own protection circuitry. If the manufacturer provides application notes, be sure to check them in case they provide additional info about such protection.


A or X are probably best.

  1. Although the ADC will have an abs. max. rating on the pin, you can also assume small allowance for a small reverse pin current (say 100 uA). The only problem with that is there may be a possibility of back-powering the MCU's supply via the reverse current. This could be more severe with X because the current clamped from R1 goes directly to the supply. 'A's current is limited to (VZ-VCC)/R2

  2. In either case, you should use the additional R2 to allow you to limit the reverse current into the pin. This would be 0.7V/R2 in X, and (VZ-VCC)/R2 in A.

  3. These methods will introduce small errors in the ADC measurement because of leakage (likely more in A because Zeners lower than 5 V are quite leaky as you approach the VZ). Schottky are not recommended because their leakage is very high - use 1N4148 or similar.

  4. Of course you need R1+ R2 << 1000*RIN (for a 10-bit ADC). Most of the clamping is R1 and the clamps; R2 then limits the input current. Perhaps 1k for R1 and 10k for R2 is a good starting point.

  5. If the driving opamp has the same ground, then it can't pull below that and you don't need D1 or D4.

  6. Why don't you power the opamp from the same VCC ?

  7. If you can limit your application to not use the full range of the ADC, then you might have a lower voltage then VCC available to terminate D2 or D3 at.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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