aboutsummaryrefslogtreecommitdiffstats
path: root/source/arduino/pulsein.rst
diff options
context:
space:
mode:
authorMarti Bolivar <mbolivar@mit.edu>2010-10-20 06:46:52 -0400
committerMarti Bolivar <mbolivar@mit.edu>2010-10-20 06:46:52 -0400
commit85c1c72db022bba891868afd3375e39dbe245701 (patch)
tree9d86a3db825667362a8c89a98a205586015aec94 /source/arduino/pulsein.rst
parentabcfcc62cc62dfc088d30d5a6b6c36d6c89f7b07 (diff)
downloadlibrambutan-85c1c72db022bba891868afd3375e39dbe245701.tar.gz
librambutan-85c1c72db022bba891868afd3375e39dbe245701.zip
initial check-in of arduino docs in RST format (converted using wget+pandoc)
Diffstat (limited to 'source/arduino/pulsein.rst')
-rw-r--r--source/arduino/pulsein.rst79
1 files changed, 79 insertions, 0 deletions
diff --git a/source/arduino/pulsein.rst b/source/arduino/pulsein.rst
new file mode 100644
index 0000000..568d992
--- /dev/null
+++ b/source/arduino/pulsein.rst
@@ -0,0 +1,79 @@
+.. _arduino-pulsein:
+
+pulseIn()
+=========
+
+Description
+-----------
+
+Reads a pulse (either HIGH or LOW) on a pin. For example, if
+**value** is **HIGH**, **pulseIn()** waits for the pin to go
+**HIGH**, starts timing, then waits for the pin to go **LOW** and
+stops timing. Returns the length of the pulse in microseconds.
+Gives up and returns 0 if no pulse starts within a specified time
+out.
+
+
+
+The timing of this function has been determined empirically and
+will probably show errors in longer pulses. Works on pulses from 10
+microseconds to 3 minutes in length.
+
+
+
+Syntax
+------
+
+pulseIn(pin, value)
+pulseIn(pin, value, timeout)
+
+
+
+Parameters
+----------
+
+pin: the number of the pin on which you want to read the pulse.
+(*int*)
+
+
+
+value: type of pulse to read: either
+`HIGH <http://arduino.cc/en/Reference/Constants>`_ or
+`LOW <http://arduino.cc/en/Reference/Constants>`_. (*int*)
+
+
+
+timeout (optional): the number of microseconds to wait for the
+pulse to start; default is one second (*unsigned long*)
+
+
+
+Returns
+-------
+
+the length of the pulse (in microseconds) or 0 if no pulse started
+before the timeout (*unsigned long*)
+
+
+
+Example
+-------
+
+::
+
+
+
+ int pin = 7;
+ unsigned long duration;
+
+ void setup()
+ {
+ pinMode(pin, INPUT);
+ }
+
+ void loop()
+ {
+ duration = pulseIn(pin, HIGH);
+ }
+
+