Playground.arduino.cc will be read-only starting December 31st, 2018. For more info please look at this Forum Post

### Serial output actual voltage through divider

Method to convert raw analog data back into voltage and then convert back to actual voltage before divider.

# Sketch:

/* This sketch serial outputs a voltage through a voltage divider into

```  analog pin 0
```

This is written in as simple terms as possible, so its long.

```  Actual real numbers math is only 3 lines of code so
skip to the code if you understand voltage dividers.
```

Resistance divider follows Vout = Vin * (R2 / (R1 + R2))

```  This sketch is assuming 25V max is measured.
Resistance values used for 1/5 divider are R1 = 10k and R2 = 2.5K
```

BEFORE YOU CONNECT voltage divider to arduino, test with a meter to verify.

```  If you connect 25Vdc to arduino... its bad.
```

Meter Black Lead to Gnd

```  Gnd -- R2 -- Meter Red Lead -- R1 -- V+ (measured voltage 0-25Vdc)
```

Connection: Gnd -- R2 -- arduino pin A0 -- R1 -- V+ (measured voltage 0-25Vdc)

I can get to within 0.05 Vdc by measuring actual value of resistors

``` */
```

//Analog volt read pin

const int voltPin = 0;

//Variables for voltage divider

float denominator;

int resistor1 = 10000;

int resistor2 = 2500;

void setup() {

```  Serial.begin(9600);
//Convert resistor values to division value
//  Equation is previously mentions voltage divider equation
//  R2 / (R1 + R2)
//  In this case returns 0.20 or 1/5
denominator = (float)resistor2 / (resistor1 + resistor2);
```

} // Void Setup Close

void loop() {

```  float voltage;
//Obtain RAW voltage data
```

```  //Convert to actual voltage (0 - 5 Vdc)
voltage = (voltage / 1024) * 5.0;
```

```  //Convert to voltage before divider
//  Divide by divider = multiply
//  Divide by 1/5 = multiply by 5
voltage = voltage / denominator;
```

```  //Output to serial
Serial.print("Volts: ");
Serial.println(voltage);
```

```  //Delay to make serial out readable
delay(500);
```

} // void loop close