User Tools

Site Tools


arduino:arduino_crash_course:analog_output

This is an old revision of the document!


Table of Contents

Analog Output

An analog signal is one that can have any value over a continuous range. Arduino employs an approximation to analog outputs and calls these outputs “analog” outputs–even though they are actually a special implementations of Boolean output.

PWM

Arduino achieves analog-like outputs by using a technique called Pulse Width Modulation (PWM). PWM is technique where a Boolean output is switched on and off very quickly (in the case of the Arduino Uno, it's about TODO times per second). The ratio of the time the output is in the HIGH state to the total period time (i.e., time HIGH + time LOW) is called the duty cycle. If the duty cycle is 100%, then the output will appear to be at maximum output. If the duty cycle is 50%, then the output will appear to be at half the maximum output; a duty cycle of 25% makes the output appear to be at a quarter of maximum.

So one way that Arduino “analog” outputs are not really analog outputs is that they are actually rapidly switched “digital” outputs. Another way that Arduino “analog” outputs are not really analog outputs is that you are only able to set the duty cycle to one of TODO values. If you want something in between any two values, you're stuck.

Example

The following is an example of using PWM to ramp-up the brightness of an LED using a timer.

arduino/arduino_crash_course/analog_output.1352161201.txt.gz · Last modified: 2012/11/06 00:20 by mithat

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki