1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>Arduino - Reference </title>
<link rel='stylesheet' href='arduino.css' type='text/css' />
</head>
<body>
<div id="page">
<!--PageHeaderFmt-->
<div id="pageheader">
<div class="title"><a href="http://www.arduino.cc/">Arduino</a></div>
<div class="search">
<!-- SiteSearch Google -->
<FORM method=GET action="http://www.google.com/search">
<input type=hidden name=ie value=UTF-8>
<input type=hidden name=oe value=UTF-8>
<INPUT TYPE=text name=q size=25 maxlength=255 value="">
<INPUT type=submit name=btnG VALUE="search">
<input type=hidden name=domains value="http://www.arduino.cc/">
<input type=hidden name=sitesearch value="http://www.arduino.cc/">
</FORM>
<!-- SiteSearch Google -->
</div>
</div>
<!--/PageHeaderFmt-->
<!--PageLeftFmt-->
<div id="pagenav">
<p><a class='wikilink' href='Guide_index.html'>Guide</a>
</p>
<p class='vspace'></p><p><a class='wikilink' href='http://www.arduino.cc/en/Tutorial/HomePage'>Tutorials</a>
</p>
<p class='vspace'></p><p><a class='selflink' href='index.html'>Reference</a>
</p>
<p class='vspace'></p><p><a class='wikilink' href='http://www.arduino.cc/en/Main/Hardware'>Hardware</a>
</p>
<p class='vspace'></p><p><a class='wikilink' href='http://www.arduino.cc/en/Main/Software'>Software</a>
</p>
<p class='vspace'></p><p><a class='urllink' href='http://www.arduino.cc/blog/' rel='nofollow'>Blog</a>
</p>
<p class='vspace'></p><p><a class='urllink' href='http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl' rel='nofollow'>Forum</a>
</p>
<p class='vspace'></p><p><a class='urllink' href='http://www.arduino.cc/playground/' rel='nofollow'>Playground</a>
</p>
<p class='vspace'></p><p><a class='urllink' href='http://www.arduino.cc/playground/Projects/ArduinoUsers' rel='nofollow'>Exhibition</a>
</p>
<p class='vspace'></p><p><a class='wikilink' href='http://www.arduino.cc/en/Hacking/HomePage'>Hacking</a>
</p>
<p class='vspace'></p><p><a class='wikilink' href='http://www.arduino.cc/en/Main/FAQ'>FAQ</a>
</p>
<p class='vspace'></p><p><a class='wikilink' href='http://www.arduino.cc/en/Main/Buy'>Buy</a>
</p>
</div>
<!--/PageLeftFmt-->
<div id="pagetext">
<!--PageText-->
<div id='wikitext'>
<p><strong>Reference</strong> <a class='selflink' href='index.html'>Language</a> (<a class='wikilink' href='Extended.html'>extended</a>) | <a class='wikilink' href='Libraries.html'>Libraries</a> | <a class='wikilink' href='Comparison.html'>Comparison</a>
</p>
<p class='vspace'></p><h1>Arduino Reference</h1>
<p><em>See the <strong><a class='wikilink' href='Extended.html'>extended reference</a></strong> for more advanced features of the Arduino languages.</em>
</p>
<p class='vspace'></p><p>Arduino programs can be divided in three main parts: <em>structure</em>, <em>values</em> (variables and constants), and <em>functions</em>. The Arduino language is based on C/C++.
</p>
<p class='vspace'></p>
<table width='90%' border='0' cellpadding='5' cellspacing='0'><tr><td width='50%' valign='top'>
<h2>Structure</h2>
<p>An Arduino program run in two parts:
</p>
<p class='vspace'></p><ul><li>void <a class='wikilink' href='Setup.html'>setup</a>()
</li><li>void <a class='wikilink' href='Loop.html'>loop</a>()
</li></ul><p class='vspace'></p><p>setup() is preparation, and loop() is execution. In the setup section, always at the top of your program, you would set <a class='wikilink' href='PinMode.html'>pinModes</a>, initialize serial communication, etc. The loop section is the code to be executed -- reading inputs, triggering outputs, etc.
</p>
<p class='vspace'></p><ul><li><a class='wikilink' href='VariableDeclaration.html'>Variable Declaration</a>
</li><li><a class='wikilink' href='FunctionDeclaration.html'>Function Declaration</a>
<ul><li><a class='wikilink' href='Void.html'>void</a>
</li></ul></li></ul><p class='vspace'></p><h4>Control Structures</h4>
<ul><li><a class='wikilink' href='If.html'>if</a>
</li><li><a class='wikilink' href='Else.html'>if...else</a>
</li><li><a class='wikilink' href='For.html'>for</a>
</li><li><a class='wikilink' href='SwitchCase.html'>switch case</a>
</li><li><a class='wikilink' href='While.html'>while</a>
</li><li><a class='wikilink' href='DoWhile.html'>do... while</a>
</li><li><a class='wikilink' href='Break.html'>break</a>
</li><li><a class='wikilink' href='Continue.html'>continue</a>
</li><li><a class='wikilink' href='Return.html'>return</a>
</li></ul><p class='vspace'></p><h4>Further Syntax</h4>
<ul><li><a class='wikilink' href='SemiColon.html'>;</a> (semicolon)
</li><li><a class='wikilink' href='Braces.html'>{}</a> (curly braces)
</li><li><a class='wikilink' href='Comments.html'>//</a> (single line comment)
</li><li><a class='wikilink' href='Comments.html'>/* */</a> (multi-line comment)
</li></ul><p class='vspace'></p><h4>Arithmetic Operators</h4>
<ul><li><a class='wikilink' href='Arithmetic.html'>plus</a> (addition)
</li><li><a class='wikilink' href='Arithmetic.html'>-</a> (subtraction)
</li><li><a class='wikilink' href='Arithmetic.html'>*</a> (multiplication)
</li><li><a class='wikilink' href='Arithmetic.html'>/</a> (division)
</li><li><a class='wikilink' href='Modulo.html'>%</a> (modulo)
</li></ul><p class='vspace'></p><h4>Comparison Operators</h4>
<ul><li><a class='wikilink' href='If.html'>==</a> (equal to)
</li><li><a class='wikilink' href='If.html'>!=</a> (not equal to)
</li><li><a class='wikilink' href='If.html'><</a> (less than)
</li><li><a class='wikilink' href='If.html'>></a> (greater than)
</li><li><a class='wikilink' href='If.html'><=</a> (less than or equal to)
</li><li><a class='wikilink' href='If.html'>>=</a> (greater than or equal to)
</li></ul><p class='vspace'></p><h4>Boolean Operators</h4>
<ul><li><a class='wikilink' href='Boolean.html'>&&</a> (and)
</li><li><a class='wikilink' href='Boolean.html'>||</a> (or)
</li><li><a class='wikilink' href='Boolean.html'>!</a> (not)
</li></ul><p class='vspace'></p><h4>Compound Operators</h4>
<ul><li><a class='wikilink' href='Increment.html'>++</a> (increment)
</li><li><a class='wikilink' href='Increment.html'>--</a> (decrement)
</li><li><a class='wikilink' href='IncrementCompound.html'>+=</a> (compound addition)
</li><li><a class='wikilink' href='IncrementCompound.html'>-=</a> (compound subtraction)
</li><li><a class='wikilink' href='IncrementCompound.html'>*=</a> (compound multiplication)
</li><li><a class='wikilink' href='IncrementCompound.html'>/=</a> (compound division)
</li></ul><p class='vspace'></p><h2>Variables</h2>
<p>Variables are expressions that you can use in programs to store values, such as a sensor reading from an analog pin.
</p>
<p class='vspace'></p><h4>Constants</h4>
<p>Constants are particular values with specific meanings.
</p>
<p class='vspace'></p><ul><li><a class='wikilink' href='Constants.html'>HIGH</a> | <a class='wikilink' href='Constants.html'>LOW</a>
</li><li><a class='wikilink' href='Constants.html'>INPUT</a> | <a class='wikilink' href='Constants.html'>OUTPUT</a>
<p class='vspace'></p></li><li><a class='wikilink' href='IntegerConstants.html'>Integer Constants</a>
</li></ul><p class='vspace'></p><h4>Data Types</h4>
<p>Variables can have various types, which are described below.
</p>
<p class='vspace'></p><ul><li><a class='wikilink' href='BooleanVariables.html'>boolean</a>
</li><li><a class='wikilink' href='Char.html'>char</a>
</li><li><a class='wikilink' href='Byte.html'>byte</a>
</li><li><a class='wikilink' href='Int.html'>int</a>
</li><li><a class='wikilink' href='UnsignedInt.html'>unsigned int</a>
</li><li><a class='wikilink' href='Long.html'>long</a>
</li><li><a class='wikilink' href='UnsignedLong.html'>unsigned long</a>
</li><li><a class='wikilink' href='Float.html'>float</a>
</li><li><a class='wikilink' href='Double.html'>double</a>
</li><li><a class='wikilink' href='String.html'>string</a>
</li><li><a class='wikilink' href='Array.html'>array</a>
</li></ul><p class='vspace'></p><h2>Reference</h2>
<ul><li><a class='wikilink' href='ASCIIchart.html'>ASCII chart</a>
</li></ul><p class='vspace'></p></td><td width='50%' valign='top'>
<h2>Functions</h2>
<p><strong>Digital I/O</strong>
</p><ul><li><a class='wikilink' href='PinMode.html'>pinMode</a>(pin, mode)
</li><li><a class='wikilink' href='DigitalWrite.html'>digitalWrite</a>(pin, value)
</li><li>int <a class='wikilink' href='DigitalRead.html'>digitalRead</a>(pin)
</li></ul><p class='vspace'></p><p><strong>Analog I/O</strong>
</p><ul><li>int <a class='wikilink' href='AnalogRead.html'>analogRead</a>(pin)
</li><li><a class='wikilink' href='AnalogWrite.html'>analogWrite</a>(pin, value) - <em>PWM</em>
</li></ul><p class='vspace'></p><p><strong>Advanced I/O</strong>
</p><ul><li><a class='wikilink' href='ShiftOut.html'>shiftOut</a>(dataPin, clockPin, bitOrder, value)
</li><li>unsigned long <a class='wikilink' href='PulseIn.html'>pulseIn</a>(pin, value)
</li></ul><p class='vspace'></p><p><strong>Time</strong>
</p><ul><li>unsigned long <a class='wikilink' href='Millis.html'>millis</a>()
</li><li><a class='wikilink' href='Delay.html'>delay</a>(ms)
</li><li><a class='wikilink' href='DelayMicroseconds.html'>delayMicroseconds</a>(us)
</li></ul><p class='vspace'></p><p><strong>Math</strong>
</p><ul><li><a class='wikilink' href='Min.html'>min</a>(x, y)
</li><li><a class='wikilink' href='Max.html'>max</a>(x, y)
</li><li><a class='wikilink' href='Abs.html'>abs</a>(x)
</li><li><a class='wikilink' href='Constrain.html'>constrain</a>(x, a, b)
</li></ul><p class='vspace'></p><p><strong>Random Numbers</strong>
</p>
<p class='vspace'></p><ul><li><a class='wikilink' href='RandomSeed.html'>randomSeed</a>(seed)
</li><li>long <a class='wikilink' href='Random.html'>random</a>(max)
</li><li>long <a class='wikilink' href='Random.html'>random</a>(min, max)
</li></ul><p class='vspace'></p><p><strong>Serial Communication</strong>
</p>
<p class='vspace'></p><p>Used for communication between the Arduino board and a computer or other devices. This communication happens via the Arduino board's serial or USB connection and on digital pins 0 (RX) and 1 (TX). Thus, if you use these functions, <em>you cannot also use pins 0 and 1 for digital i/o.</em>
</p>
<p class='vspace'></p><ul><li><a class='wikilink' href='Serial_Begin.html'>Serial.begin</a>(speed)
</li><li>int <a class='wikilink' href='Serial_Available.html'>Serial.available</a>()
</li><li>int <a class='wikilink' href='Serial_Read.html'>Serial.read</a>()
</li><li><a class='wikilink' href='Serial_Flush.html'>Serial.flush</a>()
</li><li><a class='wikilink' href='Serial_Print.html'>Serial.print</a>(data)
</li><li><a class='wikilink' href='Serial_Println.html'>Serial.println</a>(data)
</li></ul><p class='vspace'></p><p><br clear='all' />
</p>
<p class='vspace'></p><p><strong>Didn't find something?</strong> Check the <a class='wikilink' href='Extended.html'>extended reference</a>.
</p>
<p class='vspace'></p></td></tr></table>
<p><a class='selflink' href='index.html'>Reference Home</a>
</p>
<p class='vspace'></p><p><em>Corrections, suggestions, and new documentation should be posted to the <a class='urllink' href='http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?board=swbugs' rel='nofollow'>Forum</a>.</em>
</p>
<p class='vspace'></p><p>The text of the Arduino reference is licensed under a
<a class='urllink' href='http://creativecommons.org/licenses/by-sa/3.0/' rel='nofollow'>Creative Commons Attribution-ShareAlike 3.0 License</a>. Code samples in the reference are released into the public domain.
</p>
</div>
</div>
<!--PageFooterFmt-->
<div id="pagefooter">
<a href='#'>Edit Page</a> | <a href='#'>Page History</a> | <a href='#' target='_blank'>Printable View</a> | <a href='RecentChanges.html'>Recent Site Changes</a>
</div>
<!--/PageFooterFmt-->
</div>
</body>
</html>
|