Arduino

Buy | Download | Getting Started | Learning | Reference | Hardware | FAQ

Blog » | Forum » | Playground »

Reference Language (extended) | Libraries | Comparison | Board

# Arduino Reference (extended)

The Arduino language is based on C/C++ and supports all standard C constructs and some C++ features. It links against AVR Libc and allows the use of any of its functions; see its user manual for details.

## Structure In Arduino, the standard program entry point (main) is defined in the core and calls into two functions in a sketch. setup() is called once, then loop() is called repeatedly (until you reset your board). void setup() void loop() #### Control Structures if if...else for switch case while do... while break continue return #### Further Syntax ; (semicolon) {} (curly braces) // (single line comment) /* */ (multi-line comment) #define #include #### Arithmetic Operators = (assignment operator) + (addition) - (subtraction) * (multiplication) / (division) % (modulo) #### Comparison Operators == (equal to) != (not equal to) < (less than) > (greater than) <= (less than or equal to) >= (greater than or equal to) #### Boolean Operators && (and) || (or) ! (not) #### Pointer Access Operators * dereference operator & reference operator #### Bitwise Operators & (bitwise and) | (bitwise or) ^ (bitwise xor) ~ (bitwise not) << (bitshift left) >> (bitshift right) Port Manipulation #### Compound Operators ++ (increment) -- (decrement) += (compound addition) -= (compound subtraction) *= (compound multiplication) /= (compound division) &= (compound bitwise and) |= (compound bitwise or) ## Variables #### Constants HIGH | LOW INPUT | OUTPUT true | false integer constants floating point constants #### Data Types void keyword boolean char unsigned char byte int unsigned int long unsigned long float double string array #### Variable Scope & Qualifiers variable scope static volatile const PROGMEM #### Utilities cast (cast operator) sizeof() (sizeof operator) ## Reference keywords ASCII chart Atmega168 pin mapping | ## Functions Digital I/O pinMode(pin, mode) digitalWrite(pin, value) int digitalRead(pin) Analog I/O analogReference(type) int analogRead(pin) analogWrite(pin, value) - PWM Advanced I/O shiftOut(dataPin, clockPin, bitOrder, value) unsigned long pulseIn(pin, value) Time unsigned long millis() delay(ms) delayMicroseconds(us) Math min(x, y) max(x, y) abs(x) constrain(x, a, b) map(value, fromLow, fromHigh, toLow, toHigh) pow(base, exponent) sqrt(x) Trigonometry sin(rad) cos(rad) tan(rad) Random Numbers randomSeed(seed) long random(max) long random(min, max) External Interrupts attachInterrupt(interrupt, function, mode) detachInterrupt(interrupt) Interrupts interrupts() noInterrupts() Serial Communication Serial.begin(speed) int Serial.available() int Serial.read() Serial.flush() Serial.print(data) Serial.println(data)

Reference Home

Corrections, suggestions, and new documentation should be posted to the Forum.

The text of the Arduino reference is licensed under a Creative Commons Attribution-ShareAlike 3.0 License. Code samples in the reference are released into the public domain.

Edit Page | Page History | Printable View | All Recent Site Changes