411 REFERENCE · Wikibooks
A Beginner's Arduino Guide/Arduino Language
Reference material by Wikibooks contributors. This retains its source identity and is not 411 news reporting.
The Arduino Language is the set of words, expressions and rules that are used to create Arduino Sketches.
The Arduino Language is based on C and C++
The Arduino Language allows for the use of any functions from the 'AVR Libc' which is a subset of the standard C library for Atmel AVR 8-bit RISC micro-controllers
The language is made up of keywords that are written based on rules.
Arduino Keywords
The keywords used to create the sketches can be divided into three types- Functions ,Structures and Values ( Values can be either Constants or Variables).
Below are a non-exhaustive list of standard Arduino sketch words, to add words, new libraries can be imported into the IDE.
Functions
Functions are small groups of code that do a single task or group of tasks (they have one function). They include
CategoryKeywordDigital I/O pinMode()
digitalWrite()
digitalRead()Analog I/O analogReference()
analogRead()
analogWrite() - PWMDue & Zero only analogReadResolution()
analogWriteResolution()Advanced I/O tone()
noTone()
shiftOut()
shiftIn()
pulseIn()Time millis()
micros()
delay()
delayMicroseconds()Math min()
max()
abs()
constrain()
map()
pow()
sqrt()Trigonometry sin()
cos()
tan()Characters isAlphaNumeric()
isAlpha()
isAscii()
isWhitespace()
isControl()
isDigit()
isGraph()
isLowerCase()
isPrintable()
isPunct()
isSpace()
isUpperCase()
isHexadecimalDigit()Random Numbers randomSeed()
random()Bits and Bytes lowByte()
highByte()
bitRead()
bitWrite()
bitSet()
bitClear()
bit()External Interrupts attachInterrupt()
detachInterrupt()Interrupts interrupts()
noInterrupts()Communication Serial
StreamUSB (32u4 based boards and Due/Zero only) Keyboard
Mouse
Structures these are words used to create a flow or structure in the program. they include
CategoryKeywordOverall Structure setup()
loop()Control Structures if
if...else
for
switch case
while
do... while
break
continue
return
gotoArithmetic 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)Bitwise Operators & (bitwise and)
| (bitwise or)
^ (bitwise xor)
~ (bitwise not)
<< (bitshift left)
>> (bitshift right)Compound Operators ++ (increment)
-- (decrement)
+= (compound addition)
-= (compound subtraction)
*= (compound multiplication)
/= (compound division)
%= (compound modulo)
&= (compound bitwise and)
|= (compound bitwise or)Pointer Access Operators * dereference operator
& reference operatorSyntax ; (semicolon)
{} (curly braces)
// (single line comment)
/* */ (multi-line comment)
#define
#include
Values
These act like containers and hold a certain value they may be constant which implies a container whose value that doesn't change throughout the program or a variable, which implies a container whose value that does change.
CategoryKeywordConstants HIGH | LOW
INPUT | OUTPUT | INPUT_PULLUP
LED_BUILTIN
true | false
integer constants
floating point constantsData Types void
boolean
char
unsigned char
byte
int
unsigned int
word
long
unsigned long
short
float
double
string - char array
String - object
arrayConversion char()
byte()
int()
word()
long()
float()Variable Scope & Qualifiers variable scope
static
volatile
constUtilities sizeof()
PROGMEM