aboutsummaryrefslogtreecommitdiffstats
path: root/docs/source/lang/unimplemented
diff options
context:
space:
mode:
authorMarti Bolivar <mbolivar@mit.edu>2010-12-21 10:27:37 -0500
committerMarti Bolivar <mbolivar@mit.edu>2010-12-21 10:27:37 -0500
commitc45bccad44187da27505cf5808424e709e3f54a1 (patch)
tree18a459a50f8d0551ba046e30462c93999d982725 /docs/source/lang/unimplemented
parent84fd2532a7f23d20354ff590790b3f892cb7e7d7 (diff)
parentd5ad2a27f4e69e6cc9324331945937c983c30366 (diff)
downloadlibrambutan-c45bccad44187da27505cf5808424e709e3f54a1.tar.gz
librambutan-c45bccad44187da27505cf5808424e709e3f54a1.zip
Merge branch 'master' into debug-serialusb.
Chose debug-serialusb version in cases of conflict. Conflicts: libmaple/usb/usb_callbacks.c
Diffstat (limited to 'docs/source/lang/unimplemented')
-rw-r--r--docs/source/lang/unimplemented/notone.rst50
-rw-r--r--docs/source/lang/unimplemented/pulsein.rst82
-rw-r--r--docs/source/lang/unimplemented/shiftout.rst136
-rw-r--r--docs/source/lang/unimplemented/stringclass.rst6
-rw-r--r--docs/source/lang/unimplemented/stringobject.rst89
-rw-r--r--docs/source/lang/unimplemented/tone.rst81
6 files changed, 444 insertions, 0 deletions
diff --git a/docs/source/lang/unimplemented/notone.rst b/docs/source/lang/unimplemented/notone.rst
new file mode 100644
index 0000000..485c9c5
--- /dev/null
+++ b/docs/source/lang/unimplemented/notone.rst
@@ -0,0 +1,50 @@
+.. _lang-notone:
+
+noTone()
+========
+
+Description
+-----------
+
+Stops the generation of a square wave triggered by
+`tone <http://arduino.cc/en/Reference/Tone>`_\ (). Has no effect if
+no tone is being generated.
+
+
+
+**NOTE:** if you want to play different pitches on multiple pins,
+you need to call noTone() on one pin before calling tone() on the
+next pin.
+
+
+
+Syntax
+------
+
+noTone(pin)
+
+
+
+Parameters
+----------
+
+pin: the pin on which to stop generating the tone
+
+
+
+Returns
+-------
+
+nothing
+
+
+
+See also
+--------
+
+
+- `tone <http://arduino.cc/en/Reference/Tone>`_ ()
+
+
+
+.. include:: /lang/cc-attribution.txt
diff --git a/docs/source/lang/unimplemented/pulsein.rst b/docs/source/lang/unimplemented/pulsein.rst
new file mode 100644
index 0000000..2b52428
--- /dev/null
+++ b/docs/source/lang/unimplemented/pulsein.rst
@@ -0,0 +1,82 @@
+.. _lang-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);
+ }
+
+
+
+
+.. include:: /lang/cc-attribution.txt
diff --git a/docs/source/lang/unimplemented/shiftout.rst b/docs/source/lang/unimplemented/shiftout.rst
new file mode 100644
index 0000000..ff3852f
--- /dev/null
+++ b/docs/source/lang/unimplemented/shiftout.rst
@@ -0,0 +1,136 @@
+.. _lang-shiftout:
+
+shiftOut()
+==========
+
+Description
+-----------
+
+Shifts out a byte of data one bit at a time. Starts from either the
+most (i.e. the leftmost) or least (rightmost) significant bit. Each
+bit is written in turn to a data pin, after which a clock pin is
+pulsed to indicate that the bit is available.
+
+
+
+This is a software implementation; Arduino (as of 0019) also
+provides an `SPI library <http://arduino.cc/en/Reference/SPI>`_
+that uses the hardware implementation.
+
+
+
+Syntax
+------
+
+shiftOut(dataPin, clockPin, bitOrder, value)
+
+
+
+Parameters
+----------
+
+dataPin: the pin on which to output each bit (*int*)
+
+
+
+clockPin: the pin to toggle once the **dataPin** has been set to
+the correct value (*int*)
+
+
+
+bitOrder: which order to shift out the bits; either **MSBFIRST** or
+**LSBFIRST**.
+(Most Significant Bit First, or, Least Significant Bit First)
+
+
+
+value: the data to shift out. (*byte*)
+
+
+
+Returns
+-------
+
+None
+
+
+
+Note
+----
+
+The **dataPin** and **clockPin** must already be configured as
+outputs by a call to
+`pinMode <http://arduino.cc/en/Reference/PinMode>`_\ ().
+
+
+
+**shiftOut** is currently written to output 1 byte (8 bits) so it
+requires a two step operation to output values larger than 255.
+
+::
+
+ // Do this for MSBFIRST serial
+ int data = 500;
+ // shift out highbyte
+ shiftOut(dataPin, clock, MSBFIRST, (data >> 8));
+ // shift out lowbyte
+ shiftOut(data, clock, MSBFIRST, data);
+
+ // Or do this for LSBFIRST serial
+ data = 500;
+ // shift out lowbyte
+ shiftOut(dataPin, clock, LSBFIRST, data);
+ // shift out highbyte
+ shiftOut(dataPin, clock, LSBFIRST, (data >> 8));
+
+
+
+Example
+-------
+
+*For accompanying circuit, see the `tutorial on controlling a 74HC595 shift register <http://arduino.cc/en/Tutorial/ShiftOut>`_.*
+
+
+
+::
+
+ //**************************************************************//
+ // Name : shiftOutCode, Hello World //
+ // Author : Carlyn Maw,Tom Igoe //
+ // Date : 25 Oct, 2006 //
+ // Version : 1.0 //
+ // Notes : Code for using a 74HC595 Shift Register //
+ // : to count from 0 to 255 //
+ //****************************************************************
+
+ //Pin connected to ST_CP of 74HC595
+ int latchPin = 8;
+ //Pin connected to SH_CP of 74HC595
+ int clockPin = 12;
+ ////Pin connected to DS of 74HC595
+ int dataPin = 11;
+
+ void setup() {
+ //set pins to output because they are addressed in the main loop
+ pinMode(latchPin, OUTPUT);
+ pinMode(clockPin, OUTPUT);
+ pinMode(dataPin, OUTPUT);
+ }
+
+ void loop() {
+ //count up routine
+ for (int j = 0; j < 256; j++) {
+ //ground latchPin and hold low for as long as you are transmitting
+ digitalWrite(latchPin, LOW);
+ shiftOut(dataPin, clockPin, LSBFIRST, j);
+ //return the latch pin high to signal chip that it
+ //no longer needs to listen for information
+ digitalWrite(latchPin, HIGH);
+ delay(1000);
+ }
+ }
+
+
+
+
+.. include:: /lang/cc-attribution.txt
diff --git a/docs/source/lang/unimplemented/stringclass.rst b/docs/source/lang/unimplemented/stringclass.rst
new file mode 100644
index 0000000..b893e83
--- /dev/null
+++ b/docs/source/lang/unimplemented/stringclass.rst
@@ -0,0 +1,6 @@
+.. _lang-stringclass:
+
+String Class
+============
+
+.. include:: /lang/cc-attribution.txt
diff --git a/docs/source/lang/unimplemented/stringobject.rst b/docs/source/lang/unimplemented/stringobject.rst
new file mode 100644
index 0000000..e47ed7e
--- /dev/null
+++ b/docs/source/lang/unimplemented/stringobject.rst
@@ -0,0 +1,89 @@
+.. _lang-stringobject:
+
+String
+======
+
+Description
+-----------
+
+The String class, part of the core as of version 0019, allows you to
+use and manipulate strings of text in more complex ways than character
+arrays do. You can concatenate Strings, append to them, search for and
+replace substrings, and more. It takes more memory than a simple
+character array, but it is also more useful.
+
+
+
+For reference, character arrays are referred to as strings with a
+small s, and instances of the String class are referred to as
+Strings with a capital S. Note that constant strings, specified in
+"double quotes" are treated as char arrays, not instances of the
+String class.
+
+
+
+Functions
+---------
+
+
+- `String <http://arduino.cc/en/Reference/StringConstructor>`_\ ()
+- `charAt <http://arduino.cc/en/Reference/StringCharAt>`_\ ()
+- `compareTo <http://arduino.cc/en/Reference/StringCompareTo>`_\ ()
+- `concat <http://arduino.cc/en/Reference/StringConcat>`_\ ()
+- `endsWith <http://arduino.cc/en/Reference/StringEndsWith>`_\ ()
+- `equals <http://arduino.cc/en/Reference/StringEquals>`_\ ()
+- `equalsIgnoreCase <http://arduino.cc/en/Reference/StringEqualsIgnoreCase>`_\ ()
+- `getBytes <http://arduino.cc/en/Reference/StringGetBytes>`_\ ()
+- `indexOf <http://arduino.cc/en/Reference/StringIndexOf>`_\ ()
+- `lastIndexOf <http://arduino.cc/en/Reference/StringLastIndexOf>`_\ ()
+- `length <http://arduino.cc/en/Reference/StringLength>`_\ ()
+- `replace <http://arduino.cc/en/Reference/StringReplace>`_\ ()
+- `setCharAt <http://arduino.cc/en/Reference/StringSetCharAt>`_\ ()
+- `startsWith <http://arduino.cc/en/Reference/StringStartsWith>`_\ ()
+- `substring <http://arduino.cc/en/Reference/StringSubstring>`_\ ()
+- `toCharArray <http://arduino.cc/en/Reference/StringToCharArray>`_\ ()
+- `toLowerCase <http://arduino.cc/en/Reference/StringToLowerCase>`_\ ()
+- `toUpperCase <http://arduino.cc/en/Reference/StringToUpperCase>`_\ ()
+- `trim <http://arduino.cc/en/Reference/StringTrim>`_\ ()
+
+
+
+Operators
+---------
+
+
+- `[] (element access) <http://arduino.cc/en/Reference/StringBrackets>`_
+- `+ (concatenation) <http://arduino.cc/en/Reference/StringPlus>`_
+- `== (comparison) <http://arduino.cc/en/Reference/StringComparison>`_
+
+
+
+Examples
+--------
+
+
+- `StringConstructors <http://arduino.cc/en/Tutorial/StringConstructors>`_
+- `StringAdditionOperator <http://arduino.cc/en/Tutorial/StringAdditionOperator>`_
+- `StringIndexOf <http://arduino.cc/en/Tutorial/StringIndexOf>`_
+- `StringAppendOperator <http://arduino.cc/en/Tutorial/StringAppendOperator>`_
+- `StringLengthTrim <http://arduino.cc/en/Tutorial/StringLengthTrim>`_
+- `StringCaseChanges <http://arduino.cc/en/Tutorial/StringCaseChanges>`_
+- `StringReplace <http://arduino.cc/en/Tutorial/StringReplace>`_
+- `StringCharacters <http://arduino.cc/en/Tutorial/StringCharacters>`_
+- `StringStartsWithEndsWith <http://arduino.cc/en/Tutorial/StringStartsWithEndsWith>`_
+- `StringComparisonOperators <http://arduino.cc/en/Tutorial/StringComparisonOperators>`_
+- `StringSubstring <http://arduino.cc/en/Tutorial/StringSubstring>`_
+
+
+
+See Also
+--------
+
+
+- `Character array strings <http://arduino.cc/en/Reference/String>`_
+- `Variable Declaration <http://arduino.cc/en/Reference/VariableDeclaration>`_
+
+
+
+
+.. include:: /lang/cc-attribution.txt
diff --git a/docs/source/lang/unimplemented/tone.rst b/docs/source/lang/unimplemented/tone.rst
new file mode 100644
index 0000000..f83bf6b
--- /dev/null
+++ b/docs/source/lang/unimplemented/tone.rst
@@ -0,0 +1,81 @@
+.. _lang-tone:
+
+tone()
+======
+
+Description
+-----------
+
+Generates a square wave of the specified frequency (and 50% duty
+cycle) on a pin. A duration can be specified, otherwise the wave
+continues until a call to
+`noTone <http://arduino.cc/en/Reference/NoTone>`_\ (). The pin can be
+connected to a piezo buzzer or other speaker to play tones.
+
+
+
+Only one tone can be generated at a time. If a tone is already
+playing on a different pin, the call to tone() will have no effect.
+If the tone is playing on the same pin, the call will set its
+frequency.
+
+
+
+Use of the tone() function will interfere with PWM output on pins 3
+and 11 (on boards other than the Mega).
+
+
+
+**NOTE:** if you want to play different pitches on multiple pins,
+you need to call noTone() on one pin before calling tone() on the
+next pin.
+
+
+
+Syntax
+------
+
+tone(pin, frequency)
+tone(pin, frequency, duration)
+
+
+
+Parameters
+----------
+
+pin: the pin on which to generate the tone
+
+
+
+frequency: the frequency of the tone in hertz
+
+
+
+duration: the duration of the tone in milliseconds (optional)
+
+
+
+Returns
+-------
+
+nothing
+
+
+
+See also
+--------
+
+
+- `noTone <http://arduino.cc/en/Reference/NoTone>`_\ ()
+- `analogWrite <http://arduino.cc/en/Reference/AnalogWrite>`_\ ()
+- `Tutorial:Tone <http://arduino.cc/en/Tutorial/Tone>`_
+- `Tutorial:Pitch follower <http://arduino.cc/en/Tutorial/Tone2>`_
+- `Tutorial:Simple Keyboard <http://arduino.cc/en/Tutorial/Tone3>`_
+- `Tutorial: multiple tones <http://arduino.cc/en/Tutorial/Tone4>`_
+
+
+- `Tutorial: PWM <http://arduino.cc/en/Tutorial/PWM>`_
+
+
+
+.. include:: /lang/cc-attribution.txt