Analog-to-Digital Conversion Algorithm with a Single Slope

Converting analog to digital has been increasingly important since the dawn of the digital era. While many take analog-to-digital conversion at face value and do not question the means of conversion, there are actually dozens of conversion techniques employed by electrical engineers, each with their own advantages and disadvantages.
The particular methodology shown here is called single slope and is one of the simplest kinds of conversion. The analog-to-digital convertor attempts to convert the analog signal into digital bits in a two-step process. First, a linear voltage ramp is created by the analog-to-digital convertor and a clock begins its count. Then, when the voltage ramp rises above the signal, the clock's count is output as a digital interpretation of the signal; the voltage ramp is reset at 0 V, the clock count is reset to 0, and the process begins again. This works because it is a linear ramp, and so the voltage interpretation is linearly proportional to the time (meaning the horizontal aspect is linearly proportional to the vertical aspect), so by recording the time, we record a scaled interpretation of the voltage.
Using single slope is subject to two caveats, both evident in the Demonstration: (1) the algorithm cannot interpret negative signals (because it uses a positive slope), and (2) the linear voltage ramps sometimes overshoot the signal (because the ramp is only compared to the signal at the end of a discrete time step).


  • [Snapshot]
  • [Snapshot]


[1] P. Horowitz and W. Hill, The Art of Electronics, Cambridge: Cambridge University Press, 1998.
    • Share:

Embed Interactive Demonstration New!

Just copy and paste this snippet of JavaScript code into your website or blog to put the live Demonstration on your site. More details »

Files require Wolfram CDF Player or Mathematica.

Mathematica »
The #1 tool for creating Demonstrations
and anything technical.
Wolfram|Alpha »
Explore anything with the first
computational knowledge engine.
MathWorld »
The web's most extensive
mathematics resource.
Course Assistant Apps »
An app for every course—
right in the palm of your hand.
Wolfram Blog »
Read our views on math,
science, and technology.
Computable Document Format »
The format that makes Demonstrations
(and any information) easy to share and
interact with.
STEM Initiative »
Programs & resources for
educators, schools & students.
Computerbasedmath.org »
Join the initiative for modernizing
math education.
Step-by-Step Solutions »
Walk through homework problems one step at a time, with hints to help along the way.
Wolfram Problem Generator »
Unlimited random practice problems and answers with built-in step-by-step solutions. Practice online or make a printable study sheet.
Wolfram Language »
Knowledge-based programming for everyone.
Powered by Wolfram Mathematica © 2018 Wolfram Demonstrations Project & Contributors  |  Terms of Use  |  Privacy Policy  |  RSS Give us your feedback
Note: To run this Demonstration you need Mathematica 7+ or the free Mathematica Player 7EX
Download or upgrade to Mathematica Player 7EX
I already have Mathematica Player or Mathematica 7+