Language Reference
This page will briefly summarize the Wiring/Arduino programming language and give some implementation details. Until it's written please see the extensive docs on the Arduino website (or follow a direct link from below).
Unique Maple Additions
ASSERT(...)- The
ASSERT()function can be very useful for basic program debugging. The function accepts a boolean (eg,ASSERT(state == WAIT);); zero is false and any other number is true. If the boolean is true the assertion passes and the program continues as usual. If it is false the assertion fails: the program is halted, debug information is printed to USART2, and the status LED begins to throb in intensity (it's noticeably different from blinking). The debug information is printed at 9600 baud and consists of the filename and line number where the particular assertion failed.
Including assertions in a program increases the program size. When using libmaple from the command line they can be silently disabled by setting theMAPLE_DEBUGvariable to 0 in src/lib/util.h; in this case all assertions pass without any lost clock cycles.
Arduino Doc Links
(this table pulled straight from http://arduino.cc/en/Reference/Extended; functions with a
StructureControl StructuresFurther Syntax
Arithmetic OperatorsComparison Operators
Boolean OperatorsPointer Access OperatorsBitwise Operators
Compound Operators |
VariablesConstantsData Types
ConversionVariable Scope & QualifiersUtilities
|
FunctionsDigital I/O
Analog I/O
Advanced I/O
Time
Math Trigonometry Random Numbers
Bits and Bytes External Interrupts Interrupts Communication Looking for something else? Try the list of community-contributed code. |
Recommended Reading
- newlib Documentation
- STMicro documentation for STM32F103RB microcontroller:
- All
- Datasheet (pdf)
- Reference Manual (pdf)
- Programming Manual (pdf) (assembler instruction and register reference)
About this Document
A more recent version of this document may be available from the LeafLabs website. Our documentation is versioned on github; you can track changes to the master branch at this link.
This documentation is released under a
Creative Commons Attribution-Share Alike 3.0 license.
Translations are welcomed; give us a ping to make sure we aren't in the process of revising or editing first.
About
Contact
Community
Distributors
Licensing
Feeds
Search
Contact webmaster@leaflabs.com with website issues
Powered by WordPress, nginx, Linux, vim, and coffee.
This site intended to be valid HTML 4.01 Strict. Best viewed with any standards-compliant browser.
Copyright LeafLabs LLC, 2009-2010, a member of the
Green Street Space.
Unless otherwise noted all content on this website is released under the
Creative Commons Attribution Licence 3.0
Hello Anonymous! Login?
