Energia

# Language Reference

Energia programs can be divided in three main parts: structure, values (variables and constants), and functions.

## Structure setup() loop() #### Control Structures if if...else for switch case while do... while break continue return goto #### 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) #### Compound Operators ++ (increment) -- (decrement) += (compound addition) -= (compound subtraction) *= (compound multiplication) /= (compound division) &= (compound bitwise and) |= (compound bitwise or) | ## Variables #### Constants HIGH | LOW INPUT | OUTPUT INPUT_PULLUP | INPUT_PULLDOWN true | false integer constants floating point constants #### Data Types void boolean char unsigned char byte int unsigned int word long unsigned long float double string - char array String - object array #### Conversion char() byte() int() word() long() float() #### Variable Scope & Qualifiers variable scope static volatile const #### Utilities sizeof() | ## Functions #### Digital I/O pinMode() digitalWrite() digitalRead() #### Analog I/O analogReference() analogRead() analogWrite() - PWM #### 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() #### Random Numbers randomSeed() random() #### Bits and Bytes lowByte() highByte() bitRead() bitWrite() bitSet() bitClear() bit() #### External Interrupts attachInterrupt() detachInterrupt() #### Interrupts interrupts() noInterrupts() #### Communication Serial Stream

#### Looking for something else?

See the libraries page for interfacing with particular types of hardware. Try the list of community-contributed code on the Forum. The Energia language is based on C/C++ and uses the MSPGCC compiler.

Reference Home

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

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

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