Hi All,

I was just wondering if anyone can help me with how the arduino can take in an analogue signal and then turn it into a digital signal and then display it on a screen? Like does anyone know the process behind this?


Google "successive approximation ADC". That is the type of ADC that an Uno or any 328 based Arduino uses. For other processors, see the data sheet.

Do you mean like an oscilloscope?

Just read a bunch of points, and display them in an amplitude vs time graph. The arduino can handle the first part easily - within its memory constraints. The "displaying on the screen" part is much harder.

Or he could be asking how to make an Arduino volt meter?

OP needs to clarify what he's asking about, imo.

Examples with source:


Display on console

Voltage is often related to "pressure" and most of us know from experience that the more pressure behind water, the faster the water flow (current is often related to flow and resistance related to the pipe diameter.) So, if you turn on both faucets to the bath tub, the amount if time it will take to completely fill the tub will be based on the water pressure - the higher the pressure the greater the flow, and the quicker the tub will fill.

Now, assume that we can mark the tub so that the entire volume is in equal measures of 1024 (2^10).

Imagination time:
IF it takes 1024 seconds to completely fill the tub (valves fully open), we now have the ability to measure volume as a function of time or a function of pressure. Increase the pressure and we fill the tub faster than 1024 seconds. Decrease the pressure and after 1024 seconds the tub is not full ... a number smaller than 1024.

Inside the uC and A/D unit:
The tub is a microscopic capacitor; the water pressure is the voltage; time in seconds is time in microseconds. Everything else is microelectronics and math.
So, if the analog input is grounded, there is no voltage, and after some fixed time the capacitor has no charge, and the digital value is 0. At 50% of the analog reference (norm = 5Volts) the capacitor will be half charged and the digital counter (time) is at 511.