## Measuring voltage on an Arduino

Being able to measure voltages automatically with a micro-controller is a very useful feature. Although the ADC on a micro-controller is limited to measure between 0V and 5V, this range can be extended quite easily using a special type of resistor network called a resistor divider.

In this tutorial I will be explaining how to read a voltage on an Arduino into an integer and how to convert that to a voltage. In future tutorials I will show you how to expand or narrow this measuring range.

## High side mosfet driving using the IR2110

Power mosfets are difficult to drive properly when on the high side, this is because the voltage of the mosfets drain is floating, meaning not on a fixed voltage. In this tutorial I will use the IR2110 as a dedicated high side gate driver for my mosfet, which will be switching a +12V car light. An Arduino with a simple blink sketch will provide the switching logic for the circuit.

## IR2125 mosfet driver

The IR2125 driver is a simpler IC than the IR2110 dual channel high side low side driver. If you only need to switch a single high side mosfet than this is your IC of choice even though it is a bit more expensive because of it’s lesser popularity.

## IR2110 capabilities

• The IR2110 comes in both DIP and SOIC packages.
• One high side channel. You can switch any side of a load, high, low, in the middle, its al good.
• One low side channel. You can switch the ground side of a load.
• Channels are independent. Also, you can use a single channel and ignore the other.
• High side maximum voltage of 500.
• Mosfet gate voltage between 10 and 20. Choose a mosfet that matches this. Also, you must provide this voltage to the IR2110.
• Can understand logic between 3.3V and 20V. Connect directly to your Arduino, Atmel or PIC. You must provide your logic voltage source to the chip so it knows what to expect.
• Can switch ON and OFF at maximum frequency of 5Mhz. This is more than 50 times faster than an Arduino can do PWM.

## Measuring a negative voltage on Arduino

Microcontrollers like the ATMEGA’s found on Arduino’s have an ADC on board that can measure voltages from 0V up to 5V and return that as a number ranging from 0-1023. But what to do when we want to measure outside of this range?