Can a Pro Mini read negative voltages at ADC

I am working on a project that includes a Pro Mini 328. I want to sample a voltage using one of the ADC pins. The voltage is going to vary between +/-3V.

Can the Pro Mini correctly read a negative voltage?


No. Furthermore you will damage the 328 chip

The ADC input can only read (and tolerate) positive input voltages less than the power supply voltage. To read a negative-going voltage requires level shifting the voltage to be within the allowed ADC range.

This can be accomplished with a resistor network if the source impedance is low and the AC voltage swing is sufficiently large. The following circuit, for instance, will shift the -3 V to 3 V input signal to be in the range 1 to 4 Volts:


For high impedance sources and/or sources with small voltage swings an active (op amp) level shifter may be called for.

As Mark said, you need a level shifter, which is a resistor network is the easiest solution.

Need a cap and a few resistors to put AC in 0-5V range for Arduino ADC

Try 1uF cap.

I'm sorry, CrossRoads, but your calculations are in error!
Look: you show 11K in parallel with 100K and you do not
take that loading into account!

True, it's ball park calculations. It's an order of magnitude off so very common for ball park calculations to leave it because other errors are likely in the same order of magnitude.

But if you know better, be a gent and correct it instead of only pointing it out :wink:

Hello All,
In order to measure a signal via the Arduino, we need a connection
between the Arduino Gnd and some point on the external circuit.
This becomes the base-line for the ADC. What and where is that
connection point? Without that, we cannot make the measurement.